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_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)
August 14, 2007 - Fixed for uneven grid cell fit (LEM)

Constructor & Destructor Documentation

clNonSpatialDispersal::clNonSpatialDispersal ( clSimManager p_oSimManager  ) 

Constructor.

Parameters:
p_oSimManager Sim Manager object.

clNonSpatialDispersal::~clNonSpatialDispersal (  ) 

Destructor.


Member Function Documentation

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.

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::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.


Member Data Documentation

Slope of the lambda function - sized number of species.

Intercept of the lambda function - sized number of species.

Area of plot in hectares, for scaling basal area.


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

Generated on Wed Oct 28 13:58:47 2009 for SORTIE Core C++ Documentation by  doxygen 1.5.6