.ModelicaAdditions.MultiBody.CutJoints.Revolute2Dloop

Information

A revolute joint is a joint with 1 rotational degree of freedom.
An instance of this class is used as cut joint to break a kinematic
loop of a multibody system. Note, that a Revolute2Dloop joint can
only be used in a planar (2D) loop and NOT in a general 3D loop.
The reason is that in a 2D loop, e.g. the constraint force
orthogonal to the plane of the loop is not unique if only rigid
bodies are within the loop. For a unique solution, additional
assumptions have to be made, e.g., that this force is zero.
These additional assumptions are stated in class  Revolute2Dloop.
Use class  RevoluteCut3D , if a revolute joint has to be used as
cut joint in a 3D loop.

Parameters:
  n: Axis of rotation with respect to the inertial frame in the
     home position.  n  must not necessarily be a unit vector.

Based on  n , two vectors  npx  and  npy  are constructed which
are perpendicular to  n  (e.g., if n=[0 0 1] then npx=[1 0 0]
and npy=[0 1 0]). The 2 constraint equations on position level
state, that the distance between the origins of frame_a and frame_b,
projected onto npx and npy is zero.
As constraint forces fc (= Lagrange multipliers) of the joint,
forces in the direction of npx and of npy are used. Due to the
assumed planar (2D) loop, the force in direction of  n  and the
torques in direction of npx and of npy are assumed to be zero.

Generated at 2024-12-21T19:25:56Z by OpenModelicaOpenModelica 1.24.3 using GenerateDoc.mos