Equivalent inertia at spherical joint in multibody tree Consider a tree system of rigid bodies and spherical joints. Starting at an outermost body, I'd like to calculate its equivalent mass (which I'm guessing would be an inertial tensor or something) at it's incoming joint so then I can analyze its parent body. Then I want to calculate that limb's equivalent mass (including the one we just calculated at its outgoing joint for the child limb) at its incoming joint and continue up the parent chain.
How do I calculate that equivalent mass/inertia at the joint and use it to analyze the parent body?
 A: The Recursive Articulated Method is I think what you are asking. The result is the spatial 6×6 inertia matrix at each body, considering only the child bodies attached to it. This matrix relates linear and angular velocities to linear and angular momentum. Thus, it can be used to relate forces and accelerations, and more importantly, find the special geometries that would result in pure translation of the body (center of mass), or pure rotation about an axis (percussion axis).


*

*Single Rigid Body - Consider a single rigid body of scalar mass $m$, 3×1 center of mass location vector $\boldsymbol{c}$ and 3×3 mass moment of inertia about the center of mass $\boldsymbol{I}_C$.


*

*The 6×6 spatial inertia matrix is composed as $$ \mathbf{I} = \left[ \begin{array}{c|c} m \mathbf{1} & -m\, \boldsymbol{c}\times \cr \hline m\, \boldsymbol{c}\times & \boldsymbol{I}_C - m\, \boldsymbol{c}\times\boldsymbol{c}\times \end{array} \right] $$ where $\mathbf{c}\times = \pmatrix{ 0 & -z & y \\ z & 0 & -x \\ -y &x & 0}$ is the 3×3 cross product operator matrix.

*The velocity momentum equation for a rigid body as measured at the origin is as follows. 


*

*The 6×1 spatial velocity vector is defined from the rotational velocity $\boldsymbol{\omega}$ and the linear velocity of the center of mass $\boldsymbol{v}_C$ as $$\mathbf{v} = \left[ \matrix{ \boldsymbol{v}_C + \boldsymbol{c} \times \boldsymbol{\omega} \\ \boldsymbol{\omega }} \right]$$

*Similarly, the 6×1 spatial momentum vector is defined from the linearr momentum $\boldsymbol{p}$ and the angular momentum at the center of mass $\boldsymbol{L}_C$ as $$\mathbf{\ell} = \left[ \matrix{\boldsymbol{p} \\ \boldsymbol{L}_C + \boldsymbol{c} \times \boldsymbol{p} } \right]$$

*Combined they are $$ \mathbf{\ell} = \mathbf{I} \mathbf{v} $$ 
or
$$\begin{bmatrix} \boldsymbol{p} \cr \boldsymbol{L}_C + \boldsymbol{c} \times \boldsymbol{p} \end{bmatrix} = \begin{bmatrix} m \mathbf{1} & -m\boldsymbol{c}\times \cr m \boldsymbol{c}\times & \boldsymbol{I}_C - m \boldsymbol{c}\times\boldsymbol{c}\times \end{bmatrix}  \begin{bmatrix} \boldsymbol{v}_C+\boldsymbol{c} \times \boldsymbol{\omega} \cr \boldsymbol{\omega} \end{bmatrix} $$ note that if you work out the above by component you end up with $\boldsymbol{p} =m \boldsymbol{v}_C$ and $\boldsymbol{L}_C = \boldsymbol{I}_C \boldsymbol{\omega}\;\;{\color{green}\checkmark}$.


*You can find the center of mass from $\mathbf{I}$ by solving any of the following special situations
$$\begin{aligned} \left[ \matrix{\boldsymbol{p} \\ \boldsymbol{c} \times \boldsymbol{p} } \right] & = \mathbf{I} \left[ \matrix{ \boldsymbol{v}_C \\ 0 } \right] & &\mbox{or} & \left[ \matrix{0 \\ \boldsymbol{L}_C } \right] & = \mathbf{I} \left[ \matrix{ \boldsymbol{c} \times \boldsymbol{\omega} \\ \boldsymbol{\omega} } \right] \end{aligned}$$ 


*Open Tree Structure of Bodies - where for each body $i$ there is one parent $j$ and zero to many children bodies $k$. Each joint has a sigle degree of freedom, and to model spherical connection you chain together 3 joints.


*

*The velocity kinematics define the spatial joint vector $\mathbf{s}_i$ describes the relative rotation axis between bodies $i$ and their parent $j$
$$ \mathbf{v}_i = \mathbf{v}_j + \mathbf{s}_i \dot{q}_i $$ with $\dot{q}_i$ the joint speed.

*The momentum equation describes how the inertia of subsequent bodies affects the momentum of the current body
$$ \mathbf{\ell}_i = \mathbf{I}_i \mathbf{v}_i + \sum_k \mathbf{\ell}_k $$


*Recursive Articulated Inertia - for each body is defined as


*

*For the last (leaf) bodies in a tree, the articulated inertia equals the spatial inertia $$ \mathbf{A}_n = \mathbf{I}_n $$

*Moving towards the root, the articulated inertia for each body is $$ \mathbf{A}_i = \mathbf{I}_i + \sum_k \left( \mathbf{A}_k - \mathbf{A}_k \mathbf{s}_k \left( \mathbf{s}_k^\intercal \mathbf{A}_k \mathbf{s}_k\right)^{-1} \mathbf{s}_k^\intercal \mathbf{A}_k \right) $$



This last equation was made famous by Roy Featherstone, and it is outlined in the linked presentation on this slide.



*Effective Mass - The effective mass along a particular axis (line of action) is calculated using the following expresion
$$ m_{\rm eff} = \left( \mathbf{n}^\intercal \mathbf{A}^{-1} \mathbf{n} \right)^{-1} $$ where $\mathbf{n} = \left[ \matrix{ \boldsymbol{e} \\ \boldsymbol{r} \times \boldsymbol{e} } \right]$ is the spatial line with direction vector $\boldsymbol{e}$ and going through a point $\boldsymbol{r}$.

*Contact conditions - Two bodies with articulated inertias $\mathbf{A}_1$ and $\mathbf{A}_2$ are in contact along a line $\mathbf{n}$. The reduced mass of the contacting bodies is
$$ m_{\rm eff} = \left( \mathbf{n}^\intercal \left( \mathbf{A}_1^{-1} + \mathbf{A}_2^{-1} \right) \mathbf{n} \right)^{-1} $$
This reduced mass can be used in contacts (impulse calculations) such as the impulse magnitude is $ J = (1+\epsilon) m_{\rm eff}\, v_{\rm impact} $. Here $\epsilon$ is the coeffcient of restitution and $v_{\rm impact} = \mathbf{n}^\intercal (\mathbf{v}_1-\mathbf{v}_2)$ is the relative speed between two bodies along the line $\mathbf{n}$. Finally the impulse is applied in equal and opposite terms to the bodies with 
$$\begin{aligned} \Delta \mathbf{v}_1 & = -\mathbf{A}_1^{-1} \mathbf{n}J & \Delta \mathbf{v}_2 & = +\mathbf{A}_2^{-1} \mathbf{n}J \end{aligned} $$
Addition reference Practical Physics for Articulated Characters
