iLand
Public Member Functions | Static Public Member Functions | Friends | List of all members
FireModule Class Reference

FireModule is the main class of the fire sub module. More...

#include <firemodule.h>

Public Member Functions

 FireModule ()
 
void setup ()
 the setup function sets up the grids and parameters used for the fire module. More...
 
void setup (const ResourceUnit *ru)
 setup for a specific resource unit More...
 
void setScriptObj (FireScript *sm)
 
void run ()
 main function that is executed yearly (called by the plugin) performs the major processes (ignition, spread, fire effect) More...
 
void yearBegin ()
 called yearly from the plugin to perform some cleanup. More...
 
void calculateDroughtIndex (const ResourceUnit *resource_unit, const WaterCycleData *water_data)
 called from the plugin to perform calculations (drought indices) during the water cycle routine. More...
 
double ignition (bool only_ignite=false)
 calculate the start and starting point of a possible fire. return: burnt area (-1 if nothing burnt) More...
 
void spread (const QPoint &start_point, const bool prescribed=false)
 spread a fire starting from 'start_point' (index of the 20m grid) More...
 
void severity ()
 
int fireId () const
 return the ID of the last fire event More...
 
double fireX () const
 coordinates of the ignition point More...
 
double fireY () const
 coordinates of the ignition point More...
 
void testSpread ()
 
double prescribedIgnition (const double x_m, const double y_m, const double firesize, const double windspeed, const double winddirection)
 
double burnInIgnition (const double x_m, const double y_m, const double length, double max_fire_size, bool simulate=false)
 triggers a burn-in at 'x' and 'y' (iLand coordinate system) with a length (along the border) of 'length'. More...
 

Static Public Member Functions

static double cellsize ()
 

Friends

class FireOut
 
class FireScript
 
class FireLayers
 

Detailed Description

FireModule is the main class of the fire sub module.

FireModule holds all the relevant data/actions for the iLand fire module. See http://iland-model.org/wildfire and http://iland-model.org/fire+module

The fire module has conceptually three parts that stand more or less on its own: Fire ignition Fire spread Fire severity/effect

Constructor & Destructor Documentation

◆ FireModule()

FireModule::FireModule ( )

Member Function Documentation

◆ burnInIgnition()

double FireModule::burnInIgnition ( const double  x_m,
const double  y_m,
const double  length,
double  max_fire_size,
bool  simulate = false 
)

triggers a burn-in at 'x' and 'y' (iLand coordinate system) with a length (along the border) of 'length'.

If 'simulate' is true, no fire spread happens returns the realized fire (m2)

◆ calculateDroughtIndex()

void FireModule::calculateDroughtIndex ( const ResourceUnit resource_unit,
const WaterCycleData water_data 
)

called from the plugin to perform calculations (drought indices) during the water cycle routine.

perform the calculation of the KBDI drought index.

see http://iland-model.org/wildfire#fire_ignition

◆ cellsize()

static double FireModule::cellsize ( )
inlinestatic

◆ fireId()

int FireModule::fireId ( ) const
inline

return the ID of the last fire event

◆ fireX()

double FireModule::fireX ( ) const
inline

coordinates of the ignition point

◆ fireY()

double FireModule::fireY ( ) const
inline

coordinates of the ignition point

◆ ignition()

double FireModule::ignition ( bool  only_ignite = false)

calculate the start and starting point of a possible fire. return: burnt area (-1 if nothing burnt)

evaluates the probability that a fire starts for each cell (20x20m) see http://iland-model.org/wildfire#fire_ignition

◆ prescribedIgnition()

double FireModule::prescribedIgnition ( const double  x_m,
const double  y_m,
const double  firesize,
const double  windspeed,
const double  winddirection 
)

◆ run()

void FireModule::run ( )

main function that is executed yearly (called by the plugin) performs the major processes (ignition, spread, fire effect)

main function of the fire module.

◆ setScriptObj()

void FireModule::setScriptObj ( FireScript sm)
inline

◆ setup() [1/2]

void FireModule::setup ( )

the setup function sets up the grids and parameters used for the fire module.

this should be called when the main model is already created. general setup

◆ setup() [2/2]

void FireModule::setup ( const ResourceUnit ru)

setup for a specific resource unit

◆ severity()

void FireModule::severity ( )

◆ spread()

void FireModule::spread ( const QPoint &  start_point,
const bool  prescribed = false 
)

spread a fire starting from 'start_point' (index of the 20m grid)

calculate the actual fire spread.

◆ testSpread()

void FireModule::testSpread ( )

◆ yearBegin()

void FireModule::yearBegin ( )

called yearly from the plugin to perform some cleanup.

yearBegin is called at the beginnig of every year.

do some cleanup here.

Friends And Related Function Documentation

◆ FireLayers

friend class FireLayers
friend

◆ FireOut

friend class FireOut
friend

◆ FireScript

friend class FireScript
friend

Member Data Documentation

◆ fire_psme_died

double FireModule::fire_psme_died

psme (doug fir) that died during the fire (based on m2)

◆ fire_psme_total

double FireModule::fire_psme_total

psme (doug fir) on burning pixels (m2 basal area)

◆ fire_size_plan_m2

int FireModule::fire_size_plan_m2

◆ fire_size_realized_m2

int FireModule::fire_size_realized_m2

◆ iterations

int FireModule::iterations

◆ startpoint

QPointF FireModule::startpoint

The documentation for this class was generated from the following files: