clBrowsedRelativeGrowth Class Reference

Browsed relative Michaelis-Menton growth - Version 1.0. More...

#include <BrowsedRelativeGrowth.h>

Inheritance diagram for clBrowsedRelativeGrowth:

clGrowthBase clBehaviorBase clWorkerBase

List of all members.

Public Member Functions

 clBrowsedRelativeGrowth (clSimManager *p_oSimManager)
 Constructor.
 ~clBrowsedRelativeGrowth ()
 Destructor.
float CalcDiameterGrowthValue (clTree *p_oTree, clTreePopulation *p_oPop, float fHeightGrowth)
 Applies growth as described in the equation above.
void SetNameData (char *cNameString)
 Captures the behavior name passed from the parameter file.
void DoShellSetup (xercesc::DOMDocument *p_oDoc)
 Does setup.

Protected Attributes

float * mp_fUnbrowsedS
 Slope of growth response, unbrowsed.
float * mp_fBrowsedS
 Slope of growth response, browsed.
float * mp_fUnbrowsedA
 Asymptotic diameter growth, unbrowsed.
float * mp_fBrowsedA
 Asymptotic diameter growth, browsed.
float * mp_fUnbrowsedDiamExp
 Diameter exponent, unbrowsed.
float * mp_fBrowsedDiamExp
 Diameter exponent, browsed.
short int ** mp_iLightCodes
 Codes for "Light" data member.
short int ** mp_iBrowsedCodes
 Codes for "Browsed" data member.
float m_fNumberYearsPerTimestep
 Number of years per timestep - from sim manager.
short int m_iNumSpecies
 Number of species.


Detailed Description

Browsed relative Michaelis-Menton growth - Version 1.0.

This is a growth shell object which applies the Michaelis-Menton function to find relative growth. There are two growth rates: one for browsed, and one for unbrowsed.

Browsedness is determined by the Random Browse behavior (class clRandomBrowse). This class expects that behavior to be enabled and the "Browsed" bool data member to be present for all trees to which this behavior is applied.

The growth equation is:

Y = (A * gli) / ((A/S) + gli)
where Y is the relative annual radial growth, A is asymptotic diameter growth, gli is the amount of light, and S is the slope of growth response.

The actual amount of new growth is:

G = ((Y + 1)T - 1) * diamQ
where Y is from the equation above, T is the number of years per timestep, diam is the tree's diameter, and Q is the diameter exponent.

(There are some strangenesses in the math - 1s are added and subtracted at various times and I don't know why. This is based on code I didn't originally write.)

The namestring for this class is "browsedrelgrowthshell". Call in the parameter file via "browsed relative growth" or "browsed relative growth diam only".

Copyright 2007 Charles D. Canham.

Author:
Lora E. Murphy

Edit history:
-----------------
March 14, 2007 - Created (LEM)

Constructor & Destructor Documentation

clBrowsedRelativeGrowth::clBrowsedRelativeGrowth ( clSimManager p_oSimManager  ) 

Constructor.

Parameters:
p_oSimManager Sim Manager object.

clBrowsedRelativeGrowth::~clBrowsedRelativeGrowth (  ) 

Destructor.


Member Function Documentation

float clBrowsedRelativeGrowth::CalcDiameterGrowthValue ( clTree p_oTree,
clTreePopulation p_oPop,
float  fHeightGrowth 
) [virtual]

Applies growth as described in the equation above.

Parameters:
p_oTree Tree for which to calculate growth.
p_oPop Tree population.
fHeightGrowth Amount of height growth, in m (ignored).
Returns:
Amount of growth increase, in cm.

Reimplemented from clGrowthBase.

void clBrowsedRelativeGrowth::SetNameData ( char *  cNameString  )  [virtual]

Captures the behavior name passed from the parameter file.

This is useful since this class can produce a few different kinds of behaviors.

Parameters:
cNameString Behavior name from parameter file.

Reimplemented from clBehaviorBase.

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

Does setup.

Reads in values from the parameter file,, and validates that all species/type combos use light and browse.

Parameters:
p_oDoc DOM tree of parsed input file.
Exceptions:
modelErr if any species/type combo to which this behavior is applied does not have a light behavior or the browse behavior.

Reimplemented from clGrowthBase.


Member Data Documentation

Slope of growth response, unbrowsed.

Array size is number of species.

Slope of growth response, browsed.

Array size is number of species.

Asymptotic diameter growth, unbrowsed.

Array size is number of species.

Asymptotic diameter growth, browsed.

Array size is number of species.

Diameter exponent, unbrowsed.

Array size is number of species

Diameter exponent, browsed.

Array size is number of species

short int** clBrowsedRelativeGrowth::mp_iLightCodes [protected]

Codes for "Light" data member.

Array size is number of species by number of types.

Codes for "Browsed" data member.

Array size is number of species by number of types.

Number of years per timestep - from sim manager.

Number of species.

For destructor.


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

Generated on Tue Apr 19 13:56:07 2011 for SORTIE Core C++ Documentation by  doxygen 1.5.6