Ride my Kuramotocycle!

by Dirk Brockmann , Steven Strogatz

This explorable illustrates the Kuramoto model for phase coupled oscillators. This model is used to describe synchronization phenomena in natural systems, e.g. the flash synchronization of fire flies or wall-mounted clocks.

The model is defined as a system of \(N\) oscillators. Each oscillator has a phase variable \(\theta_n(t)\) (illustrated by the angular position on a circle below), and an angular frequency \(\omega_n\) that captures how fast the oscillator moves around the circle. Initially oscillators are distributed randomly along a circle (like watches that show different times) and have different frequencies (like watches that tick at different speeds). The model introduces an interaction between oscillators that naturally yields perfect or partial synchrony.

Press play and keep on reading...

This is how it works

The Kuramoto model defines the rate of change of the state variables \(\theta_n(t)\) according to

\[\dot\theta_n = \omega_n +\frac{K}{N}\sum_m \sin(\theta_m-\theta_n). \]

The second term defines the interaction between oscillators and parameter \(K\) is the coupling strength. When \(K=0\) all oscillators are independent (This is the default setting in the control panel) and oscillators move around the circle at their natural frequency. In the display dots are shaded according to their natural frequency, brighter dots move faster than dark ones (you can switch to color using Orli's switch).

You can vary the diversity of the natural frequencies in the oscillator population using the variability slider. You can also change the number of oscillators in the population as well as the speed at which things are happening.

Observe this:

First try investigating a system in which all oscillators have identical natural frequency by turning the variability to zero. Now, all oscillators are moving at the same speed but have different phases. If you now increase the coupling strength a bit you will find that eventually all oscillators will be in phase.

Now pause the system, reset it by pressing the back button and increase the variability to an intermediate value, press play and slowly increase the coupling strength. You should see that for sufficiently large coupling the oscillators will eventually equilibrate into a state in which everyone is moving at identical angular speed but with different phases.

the co-moving reference frame

To investigate the dynamics, it helps looking at the system in the co-moving references frame in which the observer (you) turns with the oscillators at the mean natural frequency. You can switch to the co-moving frame using the control panel.

partial synchronization

An interesting phenomenon occurs for intermediate coupling strengths and some preset variability of natural frequencies. Switch on the co-moving reference frame and try to find a value for the coupling strength such that the oscillators are sufficiently spread in equalibrium that they almost cover half a circle. You should see that many oscillators are in synchrony but that some fail to join the bulk.

The order parameter

In order to quantify the degree and onset of synchronization we can use the average position of the oscillators

\[x=\frac{1}{N}\sum_n \cos(\theta_n)\]

\[y=\frac{1}{N}\sum_n \sin(\theta_n)\]

and depict the coordinates \((x,y)\) in the plane. The length of this vector is the order parameter of the system. If all dots are scattered uniformaly around the circle the order parameter is close to zero. If they are all moving in phase it is one. You use switch on the order parameter in the control panel.


  • S. Strogatz. Sync: The Emerging Science of Spontaneous Order (Hyperion, New York, 2003).
  • Section 5.4 in Y. Kuramoto, Chemical Oscillations, Waves and Turbulence (Springer, 1984).
  • S.H. Strogatz. From Kuramoto to Crawford: Exploring the onset of synchronization in populations of coupled oscillators. Physica D 143, 1-20 (2000).