1. What you are looking at
The object is a T‑handle, the same shape used in the famous ISS demonstration. It floats in space with no external torque — nothing is pushing or pulling on it. Under those conditions two quantities are exactly conserved:
- the angular momentum vector $\mathbf{L}$ (constant in magnitude and direction in space — the yellow arrow never moves), and
- the rotational kinetic energy $T$.
The angular velocity $\boldsymbol{\omega}$ (the cyan arrow) is not conserved. It is free to wander, and on the intermediate axis it wanders dramatically. That wandering is the flip.
2. The three principal axes
Every rigid body has three special principal axes with three moments of inertia $I_1 \le I_2 \le I_3$. For the T‑handle:
- Axis 1 — smallest inertia (spinning like a drill along the stem): stable
- Axis 3 — largest inertia (spinning like a propeller): stable
- Axis 2 — intermediate inertia: unstable
Spin it neatly about axis 1 or 3 and it keeps spinning neatly forever. Spin it about the intermediate axis 2 and the tiniest imperfection grows until the handle tumbles end over end — then briefly settles, then tumbles again, periodically. This is the tennis racket theorem, also called the intermediate axis theorem.
3. Why it happens — Euler's equations
In a reference frame attached to the body, torque-free rotation obeys Euler's equations:
$$ \begin{aligned} I_1\,\dot{\omega}_1 &= (I_2 - I_3)\,\omega_2\,\omega_3 \\ I_2\,\dot{\omega}_2 &= (I_3 - I_1)\,\omega_3\,\omega_1 \\ I_3\,\dot{\omega}_3 &= (I_1 - I_2)\,\omega_1\,\omega_2 \end{aligned} $$These three coupled equations are exactly what the simulation integrates in real time. The stability follows from a small-perturbation analysis. Suppose the body spins mostly about one axis with rate $\Omega$ plus tiny wobbles on the other two.
Spinning about axis 2 (intermediate)
Let $\omega_2 \approx \Omega$ (roughly constant) and treat $\omega_1,\omega_3$ as small. Keeping only first-order terms, the first and third Euler equations combine into
$$ \ddot{\omega}_1 = \underbrace{\frac{(I_3 - I_2)(I_2 - I_1)}{I_1 I_3}}_{>\,0}\,\Omega^2\,\omega_1 . $$Both factors $I_3-I_2$ and $I_2-I_1$ are positive (that is exactly what it means for $I_2$ to be the middle value), so the whole coefficient is positive and the solution is $\omega_1 \sim e^{+\lambda t}$: the wobble grows exponentially. That runaway growth is the instability. Once the wobble is no longer small the full nonlinear equations take over, energy sloshes to the other axes, the body flips, and conservation of angular momentum brings it back — so the flips repeat periodically.
Spinning about axis 1 or axis 3 (extreme)
Repeat the same analysis about the smallest or largest axis and the coefficient comes out negative:
$$ \ddot{\omega} = -\,\lambda^2\,\omega \quad\Rightarrow\quad \omega \sim \cos(\lambda t). $$The wobble merely oscillates with a small bounded amplitude — it never grows. That is why those two spins look rock-steady in the viewport.
4. The geometric picture — momentum vs. energy
There is a beautiful way to see the whole thing at once. In the body frame, conservation of the magnitude of angular momentum and of energy pins $\boldsymbol{\omega}$ onto the intersection of two ellipsoids:
$$ \underbrace{L^2 = I_1^2\omega_1^2 + I_2^2\omega_2^2 + I_3^2\omega_3^2}_{\text{momentum sphere}}, \qquad \underbrace{2T = I_1\omega_1^2 + I_2\omega_2^2 + I_3\omega_3^2}_{\text{energy ellipsoid}}. $$These intersection curves are called polhodes (the cyan trail in the viewport). Around axes 1 and 3 the polhodes are tiny closed loops — a nudged $\boldsymbol{\omega}$ just circles the axis. Around axis 2 the polhodes are big separatrix curves that swing all the way to the opposite pole. There is no small orbit to trap $\boldsymbol{\omega}$ near the intermediate axis, so it makes the full journey: a flip.
Meanwhile in space the yellow $\mathbf{L}$ arrow is nailed in place. It is the body that reorients around it. When you see the T‑handle flip, angular momentum has not changed at all — the object has simply turned itself around the fixed momentum vector.
5. Try this
- Start on Axis 2 with a tiny wobble (2%) and watch the periodic flips. Notice ‖L‖ and T never change.
- Switch to Axis 1 or Axis 3 — the wobble stays flat no matter how long you wait.
- Make $I_2$ almost equal to $I_1$ or $I_3$ using the sliders. As the intermediate axis stops being "in the middle", the flips slow down and eventually stop.
- Increase the wobble on axis 2 to see the flips arrive sooner.