Lorenz System
The canonical example of deterministic chaos — a butterfly that cannot be predicted.
Origin and Equations
The Lorenz system was derived by Edward Lorenz in 1963 as a simplified model of atmospheric convection. It consists of three coupled nonlinear ODEs:
The variables \(x,y,z\) represent convective velocity, horizontal and vertical temperature variation. Despite its simple form, the system exhibits remarkably complex dynamics depending on the parameters.
Parameters
- \(\sigma\) (sigma) — the Prandtl number: ratio of momentum to thermal diffusivity. Classical value \(\sigma=10\).
- \(\rho\) (rho) — the Rayleigh number: the normalised temperature difference driving convection. This is the key bifurcation parameter.
- \(\beta\) (beta) — geometric factor of the convection roll. Classical value \(\beta=8/3\approx2.667\).
Bifurcation Structure
- For \(\rho<1\): the origin is the only equilibrium and is globally stable — no convection.
- For \(1<\rho<24.74\): two symmetric non-trivial equilibria \(C^\pm\) appear at the pitchfork bifurcation \(\rho=1\) and remain linearly stable throughout this range — first as stable nodes near \(\rho=1\), then as stable spirals once the eigenvalues become complex. They lose stability at \(\rho\approx24.74\) via a subcritical Hopf bifurcation.
- For \(\rho\approx24.74\) and above: the system enters the chaotic regime — the famous “butterfly attractor” — where trajectories wind around both lobes without ever repeating.
- At \(\rho\approx22\): transient chaos — trajectories behave chaotically for a long time before eventually settling to one of the fixed points.
Sensitive Dependence on Initial Conditions
In the chaotic regime, two trajectories starting arbitrarily close together diverge exponentially in time. If \(\varepsilon\) is the initial separation, then
where \(\lambda_1\approx0.906\) is the maximal Lyapunov exponent of the Lorenz attractor with classical parameters. This positive Lyapunov exponent is the mathematical definition of chaos: nearby states become uncorrelated on a timescale of \(1/\lambda_1\approx1.1\) time units. Use Launch Particles with \(\varepsilon=10^{-9}\) to watch two initially indistinguishable trajectories drift apart.
Numerical Method
Static trajectories use a fixed-step Runge-Kutta integrator with \(\Delta t=0.005\) and a configurable end time \(T\) (default \(T=150\), so 30,000 steps). The Method selector switches between three options so the user can verify that any feature of interest is intrinsic to the dynamics rather than an artifact of one solver:
- RK4 — classic Runge-Kutta, 4 stages, 4th-order accurate per step.
- Dormand-Prince 5(4) — 6 stages (FSAL), 5th-order solution coefficients.
- Tsit5 — Tsitouras 5(4), 6 stages, 5th-order; default.
- DOP853 — Dormand-Prince 8(5,3), 12 stages, 8th-order; closest to a "ground truth" reference at small \(\Delta t\).
Animate \(\rho\) frames use 10,000 steps (total time \(t=50\)) — enough to fill both lobes — and are precomputed in full before playback begins, so the animation runs smoothly at any FPS. The Jet colorbar shows actual simulation time (\(t=0\) to \(t=T\) for static, \(t=0\) to \(t=50\) for animation).
How to Use
- Adjust \(\sigma,\rho,\beta\), initial conditions \((x_0,y_0,z_0)\), and the end time \(T\) using the sliders or type directly in the value boxes. Each preset below sets a sensible \(T\) automatically.
- Use the Examples buttons to load presets reproducing canonical Chapter 9 figures from Nonlinear Dynamics and Chaos: \(\rho=0.5\) (stable origin), \(\rho=10\) (stable spirals onto \(C^\pm\)), \(\rho=22.05\) (long-lived transient chaos, \(T=200\) — switch the Method selector to compare RK4/DP5/Tsit5/DOP853 settle times), and \(\rho=28\) (strange attractor). All use \(\sigma=10\), \(\beta=8/3\), and IC \((8,-19,30)\).
- Click Animate \(\rho\) to precompute and play the sweep from \(\rho_\text{start}\) to \(\rho_\text{end}\). The button shows precompute progress; click again at any time to stop.
- Click Launch Particles to compare two trajectories separated by \(\varepsilon\) in the \(x\)-direction — select Slow/Medium/Fast to control animation speed.
- The 3D plot is fully interactive: drag to rotate, scroll to zoom.
Traj 2: \(\mathbf{x}_2(0)=(x_0+\varepsilon,y_0,z_0)\)
Divergence: \(\|\mathbf{x}_1(t)-\mathbf{x}_2(t)\|\sim\varepsilon\,e^{\lambda_1 t}\)
Cite this tool
Kapita, S. (2026). Lorenz System. Math Tools. https://shelvean.github.io/math-tools/lorenzsystem.html
Kapita, Shelvean. "Lorenz System." Math Tools, 2026, shelvean.github.io/math-tools/lorenzsystem.html.
@online{kapita2026lorenzsystem,
author = {Shelvean Kapita},
title = {{Lorenz System}},
year = {2026},
organization = {Math Tools},
url = {https://shelvean.github.io/math-tools/lorenzsystem.html}
}