clLogisticBiLevelMortality Class Reference

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

#include <LogisticBiLevelMortality.h>

Inheritance diagram for clLogisticBiLevelMortality:

clMortalityBase clBehaviorBase clWorkerBase List of all members.

Public Member Functions

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

Protected Attributes

clGridBasemp_oStormLight
 "Storm Light" grid object
clTreePopulationmp_oPop
 Tree population - for getting data codes.
float * mp_fLoLightB
 Mortality equation low light "b" - sized number of behavior species.
float * mp_fLoLightA
 Mortality equation low light "a" - sized number of behavior species.
float * mp_fHiLightB
 Mortality equation high light "b" - sized number of behavior species.
float * mp_fHiLightA
 Mortality equation high light "a" - 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.
float m_fYearsPerTimestep
 Conversion factor to translate the results of the function to the appropriate units per timestep.
int m_iLightCode
 Code for the "Light" data member of the "Storm Light" grid.

Detailed Description

Logistic Bi-Level Mortality - Version 1.0.

This evaluates mortality according to a logistic equation, with the possibility of two sets of parameters for each species. The two sets of parameters can be used for two different mortality rates at high and low light.

The equation used in this behavior is:

p = exp(a + b * D) / (1 + exp(a + b * D))
where

This behavior can also take into account light levels coming from the "Storm Light" grid object produced by clStormLight. This behavior can use two different sets of parameter values - one at low light and one at high light. The user sets the threshold between the two. The equation remains the same.

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

Copyright 2005 Charles D. Canham.

Author:
Lora E. Murphy

Edit history:
-----------------
May 5, 2005 - Created (LEM)


Constructor & Destructor Documentation

clLogisticBiLevelMortality::clLogisticBiLevelMortality ( clSimManager p_oSimManager  ) 

Constructor.

Parameters:
p_oSimManager Sim Manager object.


Member Function Documentation

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

Calculates mortality according to the logistic equation.

If the light grid is present, this retrieves the light level in the tree's grid cell. If it is above the threshold, the high-light parameters are used. If it is below the threshold, the low-light parameters are used. If the light grid is not present, the low-light parameters are used.

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

Implements clMortalityBase.

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

Reads in values from the parameter file.

Parameters:
p_oDoc DOM tree of parsed input file.

Reimplemented from clMortalityBase.


The documentation for this class was generated from the following file:
Generated on Wed Nov 29 08:42:22 2006 for SORTIE Core C++ Documentation by  doxygen 1.4.7