← Back to team overview

yade-users team mailing list archive

Re: [Question #237753]: Particle compaction in a cylinder wall

 

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

    Status: Open => Answered

Alexander Eulitz [Eugen] proposed the following answer:
Hi Lida,
welcome to Yade.
1) Facets are rigid bodies as well as walls, I think.
2) I do a lot of similar simulations and suggest to use randomDensePack to fill up the cylinder. In my case I have packings with equal sized spheres made of the same material.
It creates a pack of spheres with given dimensions by compressing and relaxing a loos packing and has the possibility to save them. 
Code could be something like that:

        cylinderpredicate=pack.inCylinder(centerBottom, centerTop, radius=radiusCylinder)
	cylinderpack=pack.randomDensePack(cylinderpredicate radius=radiusSpheres, color=colorSphere, material=material1, spheresInCell=2000, memoDbg=True, memoizeDb='/home/user/Yade/myLibs/densePackings.sql3')
	O.bodies.append(cylinderpack)
3) define a velocity for compression 
v=0.01 (e.g. defined as [m/s])
Then you can calculate the time that is necessary to reach a displacement of 6mm=0.006m
timestep=O.dt # in seconds per iteratino
timeNeeded=0.006/v
iterNeeded=timeNeeded/timestep
O.run()
O.stopAtIter(iterNeeded)

4) plots can easily be saved
plot.saveGnuplot(baseName = plotpath)
This gives a data file which is compressed and a gnuplot code file which you can execute in terminal via "gnuplot file.gnuplot".
You can edit the gnuplot script and read in data which other applications as well.


Hope it helps,
Alex

-- 
You received this question notification because you are a member of
yade-users, which is an answer contact for Yade.