New question #701731 on Yade: https://answers.launchpad.net/yade/+question/701731
Hi all, I'm working on my cylinder particle case, however, when I start running my script below, the cylinder particles are segmented and the whole cylinder particle extends over time. I do not know why... Additionally, the script points out a ValueError: cannot convert float Nan to integer May someone have experience for this error? ### Scripts ### from __future__ import print_function from yade.gridpfacet import * from yade import pack, plot,qt import gts, os.path, locale from numpy import arange #locale.setlocale(locale.LC_ALL, 'en_US.UTF-8') # Note: gts is locale-dependent. If, for example, german locale is used, gts.read()-function does not import floats normally #### Parameters #### # radius of cylinder cyl_R=0.2 # length of cylinder cyl_L=0.1 # friction angle phi=30.0 # Young's modulus E=1e6 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 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=5 ny=5 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') ### 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="") ] O.dt=1e-06 ### periodic boundary for facetBox ### wmask = 4|8|16|32 # y and z walls O.bodies.append(geom.facetBox((0.,0.,0.),(2.5,2.5,1.0),wallmask=wmask,material="steel")) O.periodic=True O.cell.setBox(2.5,20.0,20.0) ### set the velocity for facet ### for id in range(6): b = O.bodies[id] b.state.vel = (0,0,1) ### Define Functions ### move = TranslationEngine(translationAxis=[1,0,0],velocity=0.5,ids=[0,1,2,3,4,5]) #### For viewing #### qt.View() #### Allows to reload the simulation #### O.saveTmp() -- You received this question notification because your team yade-users is an answer contact for Yade. _______________________________________________ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp