This Demonstration shows the contagion effect inherent in a spreading fire. The focus is not so much on the complex movement of the fire as on its spread, given an individual tree's wetness percentage. The power of rule-based recursion and injected randomness are used to achieve the contagion effect. Red cells are burning and black cells are burned; the total burn area is the sum of the red and black cells.
Next to "start/pause fire spread model" are "play" and "pause" buttons. Press the play button to start, and note it may take a few moments for the fire to start spreading. The pause button will pause the fire, allowing for a change in tree wetness. Clicking the play button then lets the fire continue.
This is an unusual fire spread model in that a self-call to a nesting construct is the basis of the program. The rule implemented with each self-call simply requires that a tree be set ablaze if a single neighboring tree is burning; the burn neighborhood consists of nine trees, including the current tree location. The control variable "start/pause fire spread model" controls the self-call nesting and maintains an expanding fire. After roughly one-third of the tree grid has burned or is burning, and the control variable "tree wetness (%)" is zero or very low, the fire may be observed to be self-sustaining, like a sustained nuclear chain reaction or a percolation phase change dynamic (the fire is self-sustaining; when pausing, "start/pause fire spread model" does not stop the fire). Once the burn is self-sustaining, the only way to stop it is by saturating "tree wetness (%)" at the high end of its scale, which should always stop the fire. The self-sustaining effect is triggered by the improved statistics of finding a burning tree in the tree grid after a fair number of trees are burning or burned, and is then driven by self-calling recursion. In consideration of the experiment, the control variable "tree wetness (%)" could be calibrated to improve the model's fidelity.