Kuramoto Synchronization (2D)
2D Kuramoto oscillator lab: N coupled phase oscillators on a flat ring, a live order-parameter trace and a phase histogram show the jump from incoherence to synchrony above the critical coupling K_c.
This 2D companion runs the identical Kuramoto phase-oscillator equations as the 3D version through plain Canvas 2D drawing instead of a WebGL-rendered scene: N phase oscillators sit on a flat ring, colored by their natural frequency, each pulled toward the population's mean phase with strength set by the coupling K. Every control carries over one-to-one β oscillator count N, coupling K, frequency spread Ο and playback speed, plus Perturb and the K=0/K=3 presets β while a live order-parameter trace and a phase histogram give an always-readable readout of the transition from incoherence to synchrony.
2D Kuramoto oscillator lab: N coupled phase oscillators on a flat ring, a live order-parameter trace and a phase histogram show the jump from incoherence to synchrony above the critical coupling K_c.
2D Β· HTML5 Canvas 2D Β· 60 FPS target Β· runs fully client-side, no install
Frequently Asked Questions
What is the Kuramoto model?
The Kuramoto model describes a population of oscillators, each with its own natural frequency, that are coupled so every oscillator is pulled toward the population's average phase. Above a critical coupling strength K_c, the population spontaneously synchronizes β the same mechanism behind firefly flashing, cardiac pacemaker cells and neural oscillations.
What does the order parameter r show?
r measures how synchronized the population is: r = |mean(e^(iΟ))| across all oscillators. r β 0 means phases are spread uniformly around the circle (incoherent); r β 1 means every oscillator shares the same phase (fully synchronized). Watch it jump sharply as K crosses K_c.
How does this 2D version differ from the 3D original?
Same equations, same sliders (N, K, Ο, speed) and the same Perturb/K=0/K=3 buttons β this version replaces the orbiting WebGL circle panel with a flat Canvas 2D ring plus an order-parameter trace and a phase histogram, so the transition is readable at a glance without needing to orbit the camera.