Download ModelDownload SourceembedLaunch WebsiteLaunch Website 2


Intro Page



Code Language Translator Run

Software Requirements


Android iOS Windows MacOS
with best with Chrome Chrome Chrome Chrome
support full-screen? Yes. Chrome/Opera No. Firefox/ Samsung Internet Not yet Yes Yes
cannot work on some mobile browser that don't understand JavaScript such as.....
cannot work on Internet Explorer 9 and below



Eugene Butikov; lookang; Felix J. Garcia Clemente

Sample Learning Goals


For Teachers by Eugene Butikov 

This JavaScript HTML5 simulation program presented here visualizes a somewhat unexpected behavior of a gyroscope under the force of gravity and helps you better understand this counterintuitive behavior. The program simulates the forced (torque-induced) precession and nutation of a gyroscope.

Gyroscope is a body of rotation (for example, a massive plane or disc) which is set spinning at large angular velocity around its axis of symmetry. A first acquaintance with a gyroscope usually occurs in the early childhood, when a child watches the unusual behavior of a widely known toy – a spinning top. As long as the top is spinning fast enough, it remains staying steadily on the lower sharp end of the axis avoiding falling down to the ground and preserving the vertical position of the axis in spite of the high position of its center of mass – the center of gravity of a spinning top can be located above its point of the support. 

You can make a pause in the simulation and resume it by clicking on the button "Start/Pause". This control panel allows you also to vary parameters of the system and conditions of the simulation. By dragging the pointer of the mouse inside the WebGL window (moving the pointer with the left button pressed) you can rotate the 3D gyroscope around the vertical and horizontal axes for a more convenient point of view.

If the axis of a spinning gyroscope is inclined to the vertical, its axis generates in space a circular cone, so that the angle between the axis and the vertical remains constant during rotation. This kind of motion of a gyroscope that is subjected to an external torque is called forced or torque-induced precession. For a gyroscope whose axis is supported at a point different from the center of mass, this external torque is provided by the force of gravity. All the points of the gyroscope located at the axis move in circular paths whose centers lie on the vertical line passing through the supporting point. Select from drop down menu the option to observe a simulation of the forced precession. 

The simulation program gives also an impression of trajectories traced by points of the gyroscope which don't belong to the axis. Imagine an arrow fixed to the gyroscope that originates at the center of mass and makes some angle with the axis. The program shows the trace of this arrow spike which emerges beyond the surface bounding the body. The distance of this end point from the pivot is equal to the length of the gyroscope axis. This means that both trajectiries lie on the surface of the same sphere whose center is located at the pivot. If this arrow path hinders you from convenient observation of the gyroscope motion, you can uncheck the box "Show trace" on the control panel.

This strange at first sight behavior of the gyroscope is explained on the basis of the main law of rigid body dynamics according to which the time rate \( \frac{dL}{dt}  \) of change in the angular momentum L equals the torque N of the external forces exerted on the body: \( \frac{dL}{dt} = N \).

When the gyroscope is set to rotation around its axis of symmetry, vector L of its angular momentum is also direcred along this axis. Being inclined to the vertical, the gyroscope undergoes precession, that is, besides rotation around its own axis, turns also around the vertical axis. At fast own rotation this precession occurs so slowly that with good accuracy it is possible to neglect the component of the angular momentum which is caused by precession around the vertical. In other words, even in this case we can assume that vector L of the total angular momentum is directed approximately along the axis of the gyroscope. An approximate theory of a gyroscope is based on the assumption that vector L of the total angular momentum is always directed along the axis of symmetry. Therefore behavior of vector Ltells us about the behavior of the gyroscope axis.

The torque N produced by the force of gravity at any moment of time is directed horizontally at right angle to vector L of the angular momentum, as well as to the axis of the gyroscope. This means that the force of gravity can change only the direction of L, but not its magnitude. The upper end of the axis moves in the direction of torque N rather than in the direction of the force itself. This explains the unusual at first sight and counterintuitive behavior of the gyroscope. As a result, vector L and the axis of the gyroscope together with L are turning uniformly about the vertical line passing through the supporting point. This motion is just the forced precession.

