In Metafor, any geometric entity can be defined as rigid Contact Matrices. No additional definition is required.
However, the orientation of the entity is relevant. It defines the area considered as the die, where a penetrating node will experience a contact force. By convention, the normal vector is pointing inside the die.
This normal $\boldsymbol{n}$ is defined as stated below.
Curve
(Line
, Arc
, etc) is defined by its tangent (which can be displayed in the graphical interface). By default, it is defined by its points, from the first one to the last one.Wire
is defined by the succession of its lines, from the first to the last, and not by their vertices. When a wire is defined by only one curve, the orientation of the wire is the orientation of the curve.Side
is defined as the normal of the corresponding Surface
(which can be displayed in the graphical interface). Concerning a Skin
, nowadays the Sides
must be defined in a way guaranteeing consistency of the whole. To define a planar contact matrix, a Plane
surface must be defined and associated to a Side
.
For rigid-defo contact, when Sides
or Curves
are used to define contact matrices, contact can be detected outside of the matrix boundary because lines and surfaces are 10% extrapolated. To avoid this issue, a Skin
or Wire
must be defined instead. The orientation of a 'Curve
or Wire
is easy to modify using curve.reverse
. This command is not yet available for surfaces, so consistency of Sides
must be done manually.
It is also possible to reverse the convention defining where the surface matrix is, changing the value of TYPE_CONT
from the default UNILATERAL_POSITIF
to UNILATERAL_NEGATIF
.
In Metafor, moving contact matrices is done by moving geometric entities in the contact interaction with a Loading
(see Prescribed Displacements).