Ma · Mathematics

Understanding Euler’s Rotation Theorem

Published By the 9to5Science editorial team

At a glance

  1. 1. Check the rotation

    Represent the motion by an orthogonal 3×3 matrix with determinant +1.

  2. 2. Find the axis

    Solve for a nonzero vector that the matrix leaves unchanged; it is the rotation axis.

  3. 3. Find the angle

    Use the matrix trace to calculate the principal rotation angle.

  4. 4. Check the assumptions

    The theorem applies to rotations about a fixed point, not arbitrary motions that include translation.

A rotation in three dimensions can look complicated when described by its effect on all points in space. Euler’s rotation theorem reduces the description to two pieces: one axis and one angle. The theorem applies when a point is fixed, as when you turn a rigid object around a pivot.

The key matrix fact is that every 3×3 rotation matrix has an eigenvector with eigenvalue 1. The direction of that eigenvector is the rotation axis: points on the axis do not move, while points off it rotate around the axis.

What the theorem says

A proper rotation is a rigid rotation that preserves lengths, angles, and orientation. If the center of rotation is the origin, it can be represented by a real matrix RR satisfying

RTR=I,det⁡(R)=1.R^{T}R=I, \qquad \det(R)=1.

The first condition says that RR is orthogonal, so it preserves lengths and angles. The determinant condition distinguishes rotations from reflections. Euler’s rotation theorem says that every such 3D rotation has a unit vector uu with

Ru=u.Ru=u.

Every point on the line through the origin in direction uu stays fixed. The transformation on the plane perpendicular to uu is an ordinary two-dimensional rotation, which gives the rotation angle.

If the fixed point is not the origin, shift the coordinate system so that it is. In the original coordinates, the axis is a line through that fixed point.

Why a fixed axis must exist

An orthogonal matrix preserves lengths, so its eigenvalues have absolute value 1. A real matrix of odd size has at least one real eigenvalue; for an orthogonal matrix, any real eigenvalue must be either +1+1 or −1-1.

The other two eigenvalues are either both real or a complex-conjugate pair. A complex-conjugate pair has product 1. Since the determinant is the product of all three eigenvalues and equals 1, the remaining real eigenvalue must be +1+1. If all three eigenvalues are real, they are each +1+1 or −1-1; a product of 1 in dimension three also requires at least one +1+1 eigenvalue. Thus there is a nonzero vector uu such that Ru=uRu=u.

The plane perpendicular to uu is preserved by RR. On that plane, the transformation is an orientation-preserving orthogonal transformation in two dimensions, hence a planar rotation. This establishes the axis-and-angle description.

How to find the axis and angle

Given a rotation matrix RR:

  1. Find a nonzero solution of (R−I)u=0(R-I)u=0. Normalize it if you want a unit axis vector.
  2. Calculate the angle using the trace (the sum of the diagonal entries):
cos⁡θ=tr⁡(R)−12.\cos\theta=\frac{\operatorname{tr}(R)-1}{2}.

For the principal angle 0≤θ≤π0\leq\theta\leq\pi, take

θ=arccos⁡(tr⁡(R)−12).\theta=\arccos\left(\frac{\operatorname{tr}(R)-1}{2}\right).

This formula follows because the eigenvalues of a rotation about an axis are 11, eiθe^{i\theta}, and e−iθe^{-i\theta}. Their sum is 1+2cos⁡θ1+2\cos\theta, which is the trace. For angles other than 00 and π\pi, a signed axis can also be recovered from the antisymmetric entries of RR:

u=12sin⁡θ(R32−R23R13−R31R21−R12).u=\frac{1}{2\sin\theta}\begin{pmatrix}R_{32}-R_{23}\\R_{13}-R_{31}\\R_{21}-R_{12}\end{pmatrix}.

This last formula assumes the usual right-handed, active-rotation convention. At angle π\pi, its denominator is zero, so find the axis from (R−I)u=0(R-I)u=0 instead.

Worked example

Consider the matrix

R=(001100010).R=\begin{pmatrix}0&0&1\\1&0&0\\0&1&0\end{pmatrix}.

It sends (x,y,z)(x,y,z) to (z,x,y)(z,x,y). To find its fixed direction, solve R(x,y,z)=(x,y,z)R(x,y,z)=(x,y,z). This gives z=xz=x, x=yx=y, and y=zy=z, so the fixed vectors are multiples of (1,1,1)(1,1,1). A unit axis vector is therefore

u=13(1,1,1).u=\frac{1}{\sqrt{3}}(1,1,1).

The trace is zero, so

cos⁡θ=0−12=−12,θ=2π3=120∘.\cos\theta=\frac{0-1}{2}=-\frac{1}{2}, \qquad \theta=\frac{2\pi}{3}=120^\circ.

Thus RR is a rotation by 120 degrees about the line in direction (1,1,1)(1,1,1). The line is fixed, and the other points rotate around it.

Common mistakes and limits

  • Confusing the theorem with Euler angles: Euler angles are one way to parameterize rotations using a sequence of rotations about chosen axes. Euler’s rotation theorem says a single axis and angle suffice for any one proper 3D rotation.
  • Forgetting the determinant condition: An orthogonal matrix with determinant −1-1 can include a reflection and need not be a pure rotation with a fixed axis.
  • Assuming every rigid motion has a fixed point: The theorem concerns rotations about a fixed point. A general rigid motion may also translate space. In three dimensions, such a motion is described by a rotation combined with a translation along the rotation axis (a screw motion); it is not necessarily a rotation about a fixed point.
  • Treating the axis direction as unique in every case: For the identity rotation, the angle is zero and any axis can be chosen. For a half-turn, the axis line is determined, but choosing either direction along it does not change the rotation.

Relation to Euler’s formula for polyhedra

Euler’s rotation theorem is different from Euler’s formula for planar graphs and polyhedra, often written V−E+F=2V-E+F=2 for a convex polyhedron. The shared name refers to different results; the axis-and-angle theorem is a fact about rotations in three-dimensional space.

References

  1. Classical Mechanics, 3rd edition — Herbert Goldstein, Charles Poole, and John Safko
  2. Linear Algebra Done Right — Sheldon Axler

Spotted an error? Send a correction. Read how we write and check articles in our editorial policy.