← Back to team overview

yade-users team mailing list archive

Re: [Question #701750]: Cylinder particles segmented question

 

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

Summary changed to:
Cylinder particles segmented question

Description changed to:
Info: Yade2018 02b on Ubuntu 18.04 version

I try one example case by my script:  four cylinder particles with 6
moving walls

However, I found that when I sun the script, the 6 aabbWalls() were
disappeared, the top and bottom of the four cylindrical particles are
segemented, and they are enlarged over time. But the terminal did not
report any errors.

Do these disappeared walls succeed in adding velocity? Should aabbWalls
disappear in the running gprocess?

Why do cylindrical particles segment and expand over time?


### Partial Script ###

idSteel=O.materials.append(FrictMat(young=210e9,poisson=.25,frictionAngle=.8,density=7.85e3,label='steel'))
# wallMask=31 >> +/-x, +/-y, -z
#O.bodies.append(geom.facetBox((0,0,0),(2.5,2.5,1),wallMask=63,material="steel" ))

## create walls 
walls=aabbWalls([(0,0,0),(2.5,2.5,1)],thickness=0.0,material='steel')
wallIds=O.bodies.append(walls)

### create materials ###

# gridConnections material

gridConMat= O.materials.append(CohFrictMat(young=E, poisson=0.5,
density=1500, frictionAngle=radians(phi), normalCohesion=1e10,
shearCohesion=1e10, momentRotationLaw=True, label='gcMat'))

# general interactions

cylMat= O.materials.append(FrictMat(young=E, poisson=0.5, density=1500,
frictionAngle=radians(phi), label='cMat'))

### create particles/packing: cylinders ###

nodesIds=[]
cylIds=[]

dx=0.5
dy=0.5
nx=2
ny=2
nz=1
dz=0


for i in range(0,nx):
	x=0+i*dx
	for j in range(0,ny):
		y=0+j*dy
		for k in range(0,nz):
			z=0+k*dz
			cylinder((x,y+cyl_L,z),(x,y,z),radius=cyl_R,nodesIds=nodesIds,cylIds=cylIds,
color=[1,0,0],fixed=False,intMaterial='gcMat',extMaterial='cMat')

#O.bodies.appendClumped()

move =
TranslationEngine(translationAxis=[0,0,1],velocity=1,ids=[0,1,2,3,4,5])


### Engines ###

O.engines = [
	ForceResetter(),
        InsertionSortCollider([Bo1_GridConnection_Aabb(),Bo1_PFacet_Aabb(), Bo1_Wall_Aabb()]),
        InteractionLoop([
			Ig2_GridNode_GridNode_GridNodeGeom6D(),
                 	Ig2_GridConnection_GridConnection_GridCoGridCoGeom(),
			Ig2_Wall_Sphere_ScGeom(),
			Ig2_Sphere_Sphere_ScGeom(),
			Ig2_Sphere_GridConnection_ScGridCoGeom(),
			Ig2_GridConnection_PFacet_ScGeom(),
                ],
                [
# internal cylinder physics 
         		Ip2_CohFrictMat_CohFrictMat_CohFrictPhys(setCohesionNow=True,setCohesionOnNewContacts=False),
# physics for external interactions, i.e., cylinder-cylinder 
                        Ip2_FrictMat_FrictMat_FrictPhys()   
                ],
                [
                        Law2_ScGeom6D_CohFrictPhys_CohesionMoment(),     # contact law for "internal" cylinder forces
                        Law2_GridCoGridCoGeom_FrictPhys_CundallStrack(),  # contact law for cylinder-cylinder interaction
			Law2_ScGeom_FrictPhys_CundallStrack(),
			Law2_ScGridCoGeom_FrictPhys_CundallStrack()              
		 ]
        ),
	GlobalStiffnessTimeStepper(timestepSafetyCoefficient=0.5),
        NewtonIntegrator(gravity=(0., 0., -9.81), damping=0.5, label='newton'),
	move
	#TranslationEngine(translationAxis=[1,0,0],velocity=0.5,ids=[0,1,2,3,4,5])
	#PyRunner(iterPeriod=1e-3,command="")
]

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