Nonlinear Dynamics & Chaos Theory

van der Pol Oscillator

Simulate Balthasar van der Pol's 1920 nonlinear oscillator: $\ddot{x} - \mu(1-x^2)\dot{x} + x = 0$. Small amplitudes ($|x| < 1$) gain energy while large amplitudes ($|x| > 1$) dissipate energy, creating a stable limit cycle attractor in phase space $(x, v)$.

Damping Strength μ 1.50 (Relaxation)
Position x 1.24
Velocity v -0.85

Oscillator Parameters

Visual Overlay

Controls

van der Pol Non-linear Differential Equation

Second-Order ODE: d²x / dt² - μ (1 - x²) (dx / dt) + x = 0
Phase Space System: dx/dt = v , dv/dt = μ (1 - x²) v - x
Attractor Property: For |x| < 1 ⇒ Energy Injected (Negative Damping)
For |x| > 1 ⇒ Energy Dissipated (Positive Damping)
Developer Reference

Core Algorithm & Standalone Script

// van der Pol limit cycle phase space solver
const canvas = document.getElementById('canvas');
const ctx = canvas.getContext('2d');
// dx/dt = v, dv/dt = mu * (1 - x^2) * v - x