Skip to main content

Spatio-Temporal State Space

A spatio-temporal state space (or simply, state space) is the set of all spatial and non-spatial variables and constants — including their ranges of values and spatial bounds — combined with a time unit.

  • Global and spatial constants do not vary over time by definition. Spatial constants may vary over space (e.g. elevation); global constants do not.
  • Global variables may vary over time but not space (e.g. cumulative area burned).
  • Spatial variables may vary over both space and time (e.g. tree stand age).

3.1 Defining a Spatio-Temporal State Space

A SELES dynamic model (defined in a .sel file) defines the state space as well as the set of landscape events that change state variables over time during a simulation.

A SELES state space can consist of the following element types:

TypeVaries over space?Varies over time?Example
Global constantNoNoMaxStandAge — maximum representable stand age
Global variableNoYesFireRotation, WindDirection — broad-scale state accessible by any event
Spatial constantYesNoElevation — assuming geologic processes are not modelled
Spatial variableYesYesStandAge — changes through disturbance and succession

Parameters can generally be viewed as any input that sets the initial conditions of a model, though most often they refer to elements of the state space designed to be modified between scenarios.

Global constants and variables may be single values, one-dimensional arrays (vectors), or two-dimensional arrays (matrices).


3.2 Spatio-Temporal Contexts

At its core, SELES is a tool to define a state space and models of processes (landscape events) that navigate that state space over time, making changes to state variables. The simulation engine carries out this defined process.

The time and place of landscape change is abstractly called a spatio-temporal context (or simply, context). Examples include:

  • The time and place a stand-replacing fire burns a stand (e.g. stand age set to 0).
  • The time and place a road is built (e.g. changes to road and land cover layers).
  • The time and place a logging cutblock is initiated (e.g. changes to target block size).
  • The time at which fire rotation changes due to climate change (no spatial location in this case).
  • The time at which spatial or non-spatial output is written to file (contexts also cover model control).

In a spatio-temporal context, the model has access to variable values unique to that time and grid cell. Variables and constants at that time and place can be used to modify event behaviour, and the event can modify those variables in turn.

In practical terms, a context is the set of variables available in a given section of a landscape event.

Context Types

The general process algorithm of landscape events can be mapped to specific context types:

StepContext TypeDescription
Simulation start-up (Initial State)Global ContextNo spatial location, no active process
Event recurrence (Return Rate)Event Instance ContextNon-spatial; active event instance not yet initiated in any cells
Event initiationSpatial ContextActive Cell ContextIdentifies cells in which event initiates; moves from potential cells to active ones
Occurrence testActive Cell ContextTests if event continues; terminates cell if test fails
Event spreadActive Cell ContextRecipient ContextActive Recipient ContextIdentifies cells to spread to; creates new active cells
Post-spreadActive Cell ContextSpreading cell deactivated; recipients become active cells; loop continues with occurrence testing

Figure 4 — Spatio-temporal contexts associated with steps of the general landscape event process algorithm. Contexts progress from Global → Event Instance → Spatial → Active Cell → Recipient → Active Recipient.

(Diagram from original documentation — to be recreated)

Why Contexts Matter

Certain state information is only available in certain contexts, and this can be essential for modelling specific processes. For example, a wildfire model that tracks fire intensity may need a unique intensity value for each burning cell (available in an Active Cell Context). When the fire spreads, the intensity of a new burning cell can depend on the intensity of the spreading cell — accessed during the spread step in an Active Recipient Context, before the spreading cell terminates.