The Lorenz Attractor

Run the 1963 equations twice from almost the same place. Watch where the two runs stop agreeing, and then watch what they still agree about.

Loading interactive simulation...

Lesson

The theory — The Lorenz Attractor

In 1963 Edward Lorenz cut convection down to three numbers and three equations: ẋ = σ(y − x), ẏ = x(ρ − z) − y, ż = xy − βz. Here x is how fast a roll of fluid is turning, y the temperature difference between the rising and falling sides, and z how far the vertical temperature profile has bent away from a straight line. σ = 10 and β = 8/3 are his; ρ is the heating and is the control on this page. An attractor is the set a run ends up on once the transient has died. Below ρ = 24.7368 that can be a single point, a steady roll turning at a constant rate. Above it the run never settles on anything, and the set it fills instead has properties no point or surface has.

What each symbol means

σ
the Prandtl number, fixed at 10. It compares how fast momentum spreads through the fluid with how fast heat does
ρ
the heating, the control on this page. Rayleigh number divided by its critical value, so ρ = 1 is the point at which the fluid starts to move at all
β
fixed at 8/3, set by the shape of the convection rolls Lorenz assumed
∇·F
the volume contraction rate, −σ − 1 − β. The same everywhere, and the reason the attractor has no volume
λ₁
the largest Lyapunov exponent, measured here by pushing a second point out and renormalising. Positive means neighbouring states separate
Assumes
That three numbers can stand for a fluid. They cannot, and Lorenz knew it: the system is a truncation of convection that keeps three modes and throws away the rest, so it is a model of a model. What survives the truncation is the arithmetic of stretching and folding, which is why the picture is worth looking at long after the convection has been forgotten. The integration is RK4 at a fixed step of 0.005, and the step is fixed rather than adaptive on purpose, so that the only difference between the two runs is the one you set.
Breaks when
As a description of weather, almost immediately. Real convection has boundaries, moisture and a continuum of modes, and the numbers here are not temperatures or speeds in any unit you could measure. The time axis is in the system's own units and translating it into days is a choice rather than a result, so this page does not make one. The Lyapunov exponent is an average over the whole attractor and the local rate varies widely, which is why a forecast issued on a quiet day is worth more than the average suggests — Ensemble Weather Forecasting is where that is measured. Push ρ past about 31 and the picture changes again: periodic windows open and close inside the chaotic range, and a run can land on a closed loop instead.

The two runs stop agreeing, and keep drawing the same thing 🖖

Press Long enough to fill the curve and read the second panel. Every time z reaches a maximum the tool records it and plots it against the previous maximum. Run A gives 268 of those points, run B gives 266, and all 534 fall on one curve. Measure it and half of run B's points sit within 0.011 of the line through run A's neighbouring points, on a map 17.75 units wide. The two runs last agreed about where they were at t = 24.78 and by the end are 11.9 apart, which on an attractor 38 units across means they are simply somewhere else. A forecaster cannot tell you where the trajectory is. The curve in that panel is the part that was never in doubt.

It has no volume, and it is still not a surface 🖖

Add up the three diagonal terms of the flow and you get ∇·F = −σ − 1 − β = −13.6667, the same at every point and at every ρ. So a blob of starting states keeps a millionth of its volume after one time unit, and 7.6 × 10⁻³⁵⁷ of it after sixty. Whatever the run ends up on has zero volume. It cannot be a point, because above ρ = 24.7368 both steady rolls are unstable and the run is thrown off them. It cannot be a surface either, since two trajectories of a smooth flow never cross and a sheet would have to be crossed to be wound this way. What is left is the awkward thing in between, and its dimension comes out at 2.0622.

Below ρ = 24.7368 the equations keep both answers 🖖

The two presets at ρ = 24.4 differ in one control. Starting out at (1, 1, 20) the gap between the twins grows from 10⁻⁹ to 8.889 and the run crosses between the wings 96 times. Starting beside the right-hand roll, the same equations wind both runs down onto it and the gap ends at 1.4 × 10⁻¹⁰, a seventh of what it began as. The steady roll and the strange attractor are both there, and which one you get is decided by where you started rather than by how hard you heat. Physicists call the bifurcation at 24.7368 subcritical, and this is what the word is describing.

Problem solved in full

  1. You know the state to within a cube of side 1. What is that cube ten time units later? 6 steps

    Suppose the state is known only to within a cube of side 1 — volume 1 — somewhere on the attractor, and the run is carried forward ten time units. Work out what shape that cube has become, and what its volume is, before reading on. Press The classic run to put the tool at ρ = 28.

    Open this problem in the tool

    1. There are three Lyapunov exponents, one for each direction, and only one of them has to be measured. Along the flow nothing stretches or squeezes, so λ₂ = 0. The renormalisation in the results table gives λ₁ = 0.9059. The third is not measured at all: the three must add up to the volume contraction rate, which is known exactly.

    2. So λ₃ = ∇·F − λ₁ = −13.6667 − 0.9059 = −14.5726. Notice how lopsided that is. The squeezing direction is sixteen times stronger than the stretching one, which is the whole reason a blob ends up flat rather than round.

    3. Now put t = 10 into each direction. Each side of the cube is multiplied by e^(λt):

    4. Multiply the three factors and you get the volume: 8,594 × 1 × 5.15 × 10⁻⁶⁴ = 4.43 × 10⁻⁶⁰. The contraction rate gives the same answer without ever mentioning the three directions, e^(−13.6667 × 10) = 4.43 × 10⁻⁶⁰, and the two routes agreeing is the check that the exponents were right.

    5. Here is the part the arithmetic forces on you. The attractor is about 38 units wide in x and 46 tall in z, and the cube has become a ribbon 8,594 units long — 226 times the width of the box it has to stay inside. So it folds, and folds again on every trip round, and each fold lays another layer on top of the ones already there.

    6. An object made of layers like that is thicker than a surface and thinner than a solid, and the dimension says how much: D = 2 + λ₁/|λ₃| = 2 + 0.9059/14.5726 = 2.0622. The 2 is the sheet; the 0.0622 is the folding.

    Answer

    A ribbon 8,594 units long, 1 wide and 5.15 × 10⁻⁶⁴ thick, of volume 4.43 × 10⁻⁶⁰, folded over and over into a box 38 units across. That folding is what makes the attractor 2.0622-dimensional rather than flat, and it is also why you cannot say which layer you are on — which is the same thing as not knowing where the trajectory is.

Learning path

How a weather forecast is made

References (4)