11 timeSinceFire Module

This documentation is work in progress. Please report any discrepancies or omissions at https://github.com/fRI-Research/timeSinceFire/issues.

11.0.0.1 Authors:

Steve G Cumming [aut, cre], Alex M. Chubaty [ctb]

11.1 Module Overview

11.1.1 Module summary

Yet Another Age Map Maintainer. This one is peculiar to the LandWeb application.

ageMap is incremented without bound on all flammable cells; cells identified as having been burned in the current year are set to 0.

Any statistics on age structure are to be calculated here, but none are yet implemented…because with the current fire model they would be pretty boring.

11.1.2 Module inputs and parameters

Table 11.1 shows the full list of module inputs.

Table 11.1: List of timeSinceFire input objects and their description.
objectName objectClass desc sourceURL
fireReturnInterval RasterLayer A Raster where the pixels represent the fire return interval, in years. NA
rstCurrentBurn RasterLayer Binary raster of fires, 1 meaning ‘burned’, 0 or NA is non-burned NA
rstFlammable RasterLayer A binary Raster, where 1 means ‘can burn’. NA
rstTimeSinceFire RasterLayer A Raster where the pixels represent the number of years since last burn. NA

A summary of user-visible parameters is provided in Table 11.2.

Table 11.2: List of timeSinceFire parameters and their description.
paramName paramClass default min max paramDesc
fireTimestep integer 1 NA NA The number of time units between successive fire events.
returnInterval numeric 1 NA NA interval between main events
startTime numeric 0 NA NA time of first burn event
.plotInitialTime numeric NA NA NA simulation time at which the first plot event should occur
.plotInterval numeric NA NA NA simulation time at which the first plot event should occur
.plots character screen NA NA Passed to types in Plots (see ?Plots). There are a few plots that are made within this module, if set. Note that plots (or their data) saving will ONLY occur at end(sim). If NA, plotting is turned off completely (this includes plot saving).
.saveInitialTime numeric NA NA NA simulation time at which the first save event should occur
.saveInterval numeric NA NA NA simulation time at which the first save event should occur
.useCache logical FALSE NA NA simulation time at which the first save event should occur

11.1.3 Events

11.1.3.1 Init

The Init event creates the RasterLayer rstTimeSinceFire. To do this, it rasterizes the template vegetation map LCC05 using the FireReturnInterval field of the SpatialPoygonDataFrame shpStudyRegion. This procedure retains the NAs which mask the actual study region within the template bounding rectangle.

Then, the RasterLayer rstFlammable is used to mask out areas of open water, rock, etc which can’t burn and thus for which timeSinceFire is not applicable. These become NAs in rstTimeSinceFire.

The results is that all flammable cells within each polygon in the shapefile are set to the fire return interval specified for that polygon / ecoregion. Under the basic van Wagner model being implemented, this is the expected landscape mean age. The ecoregion age structure will equilibrate to the exponential distribution within a few multiples of the return interval.

No colour ramp or legend is created for this layer.

In the short term, this initial uniform age distribution will result in very high proportions of cells with TSFs greater than the return interval. If this becomes a problem, one could initialize to the regional median age. This can be done by multiplying the FireReturnInterval by \(log(2)\) and then rounding; or some other lower quantile could be chosen: see the wikipedia page for the general quantile function.

Alternatively, a random exponential age structure could be generated for each ecoregion from the current rstTimeSinceFire, roughly as follows. See the wiki page for details and possible alternative methods.

U_ <- runif(ncell(rstTimeSinceFire))
T_ <- (-log(U_)) * rstTimeSinceFire[]
rstTimeSinceFire[] <- round(T_)

11.1.3.2 Plotting

A bare call to Plot(sim$rstTimeSinceFire). If you really want to see this, you’ll have to live with the automated colour scheme and legend, or hack Init to your satisfaction.

11.1.3.3 Saving

Nothing is saved at present.

11.1.3.4 Age

This is the main event. rstFlammable is incremented by one. Then burned cells, as specified in the input vector burnLoci are set to age 0.

11.1.4 Module outputs

Description of the module outputs (Table 11.3).

Table 11.3: List of timeSinceFire outputs and their description.
objectName objectClass desc
burnLoci integer Cell indices where burns occurred in the latest year. It is derived from rstCurrentBurn.
rstTimeSinceFire RasterLayer A Raster where the pixels represent the number of years since last burn.

11.1.5 Code and data availability

Code available from https://github.com/fRI-Research/timeSinceFire.