If the gyroscope is spinning counterclockwise, the angular velocity of precession is directed oppositely to vector g, i.e., the precession also occurs counterclockwise. The magnitude of the angular velocity of precession is inversely proportional to the angular velocity of own rotation, and directly proportional to the distance of the center of mass from the supporting point. The angular velocity of precession is independent of the angle between the axis and the vertical line.

The regular precession of a gyroscope occurs only if the initial conditions are quite definite: in order to observe this regular behavior, we should make the gyroscope spinning fast around its axis and also impart to this axis a rotation about the vertical with a quite certain angular velocity, namely the velocity which is characteristic of the following regular precession. Only this initial angular velocity of the axis will provide the regular precession. In this sense we can say that the force of gravity that tends to turn down the gyroscope is actually only maintaining, but not causing the precession of the axis.

In the general case, i.e., for arbitrary initial conditions, the motion of a gyroscope is a superposition of forced regular precession and nutation. Nutation of a fast-spinning gyroscope reveals itself as (small) vibration and shivering of the precessing axis. Nutation is caused by a possible small deviation of the vector of own angular momentum from the axis of symmetry. (This deviation is absent only for carefully chosen specific initial conditions.) If we forget for a while about the force of gravity, the motion of the gyroscope would be an inertial (free) rotation. A detailed description and simulation of such inertial rotation can be found at "Free rotation of an axially symmetrical body" and in the paper "Inertial Rotation of a Rigid Body".

When the angular momentum of a free symmetrical body deviates from its axis of symmetry, the inertial rotation of the body can be represented as a superposition of two simultaneous rotations: one is rotation about the axis of symmetry (direction of this axis is fixed with respect to the body), and the second is rotation of this axis about a fixed in space direction of the angular momentum L. The axis of the body generates a circular cone (with a small angle) about the direction of vector L. This uniform motion of the axis along a cone in the absence of external torques is a free regular precession. When this precession occurs with a gyroscope, it is usually called a nutation. Causes and peculiarities of nutation are described in greater detail in the paper "Precession and Nutation of a Gyroscope. Select from drop down menu in order to observe the simulation of forced precession accompanied by a nutation. 

In the program, the simulation of forced precession accompanied by a nutation corresponds to certain initial conditions. Namely, it is assumed that we are supporting the upper end of the gyroscope axis against gravity by an upward force while setting it to spin around its axis, and then release the axis with zero initial velocity. Before this moment the gyroscope simply spins around an axis fixed in space. At the moment when we release the axis, both mentioned above motions start simultaneously: a regular precession forced by gravity, and a free precession along the cone of nutation about the angular momentum of own rotation. When both motions add, the upper end of the axis traces a cycloid-like trajectory – the curve along which moves a point of the rim of a wheel that rolls without slipping. The program shows also (by the red circle) the trajectory traced by the end-point of the angular momentum vector that corresponds to spinning of the gyroscope around its axis of symmetry.

When the cone of nutation is narrow, the forced precession is called pseudo regular. For fast-spinning gyroscopes used in technical applications, the pseudo regular precession is almost indistinguishable from regular. In these cases nutation reveals itself as hardly noticeable very fast shivering of the gyroscope axis. Moreover, this fast nutation damps out rapidly by virtue of friction, and the pseudo regular precession transforms into a regular precession. Select from drop down menu in order to make the program simulate how a pseudoregular precession gradually transforms into a regular one.  The simulation shows clearly how kinks and sharp apexes of the axis trajectory (the yellow curve) gradually smooth over and flatten, and the original complicated trajectory transforms in the course of time into a circle that corresponds to the regular forced precession.

Controlling the HTML5.
The simulation program allows you to vary parameters of the system and conditions of the simulation. You can rotate the webGL view of the gyroscope around the vertical and horizontal axes (for a more convenient point of view) simply by dragging the pointer of the mouse inside the applet window (moving the pointer with the left button pressed). If in addition you will hold the "Control" key on the keyboard, the image will move in the desired direction. If you will hold the "Shift" key, dragging the mouse pointer will change the scale – the image will move closer or farther.

Rotation of the gyroscope can be represented in a convenient time scale.The functions of other controls are rather obvious. The upper button starts the simulation and makes a pause. The second button allows you to execute the simulation by steps.  The ("Reset") restores the default values.

At first acquaintance with the program you can, instead of entering values of parameters, open the list of predefined examples and choose from it a suitable example. Performing experiments on your own, you can vary the values of parameters either by dragging the sliders, of by typing the desired values with the keyboard. Before changing parameters, you should pause the simulation by using the "Start/Pause" button. When you type new values into the window, the colour of its background changes to bright yellow. You should finish the input by pressing the "Enter" key. If the value is admissible, the window assumes its usual colour.

Inertial properties of a gyroscope are defined by its transverse and longitudinal moments of inertia with respect to the axes, passing through the supporting point. In the program, the moment of inertia about the longitudinal axis is fixed. The moment of inertia about the transverse axis can be changed by moving the disc, i.e., by changing the distance of the disc (of its center of gravity) from the supporting point. The corresponding parameter is called "Disc position." When you increase the height, the angular velocity of forced precession becomes greater, and the ratio of the nutation period to the period of own rotation also increases. Admissible values of the distance from the supporting point to the disc lie in the interval between 0.5 up to 1.25 arbitrary units.

Another geometrical parameter that can be changed in the program is the inclination of the gyroscope axis with respect to the vertical line. On the control panel, this parameter is labelled as "Angle." The corresponding angle should be expressed in degrees. Admissible values lie in the interval from 0 up to 120 degrees. The angular velocity of rotation around own axis ("Rotation speed") can be varied in the interval from 4.0 up to 20.0 (in arbitrary units). To include friction in the model, you can mark the check box "Friction".

The program simulates the gyroscope behavior for the initial conditions, which correspond to releasing the axis (after setting the gyroscope to axial rotation) with initial velocity zero. These initial conditions inevitably give rise to nutation. However, if you mark the check box "Regular precession," the program will choose specific initial conditions which provide regular precession without nutation from the very beginning of the simulation.

We have already mentioned earlier how you can switch on and switch off drawing the trajectory of an arbitrary point of the gyroscope by marking the corresponding check box and indicating the angular position of the desired point ("TraceAngle" parameter on the control panel). The background color of the applet window depends on the state of the check box "Dark background".

A more detailed description of forced precession can be found in the paper "Precession and Nutation of a Gyroscope".

How to Use

  1. Explore the Interface: Once on the simulation page, you will see the interactive interface of the gyroscope simulation.
  2. Understand the Controls: Familiarize yourself with the available controls and features on the simulation interface. These may include sliders, buttons, or input fields.
  3. Adjust Parameters: Experiment with adjusting parameters such as the gyroscope's initial angular velocity, mass, and radius. Use the sliders or input fields provided to change these values.
  4. Observe Gyroscope Motion: Interact with the simulation to observe how the gyroscope behaves under different conditions. Pay attention to the precession and nutation motions.
  5. Read Descriptions and Information: Look for any descriptions or informational text provided on the simulation page. This information may explain the physics principles behind the gyroscope's motion.
  6. Try Different Scenarios: Use the simulation to explore various scenarios. For example, you can change the orientation of the gyroscope, modify external torques, or adjust other relevant parameters.
  7. Learn from Observations: Observe how the gyroscope responds to your changes. Take note of any patterns, trends, or unexpected behaviors. This hands-on exploration will deepen your understanding of rotational motion and gyroscopic effects.
  8. Experiment and Ask Questions: Use the simulation as a tool for experimentation. If you have questions about gyroscopes or rotational motion, try to answer them by manipulating the simulation.
  9. Reflect and Summarize: After exploring the simulation, take some time to reflect on what you have observed. Summarize key findings and relate them to the principles of gyroscopic motion.
  10. Further Study: If you're interested in delving deeper into gyroscopes, consider exploring additional resources, textbooks, or online materials related to rotational motion and gyroscopic effects.
Remember that this simulation is a valuable tool for visualizing and understanding the behavior of gyroscopes, so make the most of your interactive learning experience.




  1. by Professor Eugene Butikov 

Other Resources

  1. by Fu-Kwun Hwang
  2. by Wolfgang Christian

end faq

{accordionfaq faqid=accordion4 faqclass="lightnessfaq defaulticon headerbackground headerborder contentbackground contentborder round5"}

5 1 1 1 1 1 1 1 1 1 1 Rating 5.00 (1 Vote)