SORTIE Core C++ Documentation
|
Density Self Thinning - Version 1.0. More...
#include <DensitySelfThinning.h>
Public Member Functions | |
clDensitySelfThinning (clSimManager *p_oSimManager) | |
Constructor. More... | |
~clDensitySelfThinning () | |
Destructor. More... | |
void | DoShellSetup (xercesc::DOMDocument *p_oDoc) |
Reads in values from the parameter file and makes sure all data needed is collected. More... | |
void | CalculateNeighborhoodTreeCountAndMeanDiam10 (clTree *p_oTree, float *p_fTreeCount, float *p_fMeanDiam10) |
Calculates the number of neighborhood trees and their mean Diam10. More... | |
deadCode | DoMort (clTree *p_oTree, const float &fDbh, const short int &iSpecies) |
Calculates mortality according to the DensitySelfThinning equation. More... | |
Public Member Functions inherited from clMortalityBase | |
clMortalityBase (clSimManager *p_oSimManager) | |
Constructor. More... | |
virtual | ~clMortalityBase () |
Destructor. More... | |
void | Action () |
Performs mortality calculations. More... | |
clMortalityOrg * | GetMortOrg () |
Gets the mortality org object. More... | |
void | RegisterTreeDataMembers () |
Triggers the mortality data member registrations. More... | |
short int | GetNewTreeInts () |
Overridden from clBehaviorBase. More... | |
bool | UsesThisMortality (short int iSp, short int iTp) |
Whether or not a species/type combo uses this mortality object. More... | |
virtual void | PreMortCalcs (clTreePopulation *p_oPop) |
Performs calculations before any trees have been killed. More... | |
Public Member Functions inherited from clBehaviorBase | |
virtual float | GetBehaviorVersion () |
Gets the behavior version number. More... | |
clBehaviorBase (clSimManager *p_oSimManager) | |
Constructor. More... | |
virtual | ~clBehaviorBase () |
Destructor. More... | |
virtual short int | ValidateVersionNumber (float fTestVersion) |
Makes sure that the version number of a file passed is between the minimum and current version numbers. More... | |
virtual void | SetSpeciesTypeCombos (short int iNumCombos, stcSpeciesTypeCombo *p_whatCombos) |
Sets the species/type combos for a behavior. More... | |
virtual void | SetNameData (std::string sNameString) |
Sets the string for the parameter file behavior. More... | |
virtual short int | GetNewTreeFloats () |
Gets the number of new tree float data members this behavior wants to register. More... | |
virtual short int | GetNewTreeChars () |
Gets the number of new tree character data members this behavior wants to register. More... | |
virtual short int | GetNewTreeBools () |
Gets the number of new tree bool data members this behavior wants to register. More... | |
virtual short int | GetNumSpeciesTypeCombos () |
Gets the number of species/type combos to which this behavior applies. More... | |
virtual short int | GetNumBehaviorSpecies () |
Gets the number of unique tree species to which this behavior applies. More... | |
struct stcSpeciesTypeCombo | GetSpeciesTypeCombo (short int iIndex) |
Gets one of this behavior's type/species combos. More... | |
virtual short int | GetBehaviorSpecies (short int iIndex) |
Gets one of the behavior's species. More... | |
short int | GetBehaviorListNumber () |
Gets the behavior list number for this behavior, which differentiates between multiple copies of the behavior in the behavior list. More... | |
void | SetBehaviorListNumber (short int iNumber) |
Sets the behavior list number for this behavior, which differentiates between multiple copies of the behavior in the behavior list. More... | |
std::string | FormatSpeciesTypeQueryString () |
Formats the string for species/types query. More... | |
virtual DOMElement * | GetParentParametersElement (xercesc::DOMDocument *p_oDoc) |
This will get the correct set of parameters for this behavior based on the behavior list position number. More... | |
Public Member Functions inherited from clWorkerBase | |
clWorkerBase (clSimManager *p_oSimManager) | |
Constructor. More... | |
virtual | ~clWorkerBase () |
Destructor. More... | |
std::string | GetName () |
Gets the object's namestring. More... | |
clSimManager * | GetSimManager () |
void | DoObjectSetup (xercesc::DOMDocument *p_oDoc, fileType iFileType) |
Triggers the setup process. More... | |
virtual void | TimestepCleanup () |
Performs any necessary cleanup operations at the end of a timestep. More... | |
virtual void | EndOfRunCleanup () |
Performs any necessary cleanup operations at the end of a run. More... | |
Protected Attributes | |
int | m_iNumberYearsPerTimestep |
Number of years per timestep. More... | |
double * | mp_fSelfThinRadius |
Radius that defines the neighborhood size (meters) More... | |
double * | mp_fMinDensityForMort |
Minimum neighborhood density subject to mortality (trees/ha) More... | |
double * | mp_fSelfThinAsymptote |
Asymptote parameter. More... | |
double * | mp_fSelfThinDiamEffect |
Diameter effect parameter. More... | |
double * | mp_fSelfThinDensityEffect |
Density effect parameter. More... | |
short int * | mp_iIndexes |
Speeds access to the arrays. More... | |
Protected Attributes inherited from clMortalityBase | |
short int | m_iNumTotalSpecies |
Keep a copy for the constructor. More... | |
bool | m_bHooked |
Whether or not this shell object is hooked to clMortalityOrg. More... | |
bool ** | mp_bUsesThisMortality |
2D array, species by type, of whether or not this mortality shell applies to a given species/type combo. More... | |
Protected Attributes inherited from clBehaviorBase | |
short int | m_iNumSpeciesTypeCombos |
How many type/species combos a behavior will act on. More... | |
short int | m_iNumBehaviorSpecies |
How many distinct species are in the combo list - important for filling species-specific values from parameter file. More... | |
short int * | mp_iWhatSpecies |
List of distinct species - for filling species-specific values from parameter file. More... | |
stcSpeciesTypeCombo * | mp_whatSpeciesTypeCombos |
Array of species/type combos that the behavior will act on. More... | |
short int | m_iNewTreeInts |
The number of new tree integer data members this behavior wants to add. More... | |
short int | m_iNewTreeFloats |
The number of new tree float data members this behavior wants to add. More... | |
short int | m_iNewTreeChars |
The number of new tree character data members this behavior wants to add. More... | |
short int | m_iNewTreeBools |
The number of new tree boolean data members this behavior wants to add. More... | |
short int | m_iBehaviorListNumber |
The number of this behavior in the behavior list, to differentiate between possible multiple copies of this behavior. More... | |
float | m_fVersionNumber |
Version number - this will be rounded to 2 digits after the decimal place. More... | |
std::string | m_sXMLRoot |
XML root that encloses the parameters for this behavior. More... | |
float | m_fMinimumVersionNumber |
Minimum version number - this behavior will run parameter data for a file marked between this number and the current version number, inclusive. More... | |
Protected Attributes inherited from clWorkerBase | |
std::string | m_sNameString |
If a behavior has registered a command line command with the sim manager, this allows it to be called. More... | |
clSimManager * | mp_oSimManager |
Pointer to the simulation manager object. More... | |
int * | mp_iAllowedFileTypes |
List of the input file types this object can handle. More... | |
int | m_iNumAllowedTypes |
Number of input file types this object can handle. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from clMortalityBase | |
void | GetData (xercesc::DOMDocument *p_oDoc) |
Triggers all mortality setup. More... | |
void | PopulateUsesThisMortality () |
Declares and populates the mp_bUsesThisMortality array. More... | |
Protected Member Functions inherited from clWorkerBase | |
void | AssembleFileCode (int iFileType, int iFileVersion, char *cCode) |
Creates the proper identifying filecode for an XML file. More... | |
Static Protected Attributes inherited from clMortalityBase | |
static clMortalityOrg * | mp_oMortalityOrg |
clMortalityOrg object. More... | |
Density Self Thinning - Version 1.0.
This behavior evaluates seedling and sapling mortality according to the density and mean diam10 of a tree's neigborhood.
This class's namestring is "densityselfthinningmortshell".
This class's parameter file call string is "DensitySelfThinning".
Note (LEM): this behavior requires a 1-year timestep. There is no programmatic reason for this; this is what Rasmus wanted, as author, because he believes using this behavior with a multi-year timestep is not smart scientifically.
Copyright 2011 Charles D. Canham.
Edit history:
--------------—
October 20, 2011 - Wiped the slate clean for SORTIE 7.0 (LEM)
clDensitySelfThinning::clDensitySelfThinning | ( | clSimManager * | p_oSimManager | ) |
Constructor.
Sets the namestring.
clDensitySelfThinning::~clDensitySelfThinning | ( | ) |
Destructor.
void clDensitySelfThinning::CalculateNeighborhoodTreeCountAndMeanDiam10 | ( | clTree * | p_oTree, |
float * | p_fTreeCount, | ||
float * | p_fMeanDiam10 | ||
) |
Calculates the number of neighborhood trees and their mean Diam10.
p_oTree | Tree being evaluated. |
p_fTreeCount | Variable into which to place the number of neighborhood trees. |
p_fMeanDiam10 | Variable into which to place the mean diam10 of the neighborhood trees. |
|
virtual |
Calculates mortality according to the DensitySelfThinning equation.
p_oTree | Tree being evaluated. |
fDbh | DBH of tree being evaluated. |
iSpecies | Species of the tree being evaluated. |
Implements clMortalityBase.
|
virtual |
Reads in values from the parameter file and makes sure all data needed is collected.
p_oDoc | Parsed DOM tree of parameter file. |
modelErr | if:
|
Reimplemented from clMortalityBase.
|
protected |
Number of years per timestep.
|
protected |
Minimum neighborhood density subject to mortality (trees/ha)
|
protected |
Asymptote parameter.
|
protected |
Density effect parameter.
|
protected |
Diameter effect parameter.
|
protected |
Radius that defines the neighborhood size (meters)
|
protected |
Speeds access to the arrays.