betti particles spheres

Fill a container with spheres of given sizes, touching neither each other nor the walls, for a DEM packed bed.

particles module Granted on request: see access and licensing.

Usage

betti particles spheres [flags] container out

Examples

betti particles spheres -radius 0.5 drum.stl bed.data
betti particles spheres -min-radius 0.3 -max-radius 0.8 -fraction 0.58 hopper.stl bed.csv
betti particles spheres -sizes 0.3:0.2,0.6:0.8 silo.stl bed.py

Formats, by the extension of out

.csvCSV x,y,z,r: EDEM, Rocky and DEM-Engine imports
.dataLAMMPS and LIGGGHTS data file, atom_style sphere, for read_data
.pyYade: the spheres, for O.bodies.append
.txtx y z r, one sphere to a line
.vtpVTK polydata of the sphere centers with their radii (ParaView)

Flags

FlagTakesDefaultMeaning
-countintegernonethe number of spheres, instead of -fraction
-densitynumber1density, for the masses in .data files
-fractionnumber0.55the share of the container's volume to fill; random packings reach about 0.6
-itersinteger2000the most rounds of pushing spheres apart
-max-radiuslength or numbernonethe largest radius
-min-radiuslength or numbernonewith -max-radius: radii spread evenly between the two
-radiuslength or numbernoneone size of sphere, such as 0.5 or 1%
-seedintegernoneseed for the random placement
-sizestextnonesizes by share of the spheres' volume, radius:share pairs, such as 0.3:0.2,0.5:0.8

Output flags

FlagTakesDefaultMeaning
-jsonswitchoffprint the result as JSON
-qswitchoffprint nothing but errors
-vswitchoffalso show the stages of each step, and their times

This page is generated from betti help particles spheres. Lengths are absolute, or a percentage of the part's bounding-box diagonal, as in -size 1%.