clNonSpatialDispersal Class Reference

Non-spatial disperse - Version 1.0. More...

#include <NonSpatialDisperse.h>

Inheritance diagram for clNonSpatialDispersal:

clDisperseBase clBehaviorBase clWorkerBase List of all members.

Public Member Functions

 clNonSpatialDispersal (clSimManager *p_oSimManager)
 Constructor.
 ~clNonSpatialDispersal ()
 Destructor.

Protected Member Functions

void DoShellSetup (xercesc::DOMDocument *p_oDoc)
 Reads in parameter file values.
float ComputeBasalArea (clTreePopulation *p_oPop, short int iSpecies)
 Computes the total basal area of all trees over reproductive age of a given species.
void AddSeeds ()
 Does dispersal.

Protected Attributes

float * mp_fSlopeOfLambda
 Slope of the lambda function - sized number of species.
float * mp_fInterceptOfLambda
 Intercept of the lambda function - sized number of species.
float m_fLambdaScaler
 Transforms lambda values from square meters per year to grid cell area per timestep.
float m_fAreaOfPlotInHa
 Area of plot in hectares, for scaling basal area.

Detailed Description

Non-spatial disperse - Version 1.0.

This class performs non-spatial dispersal. There are two kinds. The first is non-density dependent, or bath, dispersal. This kind of dispersal represents a constant seed rain which does not depend on the presence of parent trees in the plot. The other kind is density-dependent dispersal. The number of seeds produced depends on the amount of basal area of reproductively mature trees of that species in the plot.

The mean number of seeds per square meter per year is calculated as lambda = BA*m + b, where m is the slope of lambda, b is the intercept of lambda, and BA is the amount of basal area in square meters per hectare. Lambda is multiplied by number of square meters per seed grid cell and number of years per timestep to arrive at the expected number of seeds per grid cell.

The slope of lambda controls density-dependent dispersal. Setting it equal to zero turns off density-dependent dispersal. The intercept of lambda controls non-density dependent dispersal, and same thing goes there.

This behavior is not connected to any specific species-type combo, but is connected to specific species. There should be applyTo tags for this behavior and a unique list of species will be compiled for those tags with the type being ignored.

This behavior's namestring and parameter file call string are both "non spatial disperse".

Copyright 2003 Charles D. Canham.

Author:
Lora E. Murphy

Edit history:
-----------------
April 28, 2004 - Submitted as beta (LEM)


Constructor & Destructor Documentation

clNonSpatialDispersal::clNonSpatialDispersal ( clSimManager p_oSimManager  ) 

Constructor.

Parameters:
p_oSimManager Sim Manager object.


Member Function Documentation

void clNonSpatialDispersal::AddSeeds (  )  [protected, virtual]

Does dispersal.

For each species for which the slope of lambda is not zero, ComputeBasalArea() is called. Lambda is calculated and scaled to the appropriate grid cell size and number of years. The resulting number of seedlings is assigned to the grid cell.

Implements clDisperseBase.

float clNonSpatialDispersal::ComputeBasalArea ( clTreePopulation p_oPop,
short int  iSpecies 
) [protected]

Computes the total basal area of all trees over reproductive age of a given species.

Parameters:
p_oPop Pointer to tree population object.
iSpecies Species for which to calculate basal area
Returns:
Basal area in square meters per hectare.

void clNonSpatialDispersal::DoShellSetup ( xercesc::DOMDocument *  p_oDoc  )  [protected, virtual]

Reads in parameter file values.

Parameters:
p_oDoc DOM tree of parsed parameter file.

Implements clDisperseBase.


The documentation for this class was generated from the following file:
Generated on Wed Nov 29 08:42:23 2006 for SORTIE Core C++ Documentation by  doxygen 1.4.7