Simulating Harmonographs

Initializing live version
Download to Desktop

Requires a Wolfram Notebook System

Interact on desktop, mobile and cloud with the free Wolfram Player or other Wolfram Language products.

A harmonograph is a mechanical device that uses pendulums to create geometrical patterns. For example, to create a two-pendulum harmonograph, you might use one pendulum to oscillate a pen along the axis and another to oscillate the paper along the axis. Harmonographs were quite popular around 100 years ago and were often found in people's homes. You can simulate a harmonograph by using sums of sinusoids, where each sinusoid represents an individual pendulum. This Demonstration is capable of simulating several different kinds of harmonograph using up to four independent pendulums.


In this Demonstration, the sliders control the selected pendulum. You can turn the selected pendulum on or off by selecting the activate checkbox.


Contributed by: Michael Croucher (March 2011)
Open content licensed under CC BY-NC-SA



The total frequency of each pendulum is given by the sum of the "coarse tuning" and "fine tuning" sliders.

The "max recursion" slider can be used to improve plot quality in certain circumstances.

Snapshot 1: by deactivating pendulums 2 and 4 we can simulate a two-pendulum harmonograph: this also serves as an example of a damped Lissajous curve

Snapshot 2: here we have used only two pendulums again but by switching off the damping we get a standard, undamped Lissajous curve

Snapshot 3: here we have switched on all four pendulums, switched off damping, and altered the phases of each pendulum such that the system of equations is now similar to those that produce spirograph-like patterns

Snapshot 4: this is an example of a harmonograph pattern produced using all four damped pendulums

Snapshot 5: a butterfly-like pattern produced using three damped pendulums

Snapshot 6: a four-pendulum example

Snapshot 7: another four-pendulum example

Snapshot 8: a rather chaotic-looking four-pendulum example

For more details concerning this Demonstration visit

Feedback (field required)
Email (field required) Name
Occupation Organization
Note: Your message & contact information may be shared with the author of any specific Demonstration for which you give feedback.