Presets
Playback
Top
Mass, disc radius and the height of the centre of mass above the tip.
Spin and start
Spin rate, initial tilt and initial precession.
Environment
Gravity, spin friction and playback speed.
Layers
Model checks
The science
The model: a heavy symmetric top on a fixed tip
The top touches the table at a single point that does not move. Its orientation is described by three Euler angles: the tilt theta of the symmetry axis from the vertical, the precession angle phi of the axis around the vertical, and the spin psi about the axis. With the moment of inertia I3 about the axis and I1 about a perpendicular axis through the tip, the Lagrangian is
L = 1/2 I1 (theta'^2 + phi'^2 sin^2 theta) + 1/2 I3 (psi' + phi' cos theta)^2 - m g l cos theta, where l is the height of the centre of mass above the tip.
Two conserved momenta and one energy
Because phi and psi do not appear in L, their momenta are constants: p_psi = I3 w3 (w3 is the spin component of the angular velocity) and p_phi = I1 phi' sin^2 theta + I3 w3 cos theta. The precession rate follows from them, phi' = (p_phi - p_psi cos theta) / (I1 sin^2 theta), and the tilt obeys
I1 theta'' = I1 phi'^2 sin theta cos theta - p_psi phi' sin theta + m g l sin theta. The page integrates exactly this with a 4th-order Runge-Kutta step of 0.5 ms.
Effective potential (graph 4)
Eliminating phi' gives a one-dimensional problem 1/2 I1 theta'^2 + U_eff(theta) = E' with U_eff = (p_phi - p_psi cos theta)^2 / (2 I1 sin^2 theta) + m g l cos theta. The tilt oscillates between the two turning points where the energy line crosses the curve: that oscillation is nutation.
Fast top and steady precession
Steady precession at a fixed tilt needs I1 cos(theta) phi'^2 - I3 w3 phi' + m g l = 0. For a fast spin the slow root is Omega = m g l / (I3 w3): faster spin, slower precession. The nutation frequency of a fast top is about I3 w3 / I1.
The sleeping top
A top spinning exactly upright is stable only if w3 > w_c = 2 sqrt(I1 m g l) / I3. Below that the vertical axis is unstable and the top "wakes up". Friction slowly reduces the spin, so a sleeping top eventually passes this threshold and starts to wobble, then falls when the disc touches the table (tan theta = l / R).
Numerical checks on this page
(1) With friction off, the total energy stays constant during the integration. (2) A fast test top precesses at the closed-form rate m g l / (I3 w3). (3) Started 0.6 degrees off vertical, the axis stays near the vertical above 1.25 w_c but runs away below 0.8 w_c.
Honest simplifications
The tip is an ideal fixed pivot with no sliding, rolling friction or table bounce; the body is a uniform disc (I3 = m R^2 / 2, I1 = m R^2 / 4 + m l^2), so axle and cone mass are ignored. Spin friction is a simple torque proportional to the spin. A real top also slides on its tip, which makes it rise (the "tippe top" effect is not modelled). The spin shown on screen can be slowed so it does not strobe at 60 fps; precession and nutation are always at real speed times the playback factor.
What to try
- Load Fast top: steady precession: the axis traces a perfect circle and the precession rate matches the yellow fast-top line in graph 2.
- Load Released from rest: the top first falls, then loops (nutation). Watch the energy level and the potential well in graph 4.
- Load Sleeping top and then Slightly too slow: only a spin above the threshold keeps the axis upright.
- Turn on friction with Friction slows it, then it falls and watch the spin drop until the wobble grows.
- Try the Moon and Jupiter presets: precession scales with g.