clTomasGrowth Class Reference

Increments height growth according to an equation originally developed for New Zealand seedling growth. More...

#include <TomasGrowth.h>

Inheritance diagram for clTomasGrowth:

clGrowthBase clBehaviorBase clWorkerBase

List of all members.

Public Member Functions

 clTomasGrowth (clSimManager *p_oSimManager)
 Constructor.
 ~clTomasGrowth ()
 Destructor.
float CalcHeightGrowthValue (clTree *p_oTree, clTreePopulation *p_oPop, float fDiameterGrowth)
 Calculates the amount of height growth increase for a particular tree using the growth equation described ablove.
void DoShellSetup (xercesc::DOMDocument *p_oDoc)
 Does setup.

Protected Attributes

float * mp_fAlpha
 alpha - sized number of behavior species
float * mp_fBeta
 beta - sized number of behavior species
float * mp_fPhi
 phi - sized number of behavior species
float * mp_fGamma
 gamma - 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.


Detailed Description

Increments height growth according to an equation originally developed for New Zealand seedling growth.

This behavior can only be used to create a height growth increment.

The equation used in this behavior is:

Y = (2αGLI) / (GLI + α/β) * Hφ - γ
where

This is looped over the number of years per timestep, allowing H to increment at each intermediate year.

All trees must have the "Light" data member registered (i.e. must have a light behavior applied).

The name string is "tomasgrowthshell". The parameter file call string is "tomas growth height only".

Copyright 2008 Charles D. Canham.

Author:
Lora E. Murphy

Edit history:
-----------------
October 31, 2008 - Created (LEM)

Constructor & Destructor Documentation

clTomasGrowth::clTomasGrowth ( clSimManager p_oSimManager  ) 

Constructor.

Sets the namestring.

clTomasGrowth::~clTomasGrowth (  ) 

Destructor.

Frees memory.


Member Function Documentation

float clTomasGrowth::CalcHeightGrowthValue ( clTree p_oTree,
clTreePopulation p_oPop,
float  fDiameterGrowth 
) [virtual]

Calculates the amount of height growth increase for a particular tree using the growth equation described ablove.

Parameters:
p_oTree Tree for which to calculate growth.
p_oPop Tree population object, just in case it's needed.
fDiameterGrowth Diameter growth, in cm.
Returns:
Amount, in m, by which to increase the tree's height.

Reimplemented from clGrowthBase.

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

Does setup.

Reads in values from the parameter file, and validates that all species/type combos use light (each must have "Light" registered).

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 if = 0.

Reimplemented from clGrowthBase.


Member Data Documentation

float* clTomasGrowth::mp_fAlpha [protected]

alpha - sized number of behavior species

float* clTomasGrowth::mp_fBeta [protected]

beta - sized number of behavior species

float* clTomasGrowth::mp_fPhi [protected]

phi - sized number of behavior species

float* clTomasGrowth::mp_fGamma [protected]

gamma - sized number of behavior species

int* clTomasGrowth::mp_iIndexes [protected]

To help access the other arrays.

Conversion factor to translate the results of the function to the appropriate units per timestep.


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

Generated on Fri Oct 31 08:30:55 2008 for SORTIE Core C++ Documentation by  doxygen 1.5.6