Lorenz attractor

Integrated on the server with SciPy · rendered with Plotly · drag to rotate, scroll to zoom

server compute

0 ms · 0 integrations

λ (largest)

|Δ| > 0.1 at

separation at t_max

finite-time estimate over t ∈ [5, 40]

Parameters

ẋ = σ(y − x) ẏ = x(ρ − z) − y ż = xy − βz

σ (Prandtl)

10.00

ρ (Rayleigh)

28.00

chaos onset near ρ ≈ 24.7

β

2.667

integration time

40

λ estimate sharpens as this grows

sample points

5,000

perturbation δ (log₁₀)

1e-4

twin starts δ away in x

Presets

What you are looking at

The dashed blue curve is the linearised growth: a tangent vector evolved with the variational equation, which grows exponentially forever because nothing constrains it. The orange curve is the real separation between two trajectories seeded δ apart — identical to the linear estimate while δ stays small, then saturating at the size of the attractor, because two points on a bounded set can only get so far apart. The slope of the straight section is λ.

λ converges slowly. At t_max = 40 expect roughly 0.79 for the classic parameters; push t_max up and it climbs toward the accepted 0.906. That drift is a property of finite-time Lyapunov exponents, not of the solver.

Truncation error is amplified at the same rate as any physical perturbation, so below δ ≈ 1e-6 the divergence is arithmetic rather than dynamics. Enable the noise-floor control to integrate a third time at rtol=1e-11 and plot that error alongside.

Built with Reflex