create cloud sphere packing with two specific sizes

Asked by reza

Hi guys

Is there anyone knows how to create a cloud packing of sphere with two fix sizes? for example, I need to create a packing with size of 2 and 6

Thanks.

Reza.

Question information

Language:
English Edit question
Status:
Solved
For:
Yade Edit question
Assignee:
No assignee Edit question
Solved by:
Jérôme Duriez
Solved:
Last query:
Last reply:
Revision history for this message
Best Jérôme Duriez (jduriez) said :
#1

Hi,

Since makeCloud allows one to define psd (see psdSizes and psdCumm in the doc [*]), this is not so difficult:

sp=pack.SpherePack()
sp.makeCloud(Vector3(0,0,0),Vector3(100,100,100),num=2,psdSizes=[2,2,6,6],psdCumm=[0,0.50000000000001,0.50000000000001,1]) # defining a step-wise psd, using in this case 0.50000000000001 instead of 0.5 because I assume 0.5*num = 0.5*2 might give something just smaller than 1 for numerical reasons and in the end 0 particles of one size and 2 of the other
sp.toSimulation()

Another solution maybe exists, calling twice makeCloud() to merge two monosized clouds (one with 2 diameter, another one with 6)

Jerome

[*] https://yade-dem.org/doc/yade.pack.html?highlight=makecloud#yade._packSpheres.SpherePack.makeCloud

Revision history for this message
reza (mrp325) said :
#2

Thanks Jérôme Duriez, that solved my question.