Jan Vrbik

Both approximate and exact solutions for the motion of a spinning top are constructed with the help of quaternions.

Quaternion Algebra

A quaternion is a four-dimensional quantity consisting of a scalar, say , and a three-dimensional vector , collectively denoted . Addition of two quaternions is component-wise,


(we do not need to add quaternions in this article). Their multiplication follows the rule


It is important to note that such multiplication is associative (even though noncommutative). This can be verified by the following.

When the scalar part of a quaternion is zero, it is called a pure quaternion. Since this constitutes an important special case, we will extend our definition of multiplication accordingly.

The operation of conjugation simply changes the sign of the vector part of a quaternion.

Based on the corresponding Taylor expansion, it is possible to evaluate various functions of a quaternion. Of these, the most important is the exponential function, which, in this article, we need only with pure-quaternion arguments.


Rotating a 3D vector with respect to an axis through the origin (with a unit direction of ) by an angle can be achieved by


where (a vector of length and unit direction ), and and are the parallel and perpendicular (to ) parts of , respectively [1]. Note that and commute, while and anticommute.

One can show that a quaternion has the form of if and only if (a pure scalar). Alternately, the same can be parametrized by the three Euler angles (see the next section).

By taking , where is time, we achieve constant rotation with an uniform angular velocity . Note that


where , and denotes its time derivative.

The previous formula can be generalized to any time-dependent , as can be seen by differentiating , thus


where is now the instantaneous angular velocity at time , which may change with time. Note that must be a pure quaternion (take the time derivative of to see that). Now, any rotation can be applied to the axes of the original (inertial) system of coordinates, thus creating the corresponding new, rotating (noninertial) frame. Components of any vector can then be expressed in either the old, or (often and more conveniently) the new coordinates; the latter will be given by . The angular velocity , in the new coordinates, will thus have components given by . This becomes an important and helpful tool: even though the laws of physics are normally valid only in inertial coordinates, the resulting equations often simplify when expressed in the rotating frame.

Spinning Top

Let us consider an axially symmetrical body (a “top”) of mass , and parallel and perpendicular (with respect to the body’s symmetry axis) moments of inertia equal to and , respectively. We make it spin around its axis, place the bottom tip of its (usually tilted) axis on a nonslip horizontal plane (a desk), and let it continue its motion subject to the vertical gravity field. Let us also assume that the top’s center of mass is at a distance from its point of contact, that the gravitational acceleration is , and that there is no friction.

To investigate the top’s motion, we introduce an inertial coordinate system with its origin at the point of contact and its direction pointing vertically upward. First we position a motionless top vertically (its symmetry axis aligned with the direction) on the desk’s surface. We then rotate it using a fully general, time-dependent rotation , parametrized by three Euler angles, thus


where is a rapidly increasing function of time that represents the actual spinning of the top around its symmetry axis (this rotation is applied first), followed by tilting the spinning top by an angle (potentially a slowly varying function of time) around the inertial direction, further followed by slowly rotating the spinning, tilted top around the inertial direction by an angle , thus creating a so-called precession. Also: , (not used in the last formula), and are unit vectors along the , , and directions, respectively, in their pure-quaternion form.

Equations of Motion

We now use the Lagrange technique to find the corresponding equations for the three Euler angles. The kinetic energy of the top equals one-half of the scalar product of its angular velocity with its angular momentum, as its motion is purely rotational. In the rotating frame (this is when it becomes handy), this equals


where , , are the rotating-frame coordinates of , and (denoted from now on; similarly, will be called ) is the top’s moment of inertia with respect to a line perpendicular to its symmetry axis, and passing through the origin (which is displaced by from its center of mass). Usually (a thin circular disk needs to be bigger than only one-half of its radius to meet this condition), but our results are valid when as well.

Subtracting the potential energy (by the definition of ) yields the resulting Lagrangian.

Since the result is free of and (it contains only their time derivatives), the corresponding and must be constants of motion [2]. The remaining equation is then obtained from


This yields the following.

The first two expressions are constants of motion, while the last one must be equal to zero.

Introducing a new variable by


the last three expressions simplify further. It is also important to realize that the transformation (9) replaces only the parameter (the speed of spinning); if we are interested in the behavior of and only (as is usually the case), we get the same solution regardless of whether we use (in the old set of equations) or (in the new one).

So, let us see what the new results look like.

The equations are now much simpler, and the number of parameters has been reduced from three to only one (namely , whose dimension is ).

We can now easily infer a possibility of what we call a “steady” solution, with a constant value of (say ) and


where and are two constants whose product must be equal to . To relate the precession speed to the actual spinning speed, say , we have to solve (based on (9))


for , which yields


where the negative sign corresponds to the usually observed “slow” precession (assuming, from now on, that ), whereas the positive sign yields a hard-to-achieve “fast” precession. When (spherically symmetrical top), we get only the “slow” solution . For a fast-spinning top, the previous formula yields, to a good approximation, ; the precession speed is practically independent of .

Approximate Solution

The actual motion is usually more complicated than a steady solution of the previous section, as may undergo periodic oscillations, called nutation. Assuming that the amplitude of these is small, we can expand the three dependent variables of our equations around the steady-state solution:


where the first term of each right-hand side is a constant, the second term remains time dependent, and is small. We substitute these into the three equations, neglecting and higher powers of .

Each of the three expressions must be equal to zero.

We solve the first two equations for and and substitute into the last equation.

Solving for (and, subsequently, for and ) is now quite easy. Note that the coefficient of in the last expression is always non-negative.

Also note that will be always positive (assuming “slow” precession), whenever the following condition is met:


Reversing the above inequality results in so-called looping orbits (in terms of the path of the axis, when displayed on a unit sphere: see below), with periodically changing direction; making the two sides of (14) equal to each other results in cuspidal orbits (when reaches its smallest value, becomes zero).

If desired, one can extend the approximate solution to achieve (and higher) accuracy.

Exact Solution

One can show that the original differential equation for , namely


has the following constant of motion.

This can be easily verified.

Making and equal to their initial values, we can solve for and and substitute these into (minus its initial value, so that the resulting expression must be equal to zero).

The resulting differential equation can be simplified by the transformation [3].

To simplify the subsequent solution, we have assumed (without loss of generality) that the initial time has been chosen to coincide with reaching its maximum value (and, consequently, ). The above equation can then be solved, using specific initial conditions, which must satisfy (due to (15), since ); here provides the solution for .

This can be easily transformed back to ; one can then find the corresponding and by analytically integrating the expressions for and (if desired) . Finally, the results can be displayed graphically.

One can now compute and display the top’s motion under various initial conditions, check the accuracy of the approximate solution, and so forth. We will leave it for you to explore. Have fun!


[1] D. Hestenes, New Foundations for Classical Mechanics, 2nd ed., Dordrecht/Boston/London: Kluwer Academic Publishers, 1999.
[2] H. Goldstein, Classical Mechanics, 2nd ed., Reading, MA: Addison-Wesley, 1980.
[3] E. T. Whittaker, A Treatise on the Analytical Dynamics of Particles and Rigid Bodies, 2nd ed., Cambridge: Cambridge University Press, 1917. www.archive.org/details/atreatiseonanal00whitgoog.
J. Vrbik, “Motion of a Spinning Top,” The Mathematica Journal, 2012.

About the Author

Jan Vrbik
Department of Mathematics, Brock University
500 Glenridge Ave., St. Catharines
Ontario, Canada, L2S 3A1