Multisphere geometry modeling

Submitted by rafaxy on Tue, 10/04/2016 - 14:44

Hi there,

I'm a master's student beginning to work with multispheres in LIGGGHTS.

I want to know what is the best way to do the Step 2 of this example: http://www.cfdem.com/multi-sphere-method-resolved-non-spherical-particles

I found this paper: "APPROXIMATION OF OBJECTS BY SPHERES FOR MULTISPHERE SIMULATIONS IN DEM" https://www.researchgate.net/publication/259693012_Approximation_of_Obje...

in which a method is described to best fit a number of spheres in a given geometry to make a multisphere particle that best represent the real particle.

Is there any implemented script that reads the geometry and outputs the position and radii of the spheres?

If not, any suggestions of how I can do it?

Thanks!

ckloss's picture

ckloss | Mon, 10/10/2016 - 21:27

Hi rafaxy ,

unfortunately I can not publically share that implementation because it's not under open source license.

Best wishes
Christoph

rohitch13 | Thu, 07/29/2021 - 13:51

Did anyone found solution for this? If yes, then please help.

mschramm | Thu, 07/29/2021 - 18:19

Hello,
What you are looking for is called a sphere tree. These are used in visual effects to detect collisions. I have a been working with this to generate multispheres templates (https://github.com/schrummy14/spheretree).
It is VERY ruff and is not the easiest to use.

General flow is to use the sphere tree executables to generate a yaml file from a obj or stl file (you must build these and can be temperamental), then use the python yaml to liggghts converter. This generates a liggghts output file so you can view the results. It is structured in a way that should be fairly simple to convert into a template file (I am planning to do this but have been busy with other work). Lastly, you can try to "reduce" the number of spheres used. I have written a program that takes one of these output files and tries to remove spheres such that there is no statistical difference between the two objects.

Best of luck.

rohitch13 | Fri, 07/30/2021 - 06:20

Thanks Matt, I will certainly try it.

Daniel Queteschiner | Fri, 07/30/2021 - 14:02

Based on J.F. Ferellec and G.R. McDowell, Granular Matter (2010) 12:459–467
I have added a script command that generates a multi-sphere clump from a surface mesh in our version of LIGGGHTS (requires linkage to VTK library)
https://github.com/ParticulateFlow/LIGGGHTS-PFM/blob/master/src/create_m...
https://github.com/ParticulateFlow/LIGGGHTS-PFM/blob/master/src/create_m...
Example:
https://github.com/ParticulateFlow/LIGGGHTS-PFM/tree/master/examples/LIG...