Inertia tensor under affine change of basis

This post provides more concise derivations of the inertia tensor coordinate transformations than the derivations given by Jim Branson in the notes on transforming the inertia tensor and on the Parallel axis theorem.

Inertia tensor and kinetic energy

The coordinates of the inertia tensor in a Cartesian coordinate system can be computed as follows

where summation over repeating indices is assumed. Points constituting the rigid body are labeled by $\alpha$. Vector $r_\alpha$ with coordinates $(r_{\alpha x}, r_{\alpha y}, r_{\alpha z})$ determines the location of each point of the rigid body.

In a basis located at the center of mass (COM) of a rigid body, the kinetic energy is given by

where $\omega_i$ are the coordinates of the angular velocity.

Basis rotation

Rotation of a COM coordinate frame does not change kinetic energy. Since coordinates of the angular velocity $\omega_i$ transform as

under rotation of the basis $R$ (see Change of coordinates of a vector), the kinetic energy can be written as

allowing one to identify the coordinates of the inertia tensor in the primed coordinate system

In matrix notation, $I’ = R^T I R$. For the old coordinates, we obtain

$$ I = R I' R^T, $$

which is the same formula as for Transformation of linear operators.

Parallel axis theorem

Assume now that the initial basis is not located at the COM but aligned with the COM coordinate frame. Coordinates of a point $\alpha$ in the old system can be calculated as $r_{\alpha i} = r’_{\alpha i} + b_i$, where $b$ is the translation vector. Substituting it into the formula for the inertia tensor, and using the defining property of the COM,

we find

where $M = m_\alpha 1_\alpha$ is the mass of the rigid body. In matrix notation,

$$ I = I' + M (E b^Tb - bb^T), $$

where $E$ denotes the identity matrix.

Affine transformations

Given coordinates of the inertia tensor in the COM frame (with axes not necessarily aligned with the principal axes), one can find its coordinates in any other frame by combining rotation and translation,

$$ I = R I' R^T + M (E b^T b - b b^T). $$

Importantly, $I’$ should be given in the coordinate system located at the center of mass — otherwise the Parallel axis theorem does not apply.

Different conventions

The inertia tensor is often given by the entries $I_{xx}, I_{xy}, \dots, I_{zz}$ that fill the matrix in the following way:

Elementwise identification

is required before applying the transformation formulas.

Inertia of composite bodies

It is easy to find the inertia tensor of a composite body if inertial properties of the components are known. For example, to find the inertia tensor of a rigid body consisting of two cylinders inside of each other, it suffices to know the inertial properties of each cylinder separately. Indeed, inertia tensors simply add up in the basis located at the joint center of mass.

Let’s see how it works in more detail on a two-body problem.

  1. Fix a basis $B$ in which you want to express the joint inertia tensor. Let $c_{1i}$ be the coordinates of the COM of the first body in the basis $B$, and $c_{2i}$ — the coordinates of the COM of the second body. Assume the inertia tensor of the first body $I^\prime_1$ in the basis $B_1$ located at $c_1$ is known. The same goes for the inertia tensor $I^\prime_2$ of the second body in the basis $B_2$ located at $c_2$. Let $R_1$ and $R_2$ be the respective rotation matrices whose columns contain the basis vectors of $B_1$ and $B_2$ in basis $B$.
  2. Find the joint center of mass $c = (M_1 c_1 + M_2 c_2) / (M_1 + M_2)$.
  3. Compute the inertia tensors $I^c_1$ and $I^c_2$ of the bodies in the basis located at $c$ and aligned with $B$ using the affine transformation formula with $b_1 = c_1 - c$ and $b_2 = c_2 - c$.
  4. Add the inertia tensors in the joint COM system $I^c = I^c_1 + I^c_2$.
  5. Apply the Parallel axis theorem with $b = c$ to find $I$ in the basis $B$.