|
| clConditOmegaCalculator (clSimManager *p_oSimManager) |
| Constructor.
|
|
| ~clConditOmegaCalculator () |
| Destructor.
|
|
void | Action () |
| Calculates Condit's Omega.
|
|
void | GetData (xercesc::DOMDocument *p_oDoc) |
| Does setup for this behavior.
|
|
virtual float | GetBehaviorVersion () |
| Gets the behavior version number.
|
|
| clBehaviorBase (clSimManager *p_oSimManager) |
| Constructor.
|
|
virtual | ~clBehaviorBase () |
| Destructor.
|
|
virtual short int | ValidateVersionNumber (float fTestVersion) |
| Makes sure that the version number of a file passed is between the minimum and current version numbers.
|
|
virtual void | RegisterTreeDataMembers () |
| Registers tree data members.
|
|
virtual void | SetSpeciesTypeCombos (short int iNumCombos, stcSpeciesTypeCombo *p_whatCombos) |
| Sets the species/type combos for a behavior.
|
|
virtual void | SetNameData (char *cNameString) |
| Sets the string for the parameter file behavior.
|
|
virtual short int | GetNewTreeInts () |
| Gets the number of new tree integer data members this behavior wants to register.
|
|
virtual short int | GetNewTreeFloats () |
| Gets the number of new tree float data members this behavior wants to register.
|
|
virtual short int | GetNewTreeChars () |
| Gets the number of new tree character data members this behavior wants to register.
|
|
virtual short int | GetNewTreeBools () |
| Gets the number of new tree bool data members this behavior wants to register.
|
|
virtual short int | GetNumSpeciesTypeCombos () |
| Gets the number of species/type combos to which this behavior applies.
|
|
virtual short int | GetNumBehaviorSpecies () |
| Gets the number of unique tree species to which this behavior applies.
|
|
struct stcSpeciesTypeCombo | GetSpeciesTypeCombo (short int iIndex) |
| Gets one of this behavior's type/species combos.
|
|
virtual short int | GetBehaviorSpecies (short int iIndex) |
| Gets one of the behavior's species.
|
|
short int | GetBehaviorListNumber () |
| Gets the behavior list number for this behavior, which differentiates between multiple copies of the behavior in the behavior list.
|
|
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.
|
|
virtual DOMElement * | GetParentParametersElement (xercesc::DOMDocument *p_oDoc) |
| Formats the string for species/types query.
|
|
| clWorkerBase (clSimManager *p_oSimManager) |
| Constructor.
|
|
virtual | ~clWorkerBase () |
| Destructor.
|
|
char * | GetName () |
| Gets the object's namestring.
|
|
void | DoObjectSetup (xercesc::DOMDocument *p_oDoc, fileType iFileType) |
| Triggers the setup process.
|
|
virtual void | TimestepCleanup () |
| Performs any necessary cleanup operations at the end of a timestep.
|
|
virtual void | EndOfRunCleanup () |
| Performs any necessary cleanup operations at the end of a run.
|
|
virtual void | DoCommand (char *cCommand, char *cArguments) |
| If a behavior has registered a command line command with the sim manager, this allows it to be called.
|
|
|
void | GetParameterFileData (xercesc::DOMDocument *p_oDoc) |
| Reads values from the parameter file and performs setup related to the parameters.
|
|
void | SetupGrid () |
| Sets up the "Relative Neighborhood Density" grid and registers the data members.
|
|
void | GetTreeCodes (clTreePopulation *p_oPop) |
| Gets the X and Y tree data codes.
|
|
void | SetUpSearching (clTreePopulation *p_oPop) |
| Sets up the structures for searching controls.
|
|
void | ProcessCell (clTreePopulation *p_oPop, clTree *p_oFirstTree, const int &iX, const int &iY, const int &iNeighX, const int &iNeighY) |
| Processes a neighboring cell's trees to find distance pairs.
|
|
void | ProcessOwnCell (clTree *p_oFirstTree, float *p_fNumTrees, const int &iX, const int &iY) |
| Processes a single cell's trees to find distance pairs.
|
|
|
clGrid * | mp_oGrid |
| Grid holding Condit's Omega values for the plot plus each species.
|
|
float ** | mp_fOmegaValues |
| Values holding Condit's Omega for each timestep.
|
|
short int ** | mp_iGridCodes |
| Holds the codes for the "Relative Neighborhood Density" grid.
|
|
short int ** | mp_iXCodes |
| Holds codes for X data member.
|
|
short int ** | mp_iYCodes |
| Holds codes for Y data member.
|
|
bool ** | mp_bCellsSearched |
| Which cells have already been paired the current timestep.
|
|
float * | mp_fIncs |
| Distance increment values - array size is m_iNumIncs.
|
|
float * | mp_fAnnulusAreas |
| Area of each annulus - array size is m_iNumIncs.
|
|
float | m_fMaxDistance |
| The max distance to which to calculate Condit's Omega.
|
|
float | m_fIncrement |
| The distance increment used to step out to the max distance.
|
|
int | m_iNumIncs |
| Number of increments for which to calculate Condit's Omega.
|
|
int | m_iNumXToSearch |
| The number of cells to search in the X direction - if the plot is a rectangle and the search distance is long the distances along the two axes may be different.
|
|
int | m_iNumYToSearch |
| The number of cells to search in the Y direction - if the plot is a rectangle and the search distance is long the distances along the two axes may be different.
|
|
int | m_iNumXCells |
| Number of tree population grid cells in X direction.
|
|
int | m_iNumYCells |
| Number of tree population grid cells in Y direction.
|
|
short int | m_iNumTotalSpecies |
| Total number of species.
|
|
short int | m_iNumSpeciesTypeCombos |
| How many type/species combos a behavior will act on.
|
|
short int | m_iNumBehaviorSpecies |
| How many distinct species are in the combo list - important for filling species-specific values from parameter file.
|
|
short int * | mp_iWhatSpecies |
| List of distinct species - for filling species-specific values from parameter file.
|
|
stcSpeciesTypeCombo * | mp_whatSpeciesTypeCombos |
| Array of species/type combos that the behavior will act on.
|
|
short int | m_iNewTreeInts |
| The number of new tree integer data members this behavior wants to add.
|
|
short int | m_iNewTreeFloats |
| The number of new tree float data members this behavior wants to add.
|
|
short int | m_iNewTreeChars |
| The number of new tree character data members this behavior wants to add.
|
|
short int | m_iNewTreeBools |
| The number of new tree boolean data members this behavior wants to add.
|
|
short int | m_iBehaviorListNumber |
| The number of this behavior in the behavior list, to differentiate between possible multiple copies of this behavior.
|
|
float | m_fVersionNumber |
| Version number - this will be rounded to 2 digits after the decimal place.
|
|
std::string | m_sXMLRoot |
| XML root that encloses the parameters for this behavior.
|
|
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.
|
|
char | m_cNameString [MAX_NAMESTRING_SIZE] |
| Object's identifying namestring.
|
|
int * | mp_iAllowedFileTypes |
| List of the input file types this object can handle.
|
|
int | m_iNumAllowedTypes |
| Number of input file types this object can handle.
|
|
Condit's Relative Neighborhood Density Index (Omega) Calculator Version 1.0.
This behavior calculates Condit's relative neighborhood density index (omega). This index measures the aggregation of species. It is calculated for successive distances out to a maximum. The user sets the maximum distance and the increment. Omega for a species for a given distance x + Δx is calculated as:
Ω = (ΣN
x / (T * A
x))/den
where Ax is the area of the annulus described by the radii x and Δx , in square meters, Nx is the number of conspecific neighbors of trees between x and Δx
, T is the total number of trees of that species in the plot, and den is the species density in the plot.
In other words, Ω is the average density of conspecific neighbors at a specific distance divided by the plot's density of that species. Saplings and adults are counted as neighbors. All other types are ignored.
Conceptually, the way to carry out this search is to take each tree, find the density of its conspecific neighbors between each pair of radii x and Δx , average those values by species, and divide by the plot density for each species. In practice I can use a quicker method. The search proceeds by tree population grid cell. For each cell, a square of cells around it is searched. A matrix is used to keep track of which cells have already been paired so they are not paired again. Each pair of conspecifics is counted into the appropriate distance bucket (twice, once for when each tree is acting as a neighbor to the other's target). Then these buckets are used to calculate Ω according to the formula above.
The statistic is calculated for all individual species.
The values are collected into a grid called "Relative Neighborhood Density".
This class's namestring and parameter file call string is "ConditsOmega". Any tree type/species assignments are ignored.
Edit history:
--------------—
October 20, 2011 - Wiped the slate clean for SORTIE 7.0 (LEM)