Chapter I
The Forecast Factory
Differential equations describe how a state changes from moment to moment. For the atmosphere, the state is the wind, pressure, temperature and moisture at every point, and the equations are the partial differential equations of fluid motion. In principle, today's weather determines tomorrow's. In practice nobody could solve the equations.
Lewis Fry Richardson decided to compute instead. He divided the atmosphere into boxes, replaced derivatives by differences between neighbouring boxes, and stepped the equations forward in time by arithmetic. During the First World War, between shifts with an ambulance unit in France, he computed a six-hour forecast for two points in central Europe. It took about six weeks. The result was a change in pressure of 145 hectopascals in six hours, when the real pressure barely changed. He published the whole calculation in 1922, with the failure stated plainly, and imagined a hall of 64,000 people computing the world's weather in time. Much later, Peter Lynch recomputed the forecast and showed that the method was sound. The starting data were unbalanced, and a small smoothing would have given a sensible answer.
Chapter II
Stability
In 1928 Richard Courant, Kurt Friedrichs and Hans Lewy studied grid equations for a different reason: to prove that certain partial differential equations have solutions, by showing that grid solutions converge as the grid is refined. They found that for wave-like equations this happens only if the time step is small enough compared with the grid spacing. If a wave can cross more than one cell in a single step, the grid cannot follow it.
The condition became essential when electronic computers arrived. In 1950 Jule Charney, working with John von Neumann and Ragnar Fjørtoft, ran the first computer weather forecast on the ENIAC. Charney had simplified the equations to remove the fast gravity waves that had wrecked Richardson's forecast, and chose time steps that respected the CFL condition. Each 24-hour forecast took about 24 hours to compute, but the results were realistic. Von Neumann also developed a way to test a scheme's stability by following each wave pattern separately, and in 1956 Peter Lax and Robert Richtmyer proved that, for linear problems, a consistent scheme converges exactly when it is stable.
Chapter III
Elements and Grids
Grids of squares suit the atmosphere but not an aircraft wing. In the 1950s engineers, among them Ray Clough, working with a Boeing team, and John Argyris in London, broke structures into small triangular and rectangular elements, each with simple behaviour, joined at their corners. Clough named it the finite element method in 1960. Courant had proposed the same idea in 1943, as a way to solve variational problems, and mathematicians later proved that the engineers' method converges and how fast. It is now the standard tool for anything with a complicated shape.
Solving the resulting equations was the next bottleneck. A fine three-dimensional mesh has millions of unknowns, and simple iterative methods need many thousands of sweeps to converge, because smooth errors fade slowly. Radii Fedorenko saw in 1964 that a coarser grid could remove those smooth errors cheaply, and Achi Brandt turned the idea into the general multigrid method in 1977. Together with the linear algebra of conjugate gradients, it made problems with billions of unknowns solvable.
Chapter IV
A Closer Look: The CFL Condition
The simplest wave-like equation says that a pattern moves to the right at speed without changing shape:
Put it on a grid with spacing and time step . The upwind scheme updates each value from itself and its left-hand neighbour:
The number , the Courant number, is the number of cells the pattern moves in one step. If , the new value is , a weighted average of two old values, so it can never exceed the largest of them. If , the weight is negative and nothing holds the values in check.
To see what happens, add a tiny sawtooth ripple of size 0.001 that alternates in sign from cell to cell, like rounding error. For this ripple , so each step multiplies it by :
| Courant number | Factor per step | Ripple after 20 steps |
|---|---|---|
| 0.5 | 0 | 0 |
| 1.0 | −1 | 0.001 |
| 1.5 | −2 | about 1,000 |
| 2.0 | −3 | about 3.5 million |
At the ripple, started at one thousandth, is 3.5 million after 20 steps. No real wave did that. The computation has exploded.
Now take a weather model with a 10-kilometre grid and winds of up to 100 metres per second. The condition requires seconds, so at least 864 steps for a one-day forecast. Sound waves, at about 340 metres per second, would force steps under 30 seconds. That is why Charney filtered out the fast waves, and why modern models treat them with implicit methods that are not bound by the condition.
Chapter V
From Grids to Spacetime
The same methods now simulate almost every physical system. The hardest test came from general relativity. For decades simulations of two orbiting black holes crashed after a fraction of an orbit, as small errors in Einstein's equations grew without limit. The instability was not in the grid but in the way the equations were written. In 2005 Frans Pretorius found a formulation that stayed stable and followed two black holes through their merger. Ten years later, LIGO's first detection was matched against such simulations. The underlying mathematics is still incomplete, and for the equations of gas dynamics in more than one dimension it is not known whether the simulations converge at all.