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

This class calculates a crowding effect using the default function. More...

#include <CrowdingEffectDefault.h>

Inheritance diagram for clCrowdingEffectDefault:
clCrowdingEffectBase

Public Member Functions

 clCrowdingEffectDefault ()
 Constructor. More...
 
 ~clCrowdingEffectDefault ()
 Destructor. More...
 
double CalculateCrowdingEffect (clTree *p_oTree, const float &fDiam, const clNCITermBase::ncivals nci, const int &iSpecies)
 Calculates crowding effect. More...
 
void DoSetup (clTreePopulation *p_oPop, clBehaviorBase *p_oNCI, clNCIBehaviorBase *p_oNCIBase, xercesc::DOMElement *p_oElement)
 Does setup. More...
 
- Public Member Functions inherited from clCrowdingEffectBase
 clCrowdingEffectBase ()
 Constructor. More...
 
virtual ~clCrowdingEffectBase ()
 Destructor. More...
 
virtual void PreCalcs (clTreePopulation *p_oPop)
 Performs calculations like either clGrowthBase::PreGrowthCalcs or clMortalityBase::PreMortCalcs. More...
 
bool DoesRequireTargetDiam ()
 

Protected Attributes

double * mp_fC
 Crowding effect slope. More...
 
double * mp_fD
 Crowding effect steepness. More...
 
double * mp_fGamma
 Size sensitivity to NCI parameter. More...
 
- Protected Attributes inherited from clCrowdingEffectBase
bool m_bRequiresTargetDiam
 Whether or not this effect depends on a target diameter being available. More...
 
bool m_b2ValNCI
 Whether it's a two-value NCI. More...
 

Detailed Description

This class calculates a crowding effect using the default function.

Crowding effect is calculated as follows:

CE = exp(-C * diam γ * nciD)

where:

Alternately, this can use NCI behaviors returning 2 values, in which case the format is

CE = exp(-C * nci1 γ * nci2D)

Constructor & Destructor Documentation

◆ clCrowdingEffectDefault()

clCrowdingEffectDefault::clCrowdingEffectDefault ( )

Constructor.

◆ ~clCrowdingEffectDefault()

clCrowdingEffectDefault::~clCrowdingEffectDefault ( )

Destructor.

Member Function Documentation

◆ CalculateCrowdingEffect()

double clCrowdingEffectDefault::CalculateCrowdingEffect ( clTree p_oTree,
const float &  fDiam,
const clNCITermBase::ncivals  nci,
const int &  iSpecies 
)
virtual

Calculates crowding effect.

Parameters
p_oTreeTree for which to calculate crowding effect.
fDiamDiameter of tree.
nciNCI term.
iSpeciesSpecies for which to calculate effect.

Implements clCrowdingEffectBase.

◆ DoSetup()

void clCrowdingEffectDefault::DoSetup ( clTreePopulation p_oPop,
clBehaviorBase p_oNCI,
clNCIBehaviorBase p_oNCIBase,
xercesc::DOMElement *  p_oElement 
)
virtual

Does setup.

Parameters
p_oPopTree population.
p_oNCINCI behavior object.
p_oNCIBaseNCI parent behavior object.
p_oElementRoot element of the behavior.

Implements clCrowdingEffectBase.

Member Data Documentation

◆ mp_fC

double* clCrowdingEffectDefault::mp_fC
protected

Crowding effect slope.

C in Crowding Effect equation above. Array sized number of species.

◆ mp_fD

double* clCrowdingEffectDefault::mp_fD
protected

Crowding effect steepness.

D in Crowding Effect equation above. Array sized number of species.

◆ mp_fGamma

double* clCrowdingEffectDefault::mp_fGamma
protected

Size sensitivity to NCI parameter.

γ in Crowding Effect equation above. Array sized number of species.


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