Abstract
The dynamics of a holonomically constrained rigid body can be modeled by Newton-Euler equations subjected to geometric constraints. This is frequently formulated as a differential-algebraic equation (DAE) system of index 1. In multibody system (MBS) dynamics it is common (1) to numerically solve this system by means of integration schemes for ordinary differential equations, and (2) to treat the rigid body motion on the direct product Lie group \(\textit{SO}\,(3) \times {\mathbb {R}}^{3}\), although rigid body motions form the semidirect product Lie group \(\textit{SE}\,(3) \). It is has been observed that the constraint satisfaction depends on which Lie group is used as configuration space (c-space). In this paper the problem is considered from a geometric perspective. It is shown that the constraints are exactly satisfied by a numerical integration scheme if they define a subgroup of the c-space. The subgroups of \(\textit{SE}\,(3) \) have a significance for modeling mechanical systems, including lower kinematic (Reuleaux) pairs and are implicitly used in MBS modeling. It is concluded that \(\textit{SE}\,(3) \) is the appropriate c-space for numerical DAE modeling of a constrained rigid body. This result does not immediately apply to MBS, however.
Similar content being viewed by others
Avoid common mistakes on your manuscript.
1 Introduction
Technical systems are modeled as constrained or restrained systems of rigid or flexible bodies, i.e. as a multibody system (MBS). An approach frequently used is the so-called ’absolute coordinate formulation’ where the Newton-Euler equations of individual bodies are formulated and subjected to constraint and interaction forces [1, 29, 31]. The corresponding numerical model is a system of differential-algebraic equations (DAE) of index 3 that is commonly transformed to an index 1 DAE and solved numerical using ODE integration methods. This inevitably leads to constraint violation that are of the order of the accuracy of the integration scheme. Various constraint stabilization methods were introduced to remedy this problem [4, 20].
In MBS dynamics [1, 29, 31] the configuration space (c-space) of the rigid body is historically treated as the direct product Lie group \(\textit{SO}\,(3) \times {\mathbb {R}}^{3}\). This may not be stated explicitly but is implied by the decoupled parameterization of rotations and translations. Rigid body motions are screw motions, however. Hence the proper rigid body c-space is the semidirect product \(\textit{SE}\,(3) =\textit{SO}\,(3) \ltimes {\mathbb {R}}^{3}\)—the group of isometric and orientation preserving transformations of Euclidean space, called the special Euclidean group in three dimensions. Moreover, only this c-space ensures frame invariance of the motion equations [9].
There is a recent awareness that the use of an appropriate geometric model of rigid body motions is crucial for the numerical performance, mainly motivated by the development of Lie group integration schemes for MBS [12]. It has also been observed that the constraint satisfaction varies dramatically for either choice of c-space [23] . Moreover, it is crucial to observe that this applies to any integration scheme, i.e. equally to the (vector space) integration schemes commonly used in MBS dynamics. This issue has not yet been addressed systematically. In [23] the consequences of using the direct and semidirect product group has been analyzed for MBS by means of numerical simulations. It is important to notice that this
In this note the case of a single constrained rigid body is considered, which allows for a concrete statement. It will be shown that constraints are exactly satisfied, if they constrain the body’s motion to a c-space subgroup. Noting that only subgroups of \(\textit{SE}\,(3) \) are relevant for MBS modeling, including lower kinematic (Reuleaux) pairs, \(\textit{SE}\,(3) \) is deemed the appropriate c-space for numerical analysis.
2 Problem statement
The motion of a rigid body can be represented as a curve \(C\left( t\right) \) in a 6-dimensional Lie group G –the body’s c-space. Its velocity can be defined as left-invariant vector field \(V=C^{-1}\dot{C}\in {\mathfrak {g}}\). The latter can be represented by a vector \({\mathbf {V}}\in {{\mathbb {R}}}^{6}\) comprising the angular and translational velocity (see Sect. 3). The momentum vector \(\varvec{\Pi }=\mathbf {MV}\in {\mathfrak {g}}^{*}\) is then defined with the body-fixed inertia matrix \(\mathbf {M}\). The velocity as well as the corresponding Hamiltonian is left-invariant. The dynamics of a free rigid body is thus governed by the Euler-Poincaré equations [22]
on \({\mathfrak {g}}^{*}\). These are the Newton-Euler equations according to the geometric model of rigid body motions encoded in G. The solution of (1) is the velocity respectively momentum evolution. The actual motion is the solution of the (left) Poisson equations \(\dot{C}=CV\), that will be referred to as the kinematic reconstruction equations [22].
Let the body be subjected to m geometric constraints \(h\left( C\right) = \mathbf {0}\), with constraint mapping \(h:G\rightarrow {\mathbb {R}}^{m}\). The corresponding velocity constraints can be expressed as \({\mathbf {J}}\left( C\right) {\mathbf {V}}=\mathbf {0}\), where \({\mathbf {J}}\) is the left-trivialized tangent mapping of h referred to as constraint Jacobian. The equations of motion (EOM) of the constrained rigid body attain the form
with applied forces \(\mathbf {W}\in {\mathfrak {g}}^{*}\) and Lagrange multipliers \({\lambda }\in {\mathfrak {g}}^{*}\). This is an index 3 DAE system on the state space \(G\times {\mathfrak {g}}\) (using C and \(\mathbf { V}\) as variables).
In many practically significant situations the constraints define a subgroup, i.e. \(H=h^{-1}\left( \mathbf {0}\right) \) is a subgroup of G. In this case H can be used as c-space and the dynamics is governed by the unconstrained equations
on the state space \(H\times \mathfrak {h}\). A prominent example is the heavy top where \(H=SO\left( 3\right) \). This has been the standard example for Lie group integration schemes applied to the rigid body [24, 25, 27].
The solution of (2b) has the form \(C\left( t\right) =C_{0}\exp {\mathbf {X}}\left( t\right) \), where \({\mathbf {X}}\left( t\right) \) is a curve in \({\mathfrak {g}}\), and \(C_{0}\in G\) the initial value. Thus the kinematic reconstruction equations (2b) on G can be replaced by the system \( {\mathbf {V}}=\mathrm {dexp}_{-{\mathbf {X}}}({\dot{\mathbf {X}}})\) on \({\mathfrak {g}}\). This is the basic idea behind the Munthe-Kaas (MK) method [17, 19, 24, 25], for instance.
It is a common approach in MBS dynamics [1, 31] to transform the system (2a–2c) to an index 1 DAE (see (18) below) that gives rise to an ODE of the form
This is an ODE on the vector space \({\mathbb {R}}^{6}\times {\mathbb {R}}^{6}\) (identifying \({\mathfrak {g}}\) with \({\mathbb {R}}^{6}\)), which can be solved with any numerical integration method. Moreover it splits into the system (4a) on \({\mathbb {R}}^{6}\) and the system (4b) on the Lie algebra \({\mathfrak {g}}\).
So far no particular c-space Lie group G is specified. The c-space Lie group, i.e. the geometric model of rigid body motions, determines (1) the explicit form of the Euler-Poincaré equations, and (2) the dexp mapping, i.e. the kinematic reconstruction equations. Moreover, (4b) is a system on the Lie algebra \({\mathfrak {g}}\), and thus specific to the c-space. The following question is addressed in the remainder of this note:
Problem
How does the choice of c-space Lie group affect the preservation of the constraint manifold \(h^{-1}\left( \mathbf {0}\right) \) when numerically integrating the rigid body model (4a, 4b)?
3 Two choices of configuration space
The configuration of a rigid body is given by \(C=\left( {\mathbf {R}},{\mathbf {r}} \right) \), where \({\mathbf {R}}\in \textit{SO} \left( 3\right) \) represents the orientation of a body-fixed reference frame (RFR) w.r.t. a spatial inertial frame (IFR), and \({\mathbf {r}}\in {\mathbb {R}}^{3}\) is the position vector expressed in this frame. Two choices for the c-space are used in the literature that will be considered: (1) the direct product Lie group \( SO\,( 3) \times {\mathbb {R}}^{3}\), and (2) the semidirect product \( SE\,(3) =SO\,(3) \ltimes {\mathbb {R}}^{3}\) –the special Euclidean group in three dimensions [30].
In the following \(\varvec{\widehat{{\xi }}}\in so\left( 3\right) \) denotes the skew symmetric matrix associated to the vector \({\xi }\in {\mathbb {R}} ^{3}\). With slight abuse of notation the vector will be referred to as an element of \(so\left( 3\right) \). The right-translated differential \(\mathrm { dexp}:{\mathfrak {g}}\times {\mathfrak {g}}\rightarrow {\mathfrak {g}}\) of the exp mapping on G is defined as \(\mathrm {dexp}_{{\mathbf {X}}}({\dot{\mathbf {X}}})= \dot{C}C^{-1}\), with \(C=\exp {\mathbf {X}}\), which implies \(\mathrm {dexp}_{- {\mathbf {X}}}({\dot{\mathbf {X}}})=C^{-1}\dot{C}\).
3.1 Direct product lie group \(SO\left( 3\right) \times {\mathbb {R}} ^{3} \)
The direct product group is traditionally used as c-space in MBS dynamics [31]. This stems from the notion that rotations and translations are independent, and is also reflected by the decoupled parameterization of C in terms of rotation parameters (angles, angle-axis) and position vector. The group multiplication is
and the inverse element is \(C^{-1}=({\mathbf {R}}^{T},-{\mathbf {r}})\). The group is generated by its Lie algebra \(so\left( 3\right) \times {\mathbb {R}}^{3}\), with elements \({\mathbf {X}}=\left( \varvec{{\xi }},{\mathbf {r}}\right) \), via the exponential mapping
where \(\exp \widehat{{\xi }}\) is the exponential on \(SO\,( 3) \) [30]. The configuration of a rigid body is thus parameterized by the scaled rotation axis \({\xi }\) and the displacement vector \({\mathbf {r}}\). The Lie bracket on \(so\,(3) \times {\mathbb {R}}^{3}\) is
This can be expressed as \({\mathbf {ad}}_{{\mathbf {X}}_{1}}{\mathbf {X}}_{2}\) with matrix
The rigid body velocity \(V^{\mathrm{m}}:=C^{-1}\dot{C}\in so\left( 3\right) \times {\mathbb {R}}^{3}\), that reads in vector form \({\mathbf {V}}^{\mathrm{m}}=( \varvec{{\omega }^{\mathrm{b}}},{\dot{\mathbf {r}}})\), is referred to as the mixed velocity since it consists of the body-fixed angular velocity \({\omega }^{\mathrm{b}}\) and the translational velocity \({\dot{\mathbf {r}}} \) expressed in the spatial IFR. This is commonly used in MBS dynamics [31].
The right-translated differential of the exp mapping is in matrix form
so that \({\mathbf {V}}^{\mathrm{m}}={\mathbf {dexp}}_{-{\mathbf {X}}}{\dot{\mathbf {X}}}\) for \(C=\exp {\mathbf {X}}\in \textit{SO}\,(3) \times {\mathbb {R}}^{3}\). Therein
is the matrix form of the dexp mapping on \(\textit{SO}\,(3) \) [30]. The inverse, required in (4b), is
In order to decouple the Newton and Euler equations, the RFR is located at the center of mass (COM). With the body-fixed inertia matrix \(\mathbf {M} =\left( \begin{array}{cc} \varvec{\Theta }_{0} &{}\quad \mathbf {0} \\ \mathbf {0} &{}\quad m\mathbf {I} \end{array} \right) \), where \(\varvec{\Theta }_{0}\) is the inertia tensor w.r.t. the COM, the mixed momentum vector is \(\varvec{\Pi }^{\mathrm{m}}=\mathbf {MV }^{\mathrm{m}}=\left( \varvec{\Theta }_{0}\varvec{{\omega }^{\mathrm{b}}},m\dot{ {\mathbf {r}}}\right) \in so^{*}\,( 3) \times {{\mathbb {R}}}^{3}\). The corresponding Euler-Poincaré equations (1) are, with (8), explicitly
These are indeed the decoupled Newton-Euler equations w.r.t. the COM. This decoupling of rotations and translations prevails as apparent from (5), (8), and (9).
The mixed velocity and momentum are left-invariant w.r.t. actions of \( SO\,( 3) \times {\mathbb {R}}^{3}\). The latter are not proper frame transformations. Moreover, the equations (12) cannot be transformed to another RFR by means of actions \(SO\,( 3) \times { {\mathbb {R}}}^{3}\). This already indicates that the latter is not a proper rigid body c-space.
3.2 Special euclidean group \(\textit{SE}\,(3) \)
Although being independent, rigid body rotations and translations are not decoupled. Moreover a rigid body motion is a screw motion belonging to \( SE\left( 3\right) \), and this is hence the proper rigid body c-space. This is reflected in the group multiplication \(C_{2}\cdot C_{1}=\left( {\mathbf {R}} _{2}{\mathbf {R}}_{1},{\mathbf {r}}_{2}+{\mathbf {R}}_{2} {\mathbf {r}}_{1}\right) \) that describes frame transformations. The inverse element is \(C^{-1}=\left( {\mathbf {R}},-{\mathbf {R}}^{T}{\mathbf {r}}\right) \). The Lie algebra \(se\,( 3) =so\,( 3) \ltimes {\mathbb {R}}^{3}\) consists of elements of the form \({\mathbf {X}}=\left( \varvec{{\xi }},\varvec{{\eta }}\right) \), and is equipped with the Lie bracket (screw product) \(\left[ {\mathbf {X}}_{1},{\mathbf {X}}_{2}\right] =\left( \varvec{{\xi }}_{1}\times \varvec{{\xi }}_{2},\varvec{{\xi }} _{1}\times {\varvec{\eta } }_{2}-\varvec{{\xi }}_{2}\times \varvec{{\eta }} _{1}\right) \) [30]. The latter can be expressed as \(\left[ {\mathbf {X}} _{1},{\mathbf {X}}_{2}\right] ={\mathbf {ad}}_{{\mathbf {X}}_{1}}{\mathbf {X}}_{2}\), with the matrix
The exponential mapping attains, with (10), the explicit form
Therewith the rigid body configuration is parameterized in terms of screw coordinates \({\mathbf {X}}\in se\,( 3) \).
The velocity \(V^{\mathrm{b}}=C^{-1}\dot{C}\in se\,( 3) \) is called the body-fixed velocity screw (also called body-twist). In vector form \({\mathbf {V}}^{\mathrm{b}}=(\varvec{{\omega }}^{\mathrm{b}},\mathbf {v}^{ \text {b}})\), where \(\mathbf {v}^{\mathrm{b}}={\mathbf {R}}^{T}{\dot{\mathbf {r}}}\) is the body-fixed translational velocity.
The right-translated differential of exp possesses different representations in matrix form as e.g. reported in [8, 28], so that \({\mathbf {V}}^{\mathrm{b}}={\mathbf {dexp}}_{-{\mathbf {X}}}{\dot{\mathbf {X}}}\) for \(C=\exp {\mathbf {X}}\in SE\,( 3) \). The inverse of dexp in matrix form has been derived in [30]. A computationally efficient form is reported in [8, 28]
with
and \(\gamma :=\frac{2}{\left\| \varvec{{\xi }}\right\| }\cot \frac{ \left\| \varvec{{\xi }}\right\| }{2}\), \(\alpha :=\frac{2}{\left\| \varvec{{\xi }}\right\| }\sin \frac{\left\| \varvec{{\xi }}\right\| }{2} \cos \frac{\left\| \varvec{{\xi }}\right\| }{2},\beta :=\frac{4}{ \left\| \varvec{{\xi }}\right\| ^{2}}\sin ^{2}\frac{\left\| \varvec{{ \xi }}\right\| }{2}\). Here \(\mathbf p :=\varvec{{\xi }}\cdot {\varvec{\eta }} /\left\| {\varvec{\xi }}\right\| ^{2}\) is the pitch of the screw.
With the left-invariant body-fixed momentum screw \(\varvec{\Pi }^{\mathrm{b}}= \mathbf {MV}^{\mathrm{b}}=(\varvec{\Theta }_{0}\varvec{{\omega }}^{\mathrm{b}},m \mathbf {v}^{\mathrm{b}})\in se^{*}\) (3a, 3b) the dynamics of the rigid body is governed by the Euler-Poincaré equations (1) that, with (13), are the body-fixed Newton-Euler equations
4 Constraint satisfaction in numerical time integration of the index 1 DAE
4.1 The associated index 1 DAE
Consider the single rigid body with motion equations (2a–2c). Following the standard method in MBS dynamics, this is reformulated as index 1 DAE [1, 29, 31]
by complementing (2a) with the acceleration constraints, \({\mathbf {J}} \left( C\right) {\dot{\mathbf {V}}}={\eta }\left( C,{\mathbf {V}}\right) \). Then the system (18) is solved for \({\dot{\mathbf {V}}}\) (and \( {\lambda }\) as by-product), which yields an ODE of the form (4a). Then the ODE (4) is solved with a numerical (vector space) integration scheme.
4.2 Constraint satisfaction for a general C-space lie group
The constraints are satisfied during the integration as long as the configuration update step of the applied numerical integration scheme returns a configuration in \(h^{-1}\left( \mathbf {0}\right) \). It is well-known, however, that numerically solving (4a, 4b) with ODE integration schemes generally leads to violations of the (now hidden) geometric constraints (2c). To reduce this numerical drift, constraint stabilization methods have been proposed that either amend the motion equations [3, 20] or correct the numerical solution by projecting it to the constraint manifold \(h^{-1}\left( \mathbf {0} \right) \) [2, 4, 11, 32]. All these methods aim at minimizing or correcting, rather than avoiding, constraint violations.
The subsequent analysis of the constraint satisfaction makes use the parameterization of the rigid body configuration in terms of \({\mathbf {X}}\in {\mathfrak {g}}\). Denoting with \({\mathbf {X}}^{\left( i\right) }:={\mathbf {X}} \left( t_{i}\right) \), the configuration at time step \(t_{i}\) is \(C\left( t_{i}\right) =\exp {\mathbf {X}}^{\left( i\right) }\), with \({\mathbf {X}}^{\left( i\right) }={\mathbf {X}}^{\left( i-1\right) }+\varvec{\Phi }^{\left( i\right) }\). The increment \(\varvec{\Phi }^{\left( i\right) }\in {\mathfrak {g}} \) is found by numerically solving (4). To this end any explicit or implicit vector space integration scheme can be used.
A (possibly implicit) numerical integration scheme determines \(\varvec{\Phi } ^{\left( i\right) }\) by (usually) linear combination of the right hand side of (4b) evaluated at s intermediate time steps. The right hand side is given by the inverse of dexp, which possesses the series expansion
with the Bernoulli numbers \(B_{i}\). Hence the following assumption is feasible for the general class of integration schemes that construct the solution as linear combination of the right hand side of (4b).
Assumption 1
The configuration update increment is determined as
denoting \({\mathbf {V}}^{\left( j\right) }:={\mathbf {V}}(t_{i-1}+c_{j}\varDelta t, \mathbf {q}_{j})\) with some real coefficients \(\alpha _{ij}\) and \(c_{j}\) specific to the integration scheme.
Also the numerically obtained solution \({\mathbf {V}}\left( t\right) \) of (4) does not necessarily satisfy the velocity constraints \({\mathbf {J}} \left( C\right) {\mathbf {V}}=\mathbf {0}\). This linear condition can be easily satisfied, however.
Assumption 2
It is assumed that the velocity \({\mathbf {V}}^{\left( j\right) }\) satisfies the kinematic constraints at all time steps \(t_{j}=t_{i-1}+c_{j}\varDelta t\).
This gives rise to the following.
Theorem 1
The kinematic motion constraints of a rigid body are satisfied by a configuration update step in terms of linear combinations of velocity samples \({\mathbf {V}}^{\left( j\right) }\), if the constraints restrict the body’s motion to a subgroup of its c-space Lie group.
Proof
With Assumption 2, the body velocities at the intermediate configurations belong to the subspace of \({\mathfrak {g}}\) defined by the velocity constraints. The r-fold nested Lie brackets \({\mathbf {ad}}_{{\mathbf {V}} ^{\left( j\right) }}^{r}{\mathbf {V}}^{\left( i\right) }\), \(r\ge 0\), in the construction (20) of \(\varvec{\Phi }^{\left( i\right) }\) form a basis for the smallest Lie subalgebra of \({\mathfrak {g}}\) comprising all \({\mathbf {V}} ^{\left( i\right) }\) at intermediate time steps \(t_{i-1}+c_{j}\varDelta t\). If the constraints restrict the motion to a subgroup \(H=h^{-1}\left( \mathbf {0} \right) \subset G\), and thus the velocities to the corresponding subalgebra of \({\mathfrak {g}}\), the brackets in terms of feasible velocities in (20) form a basis for this subalgebra. Consequently, \(\varvec{\Phi }^{\left( i\right) }\) belongs to the smallest Lie subalgebra of \({\mathfrak {g}}\) containing the constrained body velocity \({\mathbf {V}}\), and the configuration increment \(C\,( t_{i}) \) belongs to the corresponding subgroup of the c-space Lie group G, (occasionally called the completion group). Hence the constraints are satisfied regardless of the order and accuracy of the integration scheme. \(\square \)
4.3 Constraint satisfaction for \(SE\,( 3) \) and \(SO\,( 3) \times {{\mathbb {R}}}^{3}\)
The above theorem applies to arbitrary c-space Lie groups. Clearly the two c-space Lie groups of interest have different subgroups, and it is important to analyze which subgroups do actually correspond to practically relevant constraints. This is vital since traditionally all formulations for rigid body MBS use \(SO\,( 3) \times {\mathbb {R}}^{3}\) as c-space (at least implicitly by treating rotations and translations decoupled), whereas only a few formulations for flexible bodies employ \(SE\,( 3) \) such as [6–9]. Hence a legitimate question is whether using a proper rigid body c-space Lie group will alleviate or even eliminate constraint violations.
The motion of a rigid body is represented by the motion of its body-fixed RFR relative to the IFR, summarized as \(C=\left( {\mathbf {R}},{\mathbf {r}} \right) \).
The 10 subgroups of \(\textit{SE}\,(3) \) are listed in Table 1 (adopted from [30]), where also the corresponding lower kinematic pairs (Reuleaux pairs) are indicated. \(\textit{SE}\,(3) \) represents rigid body motions, i.e. screw motions, respecting the coupling of rotation and translation. This motion representation is invariant w.r.t. the change of RFR. For instance, if the RFR is located at the center of rotation, elements of \(\textit{SO}\,(3) \), as a \(\textit{SE}\,(3) \) subgroup, have the form \(C=\left( {\mathbf {R}}, \mathbf {0}\right) \). This is occasionally called the standard representation. For a general location of RFR, \(\textit{SO}\,(3) \) as a subgroup consists of elements \(C=\left( {\mathbf {R}},{\mathbf {r}}\right) \) such that there is a \(M\in \textit{SE}\,(3) \) that transforms them to the standard form via \(\textit{MCM}^{-1}\).
The 10 subgroups of the direct product \(\textit{SO}\,(3) \times {\mathbb {R}} ^{3}\) are listed in Table 2. It does not represent frame transformations. The translations are decoupled from the rotations. For instance, elements of the subgroup of rotations about a fixed pole have necessarily the form \(C=\left( {\mathbf {R}},\mathbf {0}\right) \), which is not a frame-invariant representation. That is, the RFR origin is always the center of rotation. The subscript ‘0’ in \(\textit{SO}_{0}\,( 3) \) in Table 2 signifies that pure rotations are always about the RFR origin. Consequently, the direct product cannot describe the screw motion of a body-fixed RFR at a generic location. Recall that commonly in MBS dynamics it is used as c-space model even though!
MBS models of technical systems predominantly comprise lower pair joints. Such joints constrain the motion to subgroups of \(\textit{SE}\,(3) \) (not of \(\textit{SO}\,(3) \times {\mathbb {R}}^{3}\)), corresponding to lower-dimensional screw motions. Then, if \(\textit{SE}\,(3) \) is used as c-space Lie group, \(H=h^{-1}\left( \mathbf {0}\right) \) is in fact a subgroup of the c-space. H is the isotropy group of the joint, i.e. the subgroup of motions leaving the contact surface of the joints invariant. Each of the six types of lower pairs corresponds to such a subgroup as indicated in Table 1. Consequently the joint constraints are satisfied by an \(\textit{SE}\,(3) \) update step if a rigid body is connected to the ground by a lower pair joint.
Corollary 1
The geometric constraints imposed on a rigid body by lower pair joints (and general restrictions to \(SE\,( 3) \) subgroups) are satisfied by a configuration update step in terms of linear combinations of velocity samples \({\mathbf {V}}^{\left( j\right) }\), if \(SE\,( 3) \) is used as c-space. Using \(SO\,( 3) \times {\mathbb {R}}^{3}\) the update satisfies constraints restricting to \(SE\,( 3) \) subgroups that are, as manifolds, identical to subgroups of \(SO\,( 3) \times {\mathbb {R}}^{3}\), i.e. planar motions, Schönflies motions, and pure translations.
Remark 1
Given the velocity of a motion in a \(SE\left( 3\right) \) subgroup. The \(SO\left( 3\right) \times {{\mathbb {R}}}^{3}\) update does not yield a configuration in that subgroup. For instance, the update step with a velocity \({\mathbf {V}}=\left( \varvec{{\omega }},\mathbf {v}\right) \in so\left( 3\right) \subset se\left( 3\right) \) leads to an independent rotational and translational increment, i.e. not in \(SO\left( 3\right) \).There are, however, two special cases where the update with both groups perform equal: planar and Schönflies motions. This is so because in \( SO\left( 2\right) \ltimes {\mathbb {R}}^{2}\) (planar motions) and \(SO\left( 2\right) \ltimes {\mathbb {R}}^{3}\) (Schönflies motions), the action of \( SO\left( 2\right) \) leaves \({{\mathbb {R}}}^{2}\) and \({{\mathbb {R}}}^{3}\) invariant, so that as manifolds they are identical to \(SO_{0} \left( 2\right) \times {\mathbb {R}}^{2}\) and \(SO_{0}\left( 2\right) \times {\mathbb {R}}^{3}\), respectively. Thus, for constraints restricting to these subgroups, updates with both c-spaces perform equally (see Sect. 5.4). The same applies to pure translations.
Remark 2
Corollary 1 does not regard the accuracy of the integration scheme. It rather says that the constraints are exactly satisfied regardless of the accuracy of the integration scheme or step size.
Remark 3
(Parameterization of \(SE\left( 3\right) \)) It was concluded that \(SE\left( 3\right) \) shall be used as c-space. The semidirect product requires according parameterization in terms of screw coordinates \({\mathbf {X}}\) in (14). This is different to what is currently used in MBS modeling. The main difference is that the translation vector is not used as coordinate but is determined by the screw coordinates.
Remark 4
(Relevance for Lie group integration methods) The ODE system (4) arose from replacing \(\dot{C}=CV\) by \({\mathbf {dexp}} _{-{\mathbf {X}}}{\dot{\mathbf {X}}}\), in order to analyze the standard vector space integration schemes used in MBS dynamics. Resorting to the original equation leads to the ODE
This is an ODE on the state space Lie group \(G\times {\mathbb {R}}^{6}\). Hence Lie group integration schemes like the MK scheme [24, 25], or the schemes adopting the Newmark and generalized \(\alpha \) scheme to the Lie group setting of constrained rigid body dynamics [12, 13] can be applied. Since these schemes use (local) canonical coordinates (of first kind) to express the configuration update via the exponential mapping, the above corollary also apply to the Lie group integration methods. In particular, MK schemes solve the substitute Eq. (4b).
5 Examples
A few examples are presented that illustrate the above discussion. In all examples the rigid body is a rectangular aluminum solid with side lengths \( 0.3\times 0.15\times 0.05\) m. The body-fixed RFR is located at the COM, as shown in Fig. 1a). Its mass is \(m=6.075\) kg, and its inertia tensor w.r.t. the COM is \(\varvec{\Theta }_{0}=\mathrm {diag} ~(0.0126563,0.0468281,0.0569531)\hbox {kg}\,\hbox {m}^{2}\). In the following results are presented for some lower pair joints and a higher kinematic pair. The respective joint connects the body to the IFR at the ground. The joint is located on the body at the point \(\mathbf {p}=\left( -0.15,0.0375,0\right) \)m expressed in the body-fixed RFR.
The EOM (4a, 4b) are evaluated by solving (18). The Newton-Euler equations therein depend on the c-space. These are (12) for the direct product (using mixed velocities), and (17) for the semidirect product c-space (using body-fixed twists). The constraints Jacobian \({\mathbf {J}}\) is joint specific.
The EOM (4a, 4b) were integrated for 10 s with an explicit 4th order Runge-Kutta (RK4) method using the three step sizes \( \varDelta t=10^{-2}\hbox {s},10^{-3}\hbox {s},10^{-4}\hbox {s}\). For all examples the initial configuration was \(C_{0}=(\mathbf {I},-\mathbf {p})\), as in Fig. 1a).
5.1 Spherical joint–heavy top
Connecting the body to the ground with a spherical joint (ball-and-socket joint) yields the model of a heavy top. The heavy top became the standard example for Lie group modeling and integration methods [5, 12–17].
The spherical joint imposes the system of three position constraints
Differentiating twice w.r.t. time yields the acceleration constraints in terms of body-fixed twists \({\mathbf {V}}^{\mathrm{b}}=({\varvec{\omega }}^{\mathrm{b} },\mathbf {v}^{\mathrm{b}})\)
used in the \(SE\left( 3\right) \) model, and in terms of mixed velocities \( {\mathbf {V}}^{\mathrm{m}}=({\omega }^{\mathrm{b}},{\dot{\mathbf {r}}})\)
used in the \(SO\left( 3\right) \times {\mathbb {R}}^{3}\) model. The EOM were integrated with initial velocity \(\varvec{{\omega }}_{0}^{\mathrm{b}}=(2\pi ,\pi ,0.2\pi )\)rad/s.
The geometric constraints define the 3-dimensional constraint manifold \( H=h^{-1}\left( \mathbf {0}\right) \). This is the manifold of spherical displacements around the IFR origin. In \(SE\left( 3\right) \) this is the subgroup \(H=SO\left( 3\right) \subset SE\left( 3\right) \). But H is not a subgroup of \(SO\left( 3\right) \times {\mathbb {R}}^{3}\). It can only be a subgroup of the latter, if the body-fixed RFR is located at the rotation center. According to Corollary 1 the \(SE\left( 3\right) \) update should lead to exact constraint satisfaction while \(SO\left( 3\right) \times {\mathbb {R}}^{3}\) could not. This is confirmed by the position error \( \varepsilon :=\left\| h\right\| \) shown in Fig. 2. The constraint satisfaction of the direct product formulation is dictated by the 4th order accuracy of the integration scheme.
5.2 Revolute joint
With the orientation of RFR shown in Fig. 1b, the joint axis is aligned with the 2-axis, and the revolute joint imposes the five geometric constraints
where \({\mathbf {R}}=(R_{ij})\). The system of acceleration constraints in terms of body-fixed twists consists of (23) and the two constraints
where \(\varvec{{\omega }}^{\mathrm{b}}=(\omega _{1}^{\mathrm{b}},\omega _{2}^{ \text {b}},\omega _{3}^{\mathrm{b}})\). In terms of the mixed velocities the acceleration constraints consists of (24) and the two constraints (28), (29). The EOM were integrated with initial velocity \({\varvec{\omega }}_{0}^{\mathrm{b}}=(0,2\pi ,0)\)rad/s.
The revolute joint constraints define the subgroup \(H=SO\left( 2\right) \subset SE\left( 3\right) \) of rotations about a fixed axis. Since the axis does not pass through the origin of the RFR it is not a \(SO\left( 3\right) \times {\mathbb {R}}^{3}\) subgroup. The consequences are apparent in Fig. 3. Both exactly satisfy the rotation constraints, since a solution of (18) only has non-zero components for rotations about the rotation axis.
5.3 Cylindrical joint
A cylindrical joint allows for rotation about and translation along a fixed axis. The RFR is allocated as for the revolute joint in Fig. 1a. The according system of four geometric constraints consists of the first and third equation of (25) and the two equations (26), (27). The system of acceleration constraints in terms of body-fixed twists consists of the first and third equation of (23) and the two constraints (28), (29). Using mixed velocities these are the first and third equation of (24) and (28), (29).
The EOM were integrated with initial velocity \({\varvec{\omega }}_{0}^{\mathrm{b} }=(0,2\pi ,0)\) rad/s and \(\mathbf {v}_{0}^{\mathrm{b}}={\dot{\mathbf {r}}} =\mathbf { p}\times {\omega }_{0}^{\mathrm{b}}+(0,1,0)\) m/s. The numerical results are the same as in Fig. 3 for the revolute joint. This is clear since the constraints define the direct product subgroup \( SO\left( 2\right) \times {\mathbb {R}}\) of \(SE\left( 3\right) \).
5.4 Planar joint
A 3 degree-of-freedom (DOF) ’planar joint’ restricts the body to move on a plane, i.e. it can perform translations in the plane and independent rotations about an axis normal to the plane. Assigning the joint and RFR as in Fig. 4a, the body can move in the 1-2-plane of the IFR. The three geometric constraints are hence the third equation of (25) and the equations (26, 27). Accordingly, in terms of body-fixed twists, the acceleration constraints are the third equation of (23) together with (28, 29). In terms of mixed velocities, these are the third equation in (24) together with (28, 29).
The submanifold H, defined by the planar joint constraints, consists of all configurations the body can attain when it can be freely located in the plane. As explained in Remark 1 the update steps of both formulations shall lead to exact constraint satisfaction. This is confirmed by the simulation results. The constraints are satisfied regardless of the integration step size (therefore not shown here).
5.5 Hook joint
A hook joint allows for successive rotations about two (usually perpendicular) rotation axes. With the joint assignment in Fig. 4b the condition is that the 3-axis of the IFR and 2-axis of the body-fixed RFR are perpendicular, and these two define the rotation axes. The corresponding four geometric constraints are the three equations (25) and \(R_{23}=0\). The acceleration constraints are omitted for brevity. The EOM were integrated with initial velocity \({\varvec{\omega }} _{0}^{\mathrm{b}}=(0,\pi ,0.2\pi )\)rad/s.
The hook joint defines a 2-dimensional submanifold H of the subgroup of rotations about the IFR origin. There is no 2-dimensional subgroup of \( SO\left( 3\right) \). Thus H cannot be a subgroup of \(SE\left( 3\right) \) nor of \(SO\left( 3\right) \times {\mathbb {R}}^{3}\).
Figure 5 shows the expected dependence of the rotation error \(\varepsilon _{r}:=\left| R_{23}\right| \) on the step size. This dependence is also observed for the position constraints when using the \(SO\left( 3\right) \times {\mathbb {R}}^{3}\) formulation (Fig. 6a). The \(SE\left( 3\right) \) update does, however, exactly satisfy position constraint (Fig. 6b). This can be explained by noting that points on the body are constrained to move on spheres centered at the intersection of the joint axes. In \(SE\left( 3\right) \) the completion group of the constrained rigid body velocities, i.e. the smallest subgroup containing H, is \(K=SO\left( 3\right) \). The orbit \(O_{x}=\{Cx|C\in K\}\) of a point \(x\in E^{3}\) on the body by K is a sphere centered at the joint center. Hence, the position constraints are respected.
5.6 Pin-in-slot joint
The pin-in-slot joint is a 2 DOF higher kinematic pair. According to the RFR in Fig. 4c the four geometric constraints are the second and third equation of (25) together with the equations (26, 27). The acceleration constraints for the body-fixed twist formulation are the second and third equation of (23) and the constraints (28, 29). In mixed velocity formulation, the acceleration constraints are the second and third equation of (24) together with the two equations (28, 29).
The joint does not define a motion subgroup, so that the \(SE\left( 3\right) \) update cannot respect the constraints. This also holds for \(SO\left( 3\right) \times {\mathbb {R}}^{3}\) if a general RFR is used. This is confirmed in Fig. 7 where numerical results are shown for the initial velocities \(\varvec{{\omega }}_{0}^{\mathrm{b}}=(0,\pi ,0.2\pi )\) rad/s and \(\mathbf {v}_{0}^{\mathrm{b}}=\mathbf {p}\times \varvec{{\omega }}_{0}^{\mathrm{b }}+(1,0,0)~\hbox {m}\)/s.
In order to clarify the significance of RFR for the \(SO\left( 3\right) \times {\mathbb {R}}^{3}\) formulation, consider the case where the translation axis defined by the joint passes through the RFR at the COM, i.e. \(\mathbf {p} =\mathbf {0}\). Then the motions in fact define the subgroup \(SO_{0} \left( 2\right) \times {\mathbb {R}}\) of \(SO\left( 3\right) \times {\mathbb {R}} ^{3}\), and the constraints are exactly satisfied. The trivial numerical results are omitted.
6 Conclusion
Constrained MBS comprising rigid bodies are frequently modeled by a system of Newton-Euler equations subjected to the constraints due to geometric interconnections. This is commonly treated as index 1 DAE system, and numerically solved using ODE integration schemes. The classical MBS formulation uses decoupled rotation and translation parameters. The underlying geometric model is that of \(SO\left( 3\right) \times {\mathbb {R}} ^{3}\), although rigid body motions form the Lie group \(SE\left( 3\right) \). A major problem when integrating the index 1 formulation is the violation of constraints. It has been observed, however, that the c-space Lie group significantly affects the constraint satisfaction. This problem was here addressed for the single rigid body constrained to an inertial system. For the practically important case of lower pair joints, it is concluded that the constraints are exactly satisfied (independently of the integration scheme and accuracy) if \(SE\left( 3\right) \) is used as c-space Lie group. The practical implication of using \(SE\left( 3\right) \) as c-space is the use of screw coordinates \({\mathbf {X}}=\left( \varvec{{\xi }},\varvec{{\eta }} \right) \) as parameters, and coefficient matrices of the form (15) in the kinematic equations (4b) of the model. Although already thoroughly investigated and published [6, 8, 9, 21], the use of screw coordinates for MBS modeling has not yet found due attention.
The presented result is valid for the single rigid body constrained to an inertial frame. It cannot be immediately carried over to MBS. This shall be the topic of further research.
References
Angeles, J.: Fundamentals of robotic mechanical systems, 2nd edn. Springer, Berlin (2003)
Ascher, U.M., Chin, H., Petzold, L.R., Reich, S.: Stabilization of constrained mechanical systems with DAES and invariant manifolds. Mech. Struct. Mach. 23(2), 135–157 (1995)
Baumgarte, J.: Stabilization of constraints and integrals of motion in dynamical systems. Comput. Methods Appl. Mech. Eng. 1, 1–16 (1972)
Blajer, W.: Methods for constraint violation suppression in the numerical simulation of constrained multibody systems - A comparative study. Comput. Methods Appl. Mech. Eng. 200, 1568–1576 (2011)
Bobenko, A.I., Suris, Y.B.: Discrete time lagrangian mechanics on lie groups, with an application to the lagrange top. Commun. Math. Phys. 204, 147–188 (1999)
Borri, M., Bottasso, C.L.: An intrinsic beam model based on a helicoidal approximation—part I: formulation. Int. J. Numer. Methods Eng. 37, 2267–2289 (1994)
Borri, M., Bottasso, C.L., Trainelli, L.: A novel momentum-preserving/energy-decaying algorithm for finite-element multibody procedures. Comput. Assist. Mech. Eng. Sci. 9(3), 315–340 (2002)
Bottasso, C.L., Borri, M.: Integrating finite rotations. Comput. Methods Appl. Mech. Eng. 164, 307–331 (1998)
Bottasso, C.L., Borri, M., Trainelli, L.: Geometric invariance. Computat. Mech. 29(2), 163–169 (2002)
Bottema, O., Roth, B.: Theoretical kinematics. Dover Publications, New York (1990)
Brauchli, H.: Mass-orthogonal formulation of equations of motion for multibody systems. Zeitschrift für Angewandte Mathematik und Physik (ZAMP) 42(2), 169–182 (1991)
Brüls, O., Cardona, A.: On the use of lie group time integrators in multibody dynamics. J. Comput. Nonlinear Dyn. 5(3), 031002 (2010)
Brüls, O., Cardona, A., Arnold, M.: Lie group generalized-alpha time integration of constrained flexible multibody systems. Mech. Mach. Theory 48, 121–137 (2012)
Celledoni, E., Owren, B.: Lie group methods for rigid body dynamics and time integration on manifolds. Comput. Methods Appl. Mech. Eng. 19, 421–438 (1999)
Engø, K., Marthinsen, A.: Modeling and solution of some mechanical problems on lie groups. Multibody Syst. Dyn. 2, 71–88 (1998)
Engø, K., Marthinsen, A.: A note on the numerical solution of the heavy top equations. Multibody Syst. Dyn. 5, 387–397 (2001)
Hairer, E., Lubich, C., Wanner, G.: Geometric numerical integration. Springer, Berlin (2006)
Hervé, J.M.: Intrinsic formulation of problems of geometry and kinematics of mechanisms. Mech. Mach. Theory 17(3), 179–184 (1982)
Iserles, A., Munthe-Kaas, H.Z.: Lie-group methods. Acta Numerica. 9, 215–365 (2000)
Khan, I.M., Anderson, K.S.: Performance investigation and constraint stabilization approach for the orthogonal complement-based divide-and-conquer algorithm. Mech. Mach. Theory 67, 111–121 (2013)
Liu, Y.: Screw-matrix method in dynamics of multibody systems. Acta Mech. Sin. 4(2), 165–174 (1988)
Marsden, J., Ratiu, T.S.: Introduction to mechanics and symmetry: a basic exposition of classical mechanical systems. Springer, New York (2003)
Müller, A., Terze, Z.: On the choice of configuration space for numerical Lie group integration of constrained rigid body systems. Int. J. Comput. Appl. Math. 262, 3–13 (2014)
Munthe-Kaas, H.: Runge Kutta methods on Lie groups. BIT 38(1), 92–111 (1998)
Munthe-Kaas, H.: High order Runge-Kutta methods on manifolds. Appl. Numer. Math. 29, 115–127 (1999)
Munthe-Kaas, H., Owren, B.: Computations in a free Lie algebra. Phil. Trans. R. Soc. A 357, 957–981 (1999)
Owren, B., Marthinsen, A.: Runge-Kutta methods adapted to manifolds and based in rigid frames. BIT 39, 116–142 (1999)
Park, J., Chung, W.K.: Geometric integration on Euclidean group with application to articulated multibody systems. IEEE Trans. Rob. Automat. 21(5), 850–863 (2005)
Schiehlen, W.: Multibody system dynamics: roots and perspectives. Multibody Syst. Dyn. 1(2), 149–188 (1997)
Selig, J.: Geometric fundamentals of robotics (monographs in computer science series). Springer-Verlag, New York (2005)
Shabana, A.A.: Dynamics of multibody systems, 4th edn. Springer, New York (2013)
Terze, Z., Naudet, J.: Geometric properties of projective constraint violation stabilization method for generally constrained multibody systems on manifolds. Multibody Syst. Dynam. 20, 85–106 (2008)
Acknowledgments
The author acknowledges that this work has been partially supported by the Austrian COMET-K2 program of the Linz Center of Mechatronics (LCM)
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Rolf Stenberg.
Rights and permissions
About this article
Cite this article
Müller, A. A note on the motion representation and configuration update in time stepping schemes for the constrained rigid body. Bit Numer Math 56, 995–1015 (2016). https://doi.org/10.1007/s10543-015-0580-y
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10543-015-0580-y
Keywords
- Constrained rigid body
- Numerical time integration
- Multibody dynamics
- Absolute coordinate formulation
- Rigid body kinematics
- Screws
- Lie groups
- Isotropy groups