====== Rigid matrices ====== ===== Defining rigid matrices ===== In Metafor, any geometric entity can be defined as rigid [[doc:user:general:glossaire#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. DESSIN This normal $\boldsymbol{n}$ is defined as stated below. * **In 2D:** The convention states that the cross product $\boldsymbol{t} \wedge \boldsymbol{n} = (0,0,1)$. This is equivalent in saying that the contact matrix is defined with its //**area to the left**// (when following the line defining the matrix, any node trying to penetrate in the aerea to the left will experience a contact force). * The orientation of a ''[[doc:user:geometry:user:courbes|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. * The orientation of a''[[doc:user:geometry:user:contours|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. * **In 3D:** The normal of a ''[[doc:user:geometry:user:faces|Side]]'' is defined as the normal of the corresponding ''[[doc:user:geometry:user:surfaces|Surface]]'' (which can be displayed in the graphical interface). Concerning a ''[[doc:user:geometry:user:peaux|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''. ===== Contact - motion of matrices ===== In Metafor, moving contact matrices is done by moving geometric entities in the contact interaction with a ''Loading'' (see [[doc:user:conditions:displacements]]).