Geometry

Woo splits each contact into its geometrical features and the contact model.

The geometry is given by local coordinates (situated at the contact point and having the \(x\)-axis along the contact normal) and is also responsible for computing relative velocity of contacting particles in local coordinates. THis information is stored in woo.dem.L6Geom.

The geometry computation (performed by various woo.dem.CGeomFunctor subclasses) is split in two parts:

  • Algorithm for computing relative velocities (and other features) at the contact point, which is common for all particle shapes:

Additional topics dealing with contact geometry are described in the following sections:

Particle shapes

The following particle shapes are supported:

  1. Simple shapes (1-node): Sphere, Capsule, Ellipsoid;

  2. Multinodal shapes: Truss (2 nodes), Facet (3 nodes); Membrane (same as Facet geometrically, but adds deformability), woo.fem.Tetra (4 nodes; plus deforming woo.fem.Tet4)

  3. Infinite axis-aligned shapes: InfCylinder, Wall.

The following matrix shows which shapes can collide with each other:

Capsule

Cone

Ellipsoid

Facet

InfCylinder

Rod

Sphere

Tetra

Truss

Wall

Capsule

l6g

×

×

l6g

l6g

×

l6g

×

×

l6g

Cone

×

×

×

×

×

×

l6g

×

×

×

Ellipsoid

×

×

l6g

l6g

×

×

l6g

×

×

l6g

Facet

l6g

×

l6g

l6g

l6g

×

l6g

×

×

l6g

InfCylinder

l6g

×

×

l6g

×

×

l6g

×

×

×

Rod

×

×

×

×

×

×

l6g

×

×

×

Sphere

l6g

l6g

l6g

l6g

l6g

l6g

l6g, g3g

×

×

l6g, g3g

Tetra

×

×

×

×

×

×

×

×

×

×

Truss

×

×

×

×

×

×

×

×

×

×

Wall

l6g

×

l6g

l6g

×

×

l6g, g3g

×

×

×

The g3g geometry is an algorithm used in Yade’s ScGeom and many other codes including PFC3D; it was only included for comparison purposes and is not to be used otherwise.

Tip

Report issues or inclarities to github.