particle_template concave command
Purpose
Command for defining concave triangulated particles (examples).
Warning
GPU support for this command has not been tested and may not work as expected.Syntax
particle_template [general_keywords] shape concave keyword value
General particle_template keywords are documented here. This document only describes
the specific keywords for the definition of concave triangulated particles.
Return to the particle_template documentation.
Keyword |
Description |
|---|---|
path to file generated by the concave_decomposition command |
|
list of convex body IDs defined by the convex_body command {body-ID1, …, body-ID1} |
|
principal vector1 off_diagonal vector2; vector1: 3D vector with the principal valuesof the inertia tensor; vector2: vector with the off-diagonal values of the inertia (Iyx, Ixz, Iyz)
only mandatory if
convex_bodies have a mass```and a ``center_of_mass but nomoment_of_inertia; not mandatory for convex_bodies_file; |
|
factor for scaling up or down the template
default: 1; range: (0,∞); units: [-]
|
|
vector with factors to scale the template in x, y and z direction
default: (1,1,1); range: (0,∞); units: [-]
|
|
axis vector angle value: vector = axis vector (rotation axis goes through origin)value: rotation angle in degrees
|
¹ The keywords convex_bodies_file and convex_bodies are mutually exclusive, one of them is obligatory.
² The keywords scale and scale_axes are mutually exclusive.
Examples
particle_template it pts1 material steel shape concave convex_bodies_file data/a.asx
particle_template id myConcaveParticles material rubber shape concave &
convex_bodies {c1,c2,c3}
particle_template it pts1 material steel shape concave convex_bodies_file data/a.asx &
scale_axes (1,1,2)
particle_template id myConcaveScaled material rubber shape concave &
convex_bodies {c1,c2,c3} scale 0.6 rotate axis (1,0,0) angle 45
particle_template id myConcaveParticles material rubber convex_bodies {c1,c2,c3} &
moment_of_inertia principal (0.266666,0.26666,0.266666) off_diagonal (0.,0.,0.)
Description
A concave particle is obtained by combining multiple convex
objects. There are two ways of supplying a list of convex bodies: The
keyword convex_bodies defines a list of convex body IDs, which are
defined by the convex_body
command. Alternatively, the convex_bodies_file command can be used
to include a file generated by the concave_decomposition command. If the latter is used, the
overlay_mesh_file allows to overwrite the path to the original concave
file (by default it will be provided by the convex_bodies_file). This can be
used in conjunction with the write_overlay_mesh in the
output_settings command.
Note
convex_bodies and convex_bodies_file are mutually exclusive.
If the moment of inertia is not defined by the convex_body command,
then the moment_of_inertia must be specified in the particle template.
The scale, scale_axes and rotate keywords work in the same way
as described above for convex particles, except for two differences:
Only one
rotateand onescale/scale_axeskeyword can be presentrotation is always executed before scaling
Also, the treatment of user-provided mass, center of mass and moment of inertia is identical.
If a convex_bodies_file is used coming from an originally convex object,
then this command will permit this without any additional changes. In this
case the convex bodies file, will contain just one convex body and it will
be treated as such.