← Back to team overview

yade-users team mailing list archive

Re: Particles passing through facets

 

Hi,

not sure, what is wrong, but try to do so:

O.bodies.append(yade.ymport.gmsh(meshfile='try_1_mesh.mesh',
shift=Vector3(0, 0, 0), scale=1.0, orientation=Quaternion((1, 0, 0),
0),**kwMeshes))

But this string should be __after__ you define kwMeshes.

Let us know, if you still have problems.
______________________________
Anton

2010/8/17 Ken Mendoza <ken_mendoza@xxxxxxxxxxxxxxxxxx>

> Hi,
>
> I'm having a problem where the spherical particles simply pass through my
> meshed facet geometry. It's as if the mesh was never converted to facets
>
> Using GMSH, I drew up a vessel with impeller geometry & meshed it in 3D. I
> then saved it as a mesh file under ASCII format & physical entity element
> tag. I then imported it into my yade script using ymport & assigned it the
> material 'steel'. But when I ran the script, the particles generated simply
> fell through the impeller & vessel portion of the geometry instead of
> bouncing off. The same thing happens when I save the mesh using a partition
> element tag. I'm having trouble pinpointing the problem, but having looked
> at some examples of ymport.gsmh, perhaps I'm doing something wrong in gmsh
>
> My script are as follows:
>
> from yade import utils,pack,plot,timing,ymport
> from numpy import linspace
>
> #import granulator geometry & convert to facets
> O.bodies.append(yade.ymport.gmsh(meshfile='try_1_mesh.mesh',
> shift=Vector3(0, 0, 0), scale=1.0, orientation=Quaternion((1, 0, 0), 0)))
>
> #define sphere material & facet material
> stuff=O.materials.append(FrictMat(young=3e10,poisson=.2,density=1000))
>
> steel=O.materials.append(FrictMat(young=210e9,poisson=.25,frictionAngle=.8,density=8000))
>
> #pack volume with spheres with mean radius 0.5 & rRelFuzz=.3
> sp=pack.SpherePack()
> sp.makeCloud(Vector3(-10,-10,31),Vector3(10,10,35),.5,rRelFuzz=.3)
> O.bodies.append([utils.sphere(c,r,material=stuff) for c,r in sp])
>
> #open file for writing plot data
> u=open('hsg1_vel.txt','w')
>
> #define functions used in commands
> def addPlotData():                                  #position & velocity of
> particle 5
>
> yade.plot.addData({'t':O.time,'i':O.iter,'position':O.bodies[5].state.pos,'velocity':O.bodies[5].state.vel[1]})
>
> #write plot data into open file
> def writedata():
>        u.write(str(O.time))#plot time int text file
>        u.write(" %s"%str(O.bodies[5].state.vel[0])) #plot x-velocity of
> sphere 4 into text file
>        u.write(" %s"%str(O.bodies[5].state.vel[1])) #plot y-velocity of
> sphere 4 into text file
>        u.write(" %s"%str(O.bodies[5].state.vel[2])) #plot z-velocity of
> sphere 4 into text file
>        u.write("\n")
>
> #define constants
> intradius=1.2 #bounding interaction radius
> dampingmag=0.4 #damping for NewtonIntegrator
> O.dt=5e-6 #timestep size=5e-6s
>
> #mesh to facet keyword parameter
> kwMeshes={'color':[1,1,0],'wire':True,'dynamic':False,'material':steel}
>
> #define engine components
> O.engines=[
>        ForceResetter(),
>        BoundDispatcher([Bo1_Sphere_Aabb(aabbEnlargeFactor=intradius)]),
>        InsertionSortCollider(),
>        InteractionDispatchers(
>                [Ig2_Sphere_Sphere_Dem3DofGeom()],
>                [Ip2_FrictMat_FrictMat_FrictPhys()],
>                [Law2_Dem3DofGeom_FrictPhys_Basic()], #include Law2?
>        ),
>        GravityEngine(gravity=(0,0,-1e4)),
>        NewtonIntegrator(damping=dampingmag),
>        PeriodicPythonRunner(iterPeriod=3,command='addPlotData()'),
>        PeriodicPythonRunner(iterPeriod=3,command='writedata()'),
>
>  VTKRecorder(iterPeriod=100,recorders=['spheres','facets','colors'],fileName='/home/kenmendoza/yade_results/vtu/p1')
> ]
>
> #launch simulation viewing window & player
> from yade import qt
> qt.Controller()
> qt.View()
> O.run(50000)
>
> I'd appreciate any help/comments on this matter.
>
> Thanks,
> Ken
>
> This email is confidential and may be privileged. If you are not the
> intended recipient, please delete it and notify us immediately.
> Please do not copy it or use it for any purpose, or disclose its contents
> to any other person. Thank you.
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~yade-users<https://launchpad.net/%7Eyade-users>
> Post to     : yade-users@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~yade-users<https://launchpad.net/%7Eyade-users>
> More help   : https://help.launchpad.net/ListHelp
>

References