This is part 1 of a multipart series in which I will be discussing the basics of rigid body dynamics. For simplicity I will start out with the frictionless case and the geometry used will only consist of spheres. Constraints considered will only be of the contact variety.
In part 1 I will go over a very high level overview of the steps involved with solving the frictionless problem along with some of the math behind the problem.
The Rigid Body Dynamics Problem
\[\begin{bmatrix}
M & D\\
D^T & 0
\end{bmatrix}*
\begin{bmatrix}
q \\
\lambda
\end{bmatrix}-
\begin{bmatrix}
f \\
b
\end{bmatrix}=
\begin{bmatrix}
0 \\
c
\end{bmatrix}\]
By taking the Shur Compliment of the system of equations the problem can be posed as a minimization problem in the form:
\[min \ q(\lambda)=\frac{1}{2} \lambda^TN\lambda+r^T\lambda \\
N=D^TM^{-1}D \\
r=b+D^TM^{-1}f\]
Subject to the following constraints
\[\lambda \geq 0 , c \geq 0 , \lambda c=0\]
This quadratic optimization problem can then be solved in a straightforward manner.
\[N\lambda=r\]
Complementarity Condition
The complementarity condition states that either the lagrange multiplier is greater than zero (constraint is not satisfied) or the gap between two bodies is zero and therefore there is no reaction force. If the gap becomes 0 a contact has occurred and a reaction force will be applied. The reaction force results from the nonzero lagrange multiplier.
\[ 0 \leq D^{(l)T}M^{-1}D^{(l)} \lambda^{(l+1)} + k^{(l)} \perp \lambda^{(l+1)} \geq 0 \]
Details
(Work in Progress)
Index of Symbols