SORTIE Core C++ Documentation
Public Member Functions | Protected Attributes | List of all members
clNCITermNCITempDepBARatio Class Reference

This calculates NCI for a tree according to the function: More...

#include <NCITermNCITempDepBARatio.h>

Inheritance diagram for clNCITermNCITempDepBARatio:
clNCITermNCIBARatio clNCITermBase

Public Member Functions

 clNCITermNCITempDepBARatio (bool bUseDefaultBA)
 Constructor. More...
 
 ~clNCITermNCITempDepBARatio ()
 Destructor. More...
 
void PreCalcs (clTreePopulation *p_oPop)
 Calculates current lambdas. More...
 
void DoSetup (clTreePopulation *p_oPop, clBehaviorBase *p_oNCI, xercesc::DOMElement *p_oElement)
 Does setup. More...
 
- Public Member Functions inherited from clNCITermNCIBARatio
 clNCITermNCIBARatio (bool bUseDefaultBA)
 Constructor. More...
 
 ~clNCITermNCIBARatio ()
 Destructor. More...
 
ncivals CalculateNCITerm (clTree *p_oTree, clTreePopulation *p_oPop, clPlot *p_oPlot, const float &fX, const float &fY, const int &iSpecies)
 Calculates NCI according to above equation. More...
 
- Public Member Functions inherited from clNCITermBase
 clNCITermBase ()
 Constructor. More...
 
int GetNumberNCIs ()
 
virtual ~clNCITermBase ()
 Destructor. More...
 
bool DoesRequireTargetDiam ()
 

Protected Attributes

double ** mp_fXa
 Xa for lamba. More...
 
double ** mp_fX0
 X0 for lamba. More...
 
double ** mp_fXb
 Xb for lamba. More...
 
- Protected Attributes inherited from clNCITermNCIBARatio
clPlotmp_oPlot
 Pointer to the plot object, so we can get the temperature. More...
 
double ** mp_fLambda
 Lambas. More...
 
double * mp_fAlpha
 Neighbor DBH effect. More...
 
double * mp_fBeta
 Neighbor distance effect. More...
 
double * mp_fMinimumNeighborDBH
 The minimum DBH, in cm, of neighbors to be included in NCI calculations. More...
 
short int * mp_iWhatSpecies
 List of distinct species. More...
 
double m_fMaxCrowdingRadius
 Maximum search radius, in meters, in which to look for neighbors. More...
 
double m_fMaxAdultRadius
 Maximum search radius, in meters, in which to look for crowding adult neighbors. More...
 
double m_fMaxSaplingRadius
 Maximum search radius, in meters, in which to look for crowding sapling neighbors. More...
 
double m_fDbhAdjustor
 The units adjustment factor for DBH in NCI. More...
 
float m_fMinSaplingHeight
 Minimum sapling height. More...
 
double m_fDefaultBA
 Basal area for default size, if m_bUseDefaultBA = true. More...
 
int m_iNumBehaviorSpecies
 Number of behavior species. More...
 
int m_iNumTotalSpecies
 Number of total species. More...
 
bool m_bUseDefaultBA
 Whether or not to use a default BA, as with quadrat calcs. More...
 
- Protected Attributes inherited from clNCITermBase
bool bRequiresTargetDiam
 Whether or not this effect depends on a target diameter being available. More...
 
int iNumNCIs
 Number of NCI values calculated and populated into ncivals. More...
 

Detailed Description

This calculates NCI for a tree according to the function:

NCIi = Σ λk((DBHk*q)α/distanceβ)
where:

λ = Xa * exp(-0.5*((T-X0)/Xb)^2)

where:

NCI ignores neighbors with disturbance and harvest death codes. Natural deaths are NOT ignored, because it presumes that those deaths occurred in the current timestep and they should still be considered as live neighbors.

This returns two terms: term #1 is the ratio of mean basal area of neighbors to target basal area; term #2 is the NCI.

This behavior uses two different distances to look for neighbors. One is for saplings, and one is for adults.

Constructor & Destructor Documentation

◆ clNCITermNCITempDepBARatio()

clNCITermNCITempDepBARatio::clNCITermNCITempDepBARatio ( bool  bUseDefaultBA)

Constructor.

◆ ~clNCITermNCITempDepBARatio()

clNCITermNCITempDepBARatio::~clNCITermNCITempDepBARatio ( )

Destructor.

Member Function Documentation

◆ DoSetup()

void clNCITermNCITempDepBARatio::DoSetup ( clTreePopulation p_oPop,
clBehaviorBase p_oNCI,
xercesc::DOMElement *  p_oElement 
)
virtual

Does setup.

Parameters
p_oPopTree population.
p_oNCINCI behavior object.
p_oElementRoot element of the behavior.
Exceptions
ModelExceptionif the max radius of neighbor effects is < 0, or if DBH divisor is <= 0.

Reimplemented from clNCITermNCIBARatio.

◆ PreCalcs()

void clNCITermNCITempDepBARatio::PreCalcs ( clTreePopulation p_oPop)
virtual

Calculates current lambdas.

Parameters
p_oPopTree population object.

Reimplemented from clNCITermBase.

Member Data Documentation

◆ mp_fX0

double** clNCITermNCITempDepBARatio::mp_fX0
protected

X0 for lamba.

Array sized number of total species by number of total species.

◆ mp_fXa

double** clNCITermNCITempDepBARatio::mp_fXa
protected

Xa for lamba.

Array sized number of total species by number of total species.

◆ mp_fXb

double** clNCITermNCITempDepBARatio::mp_fXb
protected

Xb for lamba.

Array sized number of total species by number of total species.


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