24.7: Diagonalizing the Inertia Tensor
( \newcommand{\kernel}{\mathrm{null}\,}\)
The inertial tensor has the form of a real symmetric matrix. By an appropriate choice of axes (x1,x2,x3) any such tensor can be put in diagonal form, so that
Trot =12(I1Ω21+I2Ω22+I3Ω23)
These axes, with respect to which the inertia tensor is diagonal, are called the principal axes of inertia, the moments about them I1,I2,I3 the principal moments of inertia.
If you’re already familiar with the routine for diagonalizing a real symmetric matrix, you can skip this review.
The diagonalization of the tensor/matrix proceeds as follows.
First, find the eigenvalues λi and corresponding eigenvectors ei of the inertial tensor I :
Iei=λiei(i=1,2,3, not summed )
(The λi turn out to be the principal moments Ii, but we'll leave them as λi for now, we need first to establish that they’re real.)
Now since I is real and symmetric, IT=I the eigenvalues are real. To prove this, take the equation for e1 above and premultiply by the row vector e∗T1, the complex conjugate transpose:
e∗T1Ie1=λ1e∗T1e1
The left hand side is a real number: this can be established by taking its complex conjugate. The fact that the tensor is real and symmetric is crucial!
(e∗1iIije1j)∗=e1iI∗ije∗1j=e1iIjie∗1j=e∗1jIjie1i
And since these are dummy suffixes, we can swap the i ’s and j ’s to establish that this number is identical to its complex conjugate, hence it’s real. Clearly, e∗T1e1 is real and positive, so the eigenvalues are real.
(Note: a real symmetric matrix does not necessarily have positive roots: for example (0110)
Taking the eigenvalues to be distinct (the degenerate case is easy to deal with) the eigenvectors are orthogonal, by the standard proof, for this matrix left eigenvectors (rows) have the same eigenvalues as their transpose, so
eT2Ie1=λ2eT2e1=λ1eT2e1
and eT2e1=0.
The diagonalizing matrix is made up of these eigenvectors (assumed normalized):
R=(eT1eT2eT3)
a column of row vectors.
To check that this is indeed a rotation vector, from one orthogonal set of axes to another, notice first that its transpose RT=(e1e2e3) is its inverse (as required for a rotation), since the eigenvectors form an orthonormal set.
Now apply this R to an arbitrary vector:
x′=Rx=(eT1eT2eT3)x=(eT1xeT2xeT3x)
In vector language, these elements are just →e1⋅→x, etc., so x′1=→e1⋅→x, the primed components are just the components of →x along the eigenvector axes, so the operator R gives the vector components relative to these axes, meaning it has rotated the coordinate system to one with the principal axes of the body are now the x1,x2,x3 axes.
We can confirm this by applying the rotation to the inertia tensor itself:
I′=RTRT=(eT1eT2eT3)I(e1e2e3)=(eT1eT2eT3)(λ1e1λ2e2λ3e3)=(λ1000λ2000λ3)
Let’s examine the contribution of one particle to the inertia tensor:
I1=m[(xTx)1−xxT]
Note that x here represents the column vector of the particle coordinates, in other words, it’s just →r! And, watch out for the inertia tensor I and the unit tensor 1.
They transform as x′=Rx, note that this agrees with I′=RIRT. Since under rotation the length of a vector is invariant x′Tx′=xTx, and RxxTRT=x′x′T it is evident that in the rotated frame (the eigenvector frame) the single particle contributes to the diagonal elements
m[(x22+x23),(x23+x21),(x21+x22)]
. We’ve dropped the primes, since we’ll be working in this natural frame from now on.