clStochasticBiLevelMortality Class Reference

Stochastic Bi-Level Mortality - Version 1.0. More...

#include <StochasticBiLevelMortality.h>

Inheritance diagram for clStochasticBiLevelMortality:

clMortalityBase clBehaviorBase clWorkerBase

List of all members.

Public Member Functions

 clStochasticBiLevelMortality (clSimManager *p_oSimManager)
 Constructor.
 ~clStochasticBiLevelMortality ()
 Destructor.
void DoShellSetup (xercesc::DOMDocument *p_oDoc)
 Reads in values from the parameter file.
whyDead DoMort (clTree *p_oTree, const float &fDbh, const short int &iSpecies)
 Calculates mortality.

Protected Attributes

clGridBasemp_oStormLight
 "Storm Light" grid object
clTreePopulationmp_oPop
 Tree population - for getting data codes.
float * mp_fLoLightMortProb
 Probability of mortality at low light - sized number of behavior species.
float * mp_fHiLightMortProb
 Probability of mortality at low light - sized number of behavior species.
float * mp_fHiLightThreshold
 Threshold between low light and high light mortality, as a value between 0 and 100 - sized number of behavior species.
int * mp_iIndexes
 To help access the other arrays.
int m_iLightCode
 Code for the "Light" data member of the "Storm Light" grid.


Detailed Description

Stochastic Bi-Level Mortality - Version 1.0.

This evaluates mortality at a constant rate, with a separate rate at high and low light for each species. Trees are chosen at random to die.

Light levels come from the "Storm Light" grid object produced by clStormLight.

This class's namestring is "stochastic bilevel mortshell". The parameter file call string is "Stochastic Bi-Level Mortality".

Copyright 2005 Charles D. Canham.

Author:
Lora E. Murphy

Edit history:
-----------------
October 31, 2005 - Created (LEM)
February 8, 2008 - Changed mortality flags from simple booleans to reason codes (LEM)

Constructor & Destructor Documentation

clStochasticBiLevelMortality::clStochasticBiLevelMortality ( clSimManager p_oSimManager  ) 

Constructor.

Parameters:
p_oSimManager Sim Manager object.

clStochasticBiLevelMortality::~clStochasticBiLevelMortality (  ) 

Destructor.


Member Function Documentation

void clStochasticBiLevelMortality::DoShellSetup ( xercesc::DOMDocument *  p_oDoc  )  [virtual]

Reads in values from the parameter file.

Parameters:
p_oDoc DOM tree of parsed input file.
Exceptions:
modelErr if the "Storm Light" grid is missing, or if any mortality rate is not between 0 and 1.

Reimplemented from clMortalityBase.

whyDead clStochasticBiLevelMortality::DoMort ( clTree p_oTree,
const float &  fDbh,
const short int &  iSpecies 
) [virtual]

Calculates mortality.

This retrieves the light level in the tree's grid cell. If it is above the threshold, the high-light mortality probability is used. If it is below the threshold, the low-light probability is used. A random number is compared to the appropriate rate to see if the tree lives or dies.

Parameters:
p_oTree Tree being evaluated
fDbh Tree's DBH
iSpecies Species of the tree being evaluated
Returns:
natural if the tree is to die, notdead if it lives.

Implements clMortalityBase.


Member Data Documentation

"Storm Light" grid object

Tree population - for getting data codes.

Probability of mortality at low light - sized number of behavior species.

This value comes from the parameter file as an annual probability, which is transformed in DoShellSetup() to a timestep probability.

Probability of mortality at low light - sized number of behavior species.

This value comes from the parameter file as an annual probability, which is transformed in DoShellSetup() to a timestep probability.

Threshold between low light and high light mortality, as a value between 0 and 100 - sized number of behavior species.

To help access the other arrays.

Code for the "Light" data member of the "Storm Light" grid.


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

Generated on Wed Oct 28 13:58:49 2009 for SORTIE Core C++ Documentation by  doxygen 1.5.6