Whether a fire burns through a forest depends on a single number: the density of trees.
Plant a forest at random and light one tree. Fire spreads to neighboring trees each step. Empty cells don't burn; burned trees can't burn again.
Sparse forests stop fires quickly; dense ones burn entirely from one spark. The transition is sharp — a critical density called the percolation threshold.
Ignition probability is the chance that a burning cell lights each adjacent tree on a given step. At 100% the fire is deterministic; lower values simulate damp wood. Wind biases that probability in one direction: downwind neighbors catch easily, upwind neighbors are spared. The presets bundle all three knobs into named regimes.
Figure 1. A square-lattice forest with adjustable density, ignition probability, and wind. Click any tree to set it alight, or use the Ignite presets. Try density 40% and a fire burns a small cluster and stops; try 75% and a single spark consumes most of the grid. The dividing line is near 59%.
For each density, generate a random forest, ignite the left edge, and measure fraction burned. Repeat and average.
The result is an S-curve, near zero at low density and shooting up at — the site percolation threshold for a square lattice.
Figure 2. Fraction of forest burned vs. tree density. Each point averages multiple trials on a 100×100 grid. The vertical dashed line marks the critical threshold . Drag the blue line to change the density in the forest above.
Fire is one way to think about it. Another is pure connectivity. Forget the fire and just look at the trees. Two trees are connected if they are neighbors (up, down, left, or right). A connected cluster is a group of trees where you can walk from any tree to any other through adjacent trees.
Below the threshold, all clusters are small and isolated. Above the threshold, one giant cluster appears that spans the entire grid. At exactly the critical point, clusters of all sizes exist and their size distribution follows a power law.
Figure 3. The largest connected cluster is red. All other clusters are shades of green. Above the critical density, one giant cluster spans from edge to edge.
Count how many clusters of each size exist. On a log-log plot, at the critical point, the distribution is a straight line. That is a power law. Away from the critical point, the distribution bends. This power-law behavior at criticality is a hallmark of phase transitions.
Figure 4. Cluster size distribution on log-log axes. At the critical density, the distribution follows a power law, appearing as a straight line.
The percolation threshold is universal. It depends only on the lattice geometry, not on what is percolating. The same math describes forest fires, epidemics in sparse networks, the flow of coffee through grounds, and the conductivity of random resistor networks.
For a square lattice with site percolation, . For a triangular lattice, it is exactly 1/2. For bond percolation on a square lattice, it is also exactly 1/2. The geometry sets the number. Everything else is detail.
So far the forest has been frozen. We plant it once, ignite it, watch it burn. The question has been a question about a snapshot: is the initial density above or below ? To get a fire at all we have to tune the density by hand. Nature does not usually hand us a knob.
Let the forest regenerate. In the Drossel-Schwabl model, two things happen every time step. Empty cells sprout a tree with probability . Existing trees get hit by lightning with probability . A struck tree burns its entire connected cluster to ash in a single flash, and the ash becomes empty ground ready for new growth. Fires are no longer one-shot events; they are a permanent feature of the landscape.
When , growth is slow compared with the pause between lightning strikes. The forest thickens between fires, approaches the connectivity threshold, and then a single spark clears out a big cluster. Density relaxes, and the cycle begins again. The system hovers near criticality on its own, with no slider required. That is self-organized criticality.
Figure 5. The Drossel-Schwabl model. Trees grow at rate ; lightning strikes trees at rate . Watch the density climb between fires and crash down when a big cluster ignites.
The small-fire preset pushes lightning high enough that fires keep the forest thin and patchy. The large-fire preset makes lightning rare, so the forest grows dense and the occasional strike clears a continent. The critical preset sits in between, and it is there that the fire-size distribution stretches across every scale the grid can hold.
Record the size of every fire. On log-log axes the histogram becomes a straight line with slope roughly . That is not the percolation power law from earlier: the earlier plot counted static clusters at a single hand-tuned density. This one counts dynamic events, each born from a different density the system visited on its way to and from the threshold. Same algebraic signature, different physics.
Figure 6. Fire-size distribution on log-log axes. Small fires dominate, but landscape-scale fires are a predictable tail of the same rule. The dashed red line is a linear fit to the binned log-log points.
Percolation needs a tuner. Someone (or something) has to set density right on the knife edge , or the dramatic fires do not happen. The Drossel-Schwabl model needs no tuner. Slow accumulation plus fast release drives the system to the edge and holds it there.
The same template (slow drive, threshold instability, cascading release) shows up in sandpile avalanches, earthquake magnitudes, neural avalanches, and the distribution of real wildfire sizes. Catastrophes of every size are not exceptions. They are what the rule looks like when you plot it on the right axes.