iLand
|
The behavior and general properties of tree species. More...
#include <species.h>
Public Member Functions | |
Species (SpeciesSet *set) | |
~Species () | |
void | setup () |
main setup routine for tree species. More... | |
void | newYear () |
newYear is called by the SpeciesSet at the beginning of a year before any growth occurs. More... | |
const SpeciesSet * | speciesSet () const |
SeedDispersal * | seedDispersal () const |
const QString & | id () const |
const QString & | name () const |
the full name (e.g. Picea Abies) of the species More... | |
int | index () const |
unique index of species within current set More... | |
bool | active () const |
active??? todo! More... | |
int | phenologyClass () const |
phenology class defined in project file. class 0 = evergreen More... | |
bool | isConiferous () const |
bool | isEvergreen () const |
bool | isSeedYear () const |
double | biomassFoliage (const double dbh) const |
double | biomassStem (const double dbh) const |
double | biomassRoot (const double dbh) const |
double | biomassBranch (const double dbh) const |
double | allometricExponentStem () const |
double | allometricExponentBranch () const |
double | allometricExponentFoliage () const |
double | allometricFractionStem (const double dbh) const |
calculate fraction of stem wood increment base on dbh. More... | |
double | finerootFoliageRatio () const |
ratio of fineroot mass (kg) to foliage mass (kg) More... | |
double | barkThickness (const double dbh) const |
double | cnFoliage () const |
double | cnFineroot () const |
double | cnWood () const |
double | turnoverLeaf () const |
double | turnoverRoot () const |
double | snagKsw () const |
double | snagHalflife () const |
double | snagKyl () const |
decomposition rate for labile matter (litter) used in soil model More... | |
double | snagKyr () const |
decomposition rate for refractory matter (woody) used in soil model More... | |
void | hdRange (const double dbh, double &rMinHD, double &rMaxHD) const |
double | volumeFactor () const |
factor for volume calculation: V = factor * D^2*H (incorporates density and the form of the bole) More... | |
double | density () const |
density of stem wood [kg/m3] More... | |
double | specificLeafArea () const |
double | deathProb_intrinsic () const |
double | deathProb_stress (const double &stress_index) const |
calculate probabilty of death based on the current stress index. More... | |
double | aging (const float height, const int age) const |
Aging formula. More... | |
int | estimateAge (const float height) const |
estimate age for a tree with the current age More... | |
void | seedProduction (const Tree *tree) |
check the maturity of the tree and flag the position as seed source appropriately More... | |
void | setSeedDispersal (SeedDispersal *seed_dispersal) |
double | vpdResponse (const double &vpd) const |
vpdResponse calculates response on vpd. More... | |
double | temperatureResponse (const double &delayed_temp) const |
temperatureResponse calculates response on delayed daily temperature. More... | |
double | nitrogenResponse (const double &availableNitrogen) const |
double | canopyConductance () const |
maximum canopy conductance in m/s More... | |
double | soilwaterResponse (const double &psi_kPa) const |
input: matrix potential (kPa) (e.g. -15) More... | |
double | lightResponse (const double lightResourceIndex) const |
double | psiMin () const |
double | vpdResponseExponent () const |
int | maturityAge () const |
void | treeMigKernel (double &ras1, double &ras2, double &ks) const |
double | fecundity_m2 () const |
double | nonSeedYearFraction () const |
double | fecunditySerotiny () const |
bool | isTreeSerotinous (const int age) const |
returns true of a tree with given age/height is serotinous (i.e. seed release after fire) More... | |
const EstablishmentParameters & | establishmentParameters () const |
const SaplingGrowthParameters & | saplingGrowthParameters () const |
const Stamp * | stamp (const float dbh, const float height) const |
The behavior and general properties of tree species.
Because the individual trees are designed as leightweight as possible, lots of stuff is done by the Species. Inter alia, Species do:
|
inline |
Species::~Species | ( | ) |
|
inline |
active??? todo!
double Species::aging | ( | const float | height, |
const int | age | ||
) | const |
Aging formula.
calculates a relative "age" by combining a height- and an age-related term using a harmonic mean, and feeding this into the Landsberg and Waring formula. see http://iland-model.org/primary+production#respiration_and_aging
useAge | set to true if "real" tree age is available. If false, only the tree height is used. |
|
inline |
|
inline |
|
inline |
double Species::allometricFractionStem | ( | const double | dbh | ) | const |
calculate fraction of stem wood increment base on dbh.
allometric equation: a*d^b -> first derivation: a*b*d^(b-1) the ratio for stem is 1 minus the ratio of twigs to total woody increment at current "dbh".
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
maximum canopy conductance in m/s
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
calculate probabilty of death based on the current stress index.
|
inline |
density of stem wood [kg/m3]
|
inline |
int Species::estimateAge | ( | const float | height | ) | const |
estimate age for a tree with the current age
|
inline |
|
inline |
|
inline |
ratio of fineroot mass (kg) to foliage mass (kg)
|
inline |
|
inline |
|
inline |
unique index of species within current set
|
inline |
|
inline |
|
inline |
bool Species::isTreeSerotinous | ( | const int | age | ) | const |
returns true of a tree with given age/height is serotinous (i.e. seed release after fire)
|
inline |
|
inline |
|
inline |
the full name (e.g. Picea Abies) of the species
void Species::newYear | ( | ) |
newYear is called by the SpeciesSet at the beginning of a year before any growth occurs.
This is used for various initializations, e.g. to clear seed dispersal maps
|
inline |
|
inline |
|
inline |
phenology class defined in project file. class 0 = evergreen
|
inline |
|
inline |
|
inline |
void Species::seedProduction | ( | const Tree * | tree | ) |
check the maturity of the tree and flag the position as seed source appropriately
Seed production.
This function produces seeds if the tree is older than a species-specific age ("maturity") If seeds are produced, this information is stored in a "SeedMap"
|
inline |
void Species::setup | ( | ) |
main setup routine for tree species.
Data is fetched from the open query (or file, ...) in the parent SpeciesSet using xyzVar() functions. This is called
|
inline |
|
inline |
|
inline |
decomposition rate for labile matter (litter) used in soil model
|
inline |
decomposition rate for refractory matter (woody) used in soil model
|
inline |
input: matrix potential (kPa) (e.g. -15)
soilwaterResponse is a function of the current matrix potential of the soil.
|
inline |
|
inline |
|
inline |
|
inline |
temperatureResponse calculates response on delayed daily temperature.
Input: average temperature [C] Note: slightly different from Mkela 2008: the maximum parameter (Sk) in iLand is interpreted as the absolute temperature yielding a response of 1; in Mkela 2008, Sk is the width of the range (relative to the lower threhold)
|
inline |
|
inline |
|
inline |
|
inline |
factor for volume calculation: V = factor * D^2*H (incorporates density and the form of the bole)
|
inline |
vpdResponse calculates response on vpd.
Input: vpd [kPa]
|
inline |