← Back to team overview

yade-users team mailing list archive

Re: [Question #696009]: Polyhedra gravity deposit simulation explodes with no damping

 

Question #696009 on Yade changed:
https://answers.launchpad.net/yade/+question/696009

Andrew Jennings gave more information on the question:
Here's a slight modification on the code I posted earlier.  I chose a
different particle type.  All the particles are exactly the same.  The
all drop from exactly the same height.  What is interesting is when the
bounce off the floor, they do not react the same.  Some of the particles
start rolling at a very high speed.  They hit other particles and soon
all the particles are rolling at a high speed.  This cannot be right.

from yade import pack,plot,ymport,export,polyhedra_utils

#define materials
matPoly = PolyhedraMat(
 young=1.0e09,
 frictionAngle=radians(25),
 density=2160,
 poisson=0.3,
)
id_matPoly = O.materials.append(matPoly)

# Add box to hold our particles
O.bodies.append(geom.facetBox((.5,.5,.5),(.6,.6,.6),wallMask=31))

# Create cloud of polys
radMean=.05
sp=pack.SpherePack()
sp.makeCloud((0,0,0),(1,1,.1),rMean=radMean, seed=2)
# Replace spheres by polys
for pos,radius in sp:
    #t = polyhedra_utils.polyhedra(matPoly,(radius,radius,radius))
    #t.state.pos = pos
    t = polyhedra_utils.polyhedralBall(radius, 6, matPoly,pos)
    O.bodies.append(t)


#export the initial packing
vtkExporter = export.VTKExporter('Mixed.vtk')
vtkExporter.exportPolyhedra(ids='all', what=dict(speed='b.state.vel.norm()'))
vtkExporter.exportFacets()

O.engines=[
    ForceResetter(),
    InsertionSortCollider([
        Bo1_Polyhedra_Aabb(),
        Bo1_Facet_Aabb()
    ],verletDist=.05*radMean),
    InteractionLoop(
        [
            Ig2_Polyhedra_Polyhedra_PolyhedraGeom(),
            Ig2_Facet_Polyhedra_PolyhedraGeom(),
        ],
        [
            Ip2_PolyhedraMat_PolyhedraMat_PolyhedraPhys(),  # collision "physics"
        ],
        [
            Law2_PolyhedraGeom_PolyhedraPhys_Volumetric(),  # contact law -- apply forces
        ],
    ),
    NewtonIntegrator(damping=0.0,gravity=[0,0,-9.81]),

    PyRunner(command='ExportResults()', label='exportres', iterPeriod=20000),
]


def ExportResults():
    vtkExporter.exportPolyhedra(ids='all', what=dict(speed='b.state.vel.norm()'))
    
O.dt=0.000001

O.stopAtIter=1000000
O.run()

-- 
You received this question notification because your team yade-users is
an answer contact for Yade.