A flat 2D companion to the 3D gyroscope simulation: real angular momentum, torque and precession, drawn as a side-view and a top-down projection instead of a rendered rigid body. Spin up the rotor and watch the top-down circle trace the actual precession rate.
The precession rate Ω = τ/(Iω) is computed live from the current spin rate, tilt and moment of inertia every frame — the top-down view's circle is a direct visualisation of dL/dt = τ, not a scripted loop.
Raise the spin rate and see the top-down circle slow down; lower it toward zero with the "No spin (falls)" preset and watch the axis topple under gravity's torque instead of precessing.
The same Ω = τ/(Iω) relation governs why a spinning top outlasts a stationary one, why thrown boomerangs curve back, and why satellites use spinning reaction wheels to reorient without fuel.
This is a flat 2D companion to the 3D gyroscope simulation, using the same real physics — L = Iω, τ = mgr·sinθ, and dL/dt = τ — but drawn with a plain 2D canvas instead of a rendered rigid body. A side-view panel shows the spin axis appearing to swing and foreshorten as it precesses, while a top-down panel looks straight down the vertical axis, where precession traces a clean circle at the physically correct angular rate Ω = τ/(Iω).
Because gravity's torque τ is always perpendicular to the angular momentum L, it cannot speed a fall — it only rotates L sideways, sweeping the axis around instead of toppling it, for as long as the spin stays fast enough to keep L large. Drop the spin toward zero with the "No spin (falls)" preset and the same torque/inertia relation makes the axis topple for real, rather than looping through a scripted animation.
How is this different from the 3D gyroscope simulation?
Both use the same underlying equations (L = Iω, τ = mgr·sinθ, Ω = τ/(Iω)). This version renders the motion as two flat 2D projections — a side view and a top-down view — on a plain canvas, rather than a WebGL rigid body you can orbit with the mouse.
Why does the top-down view show a circle?
Looking straight down the vertical axis, the tip of the spin axis sweeps around at constant radius sinθ as φ advances at rate Ω. That circular sweep is precession seen from directly above.
Why does the side view make the axis look like it swings back and forth?
A side view can only show two of the three spatial axes. As the tip precesses toward and away from the viewer, its horizontal position and apparent size both change, which reads as a swinging, foreshortening motion even though the true 3D motion is a smooth circle.
How is the precession rate calculated?
Ω = τ/(Iω), recomputed every frame from the live torque τ = mgr·sinθ, the moment of inertia I, and the spin rate ω. Faster spin or larger I gives a slower precession.
With almost no spin there is almost no angular momentum to redirect the torque, so gravity simply topples the axis — the "No spin (falls)" preset shows θ growing toward horizontal and beyond instead of precessing.
The yellow arrow in the side view is the angular-momentum vector L, pointing along the spin axis. The red arrow in the top-down view is the tangential direction of the gravitational torque τ, the direction that pushes L — and therefore the axis — sideways.
Yes — Ω = τ/(Iω) is the standard steady-precession approximation for a fast top, derived directly from dL/dt = τ. It is recalculated from the live sliders every frame, not played back from a fixed animation.