Implementation
The forest is modelled as a cellular automaton where each cell has can be in one of two states: empty
or tree
.
The update procedure is as follows: in each iteration step, iterate over all cells in a random order. For each cell, one of two actions can take place, depending on the current state of the cell:
- An
empty
cell becomes atree
with probabilityp_growth
. - A
tree
ignites with a probabilityp_lightning
and ignites all cells indirectly connected to it. The cluster burns down instantaneously and all cells transition to stateempty
.
The new state of a cell is applied directly after it was iterated over, i.e. cell states are updated sequentially.
Heterogeneities
There is the possibility to introduce heterogeneities into the grid, which are implemented as two additional possible cell states: source
and stone
:
- A cell can be a constantly ignited fire
source
, instantly burning down a cluster that comes into contact with it. - A cell can be a
stone
, being immune to fire and not taking part in any model dynamics.
These heterogeneities are controlled via the ignite_permanantly
and stones
entries of the model configuration, which both make use of the entity selection interface.
Data Output
The following data is stored alongside the simulation:
-
kind
: the state of each cell. Possible values:0
:empty
1
:tree
2
: (not used)3
:source
, is constantly ignited4
:stone
, does not take part in any interaction
-
age
: the age of each tree, reset after lightning strikes -
cluster_id
: a number identifying to which cluster a cell belongs;0
for non-tree cells -
tree_density
: the global tree density
References
- Per Bak, Kan Chen, and Chao Tang, 1990: A forest-fire model and some thoughts on turbulence, Physics Letters A, 147, (5-6), 297–300, DOI: 10.1016/0375-9601(90)90451-S.
- Barbara Drossel and Franz Schwabl, 1992: Self-organized critical forest-fire model, Physical Review Letters, 69, 1629, DOI: 10.1103/PhysRevLett.69.1629