#include <smalltreegrowthcurve.h>
◆ SmallTreeGrowthCurve() [1/2]
◆ ~SmallTreeGrowthCurve()
◆ SmallTreeGrowthCurve() [2/2]
◆ checkUpdateEcoParameters()
void checkUpdateEcoParameters |
( |
std::string |
ecoZoneName, |
|
|
const DynamicObject & |
data |
|
) |
| |
◆ commonDivider()
double commonDivider |
( |
double |
volume | ) |
|
|
private |
◆ generateOrUpdateCarbonCurve()
void generateOrUpdateCarbonCurve |
( |
| ) |
|
◆ getAGIncrements()
std::unordered_map< std::string, double > getAGIncrements |
( |
double |
stem, |
|
|
double |
other, |
|
|
double |
foliage, |
|
|
int |
age |
|
) |
| |
|
private |
Get the above ground increments for the given age
If parameter age > maxAge, i.e age > 200, return an unordered map with keys "stemwood", "other", "foilage" with values 0.0, 0.0, 0.0
Else return an unordered map with key as "stemwood", value as maximum of parameter age in SmallTreeGrowthCurve.stemCarbonIncrements, -1 * stem, key as "other", value as maximum of parameter age in SmallTreeGrowthCurve.otherCarbonIncrements, -1 * other, and key as "foliage", value as maximum of parameter age in SmallTreeGrowthCurve.foliageCarbonIncrements, -1 * foliage
- Parameters
-
stem | double |
other | double |
foliage | double |
age | int |
- Returns
- unordered_map<string, double>
◆ getBiomassPercentage()
double getBiomassPercentage |
( |
COMPONENT |
component, |
|
|
double |
stemVolume |
|
) |
| |
Get the biomass percentage based on the component and stemVolume
If parameter stemVolume < SmallTreeGrowthCurve.vol_min, if parameter component is : COMPONENT::BARK, return SmallTreeGrowthCurve.p_sb_min
COMPONENT::BRANCH, return SmallTreeGrowthCurve.p_br_min
COMPONENT::FOLIAGE, return SmallTreeGrowthCurve.p_fl_min
COMPONENT::STEMWOOD, return SmallTreeGrowthCurve.p_sw_min
Else if parameter stemVolume > SmallTreeGrowthCurve.vol_min, if parameter component is : COMPONENT::BARK, return SmallTreeGrowthCurve.p_sb_max
COMPONENT::BRANCH, return SmallTreeGrowthCurve.p_br_max
COMPONENT::FOLIAGE, return SmallTreeGrowthCurve.p_fl_max
COMPONENT::STEMWOOD, return SmallTreeGrowthCurve.p_sw_max
Else if parameter stemVolume == SmallTreeGrowthCurve.vol_min, if parameter component is : COMPONENT::BARK, return e ^ (SmallTreeGrowthCurve.a1 + SmallTreeGrowthCurve.a2 * stemVolume + SmallTreeGrowthCurve.a3 * log(stemVolume + 5)) / SmallTreeGrowthCurve.commonDivider(), with argument stemVolume
COMPONENT::BRANCH, return e ^ (SmallTreeGrowthCurve.b1 + SmallTreeGrowthCurve.b2 * stemVolume + SmallTreeGrowthCurve.b3 * log(stemVolume + 5)) / commonDivider(), with argument stemVolume
COMPONENT::FOILAGE, return e ^ (SmallTreeGrowthCurve.c1 + SmallTreeGrowthCurve.c2 * stemVolume + SmallTreeGrowthCurve.c3 * log(stemVolume + 5)) / commonDivider(), with argument stemVolume
COMPONENT::STEMWOOD, return 1 / SmallTreeGrowthCurve.commonDivider(), with argument stemVolume
- Parameters
-
component | COMPONENT |
stemwoodVolume | double |
- Returns
- double
◆ getEcoBoundary()
std::string getEcoBoundary |
( |
| ) |
const |
◆ getSmallTreeBiomassCarbonIncrements()
std::unordered_map< std::string, double > getSmallTreeBiomassCarbonIncrements |
( |
double |
stem, |
|
|
double |
other, |
|
|
double |
foliage, |
|
|
double |
coarseRoot, |
|
|
double |
fineRoot, |
|
|
int |
age |
|
) |
| |
Get the value of variable agIncrements as the result of SmallTreeGrowthCurve.getAGIncrements() with arguments as parameters stem, other, foliage and age
Calculate the values of variables totalAGCarbon, the total above ground biomass carbon totalBGBiomass, the total below ground biomass biomass and totalBiomass, rootProps and rootCarbon, the total root biomassCarbon
Return an unordered_map with the key "stemwood", value as "stemwood" in agIncrements, key "other", value as "other" in agIncrements, key "foliage", value as "foliage" in agIncrements, key "coarseRoot", value as rootCarbon * rootProps.coarse - coarseRoot and key "fineRoot", with value rootCarbon * rootProps.fine - fineRoot
- Parameters
-
stem | double |
other | double |
foliage | double |
age | int |
rootCarbon | double |
rootProps | RootProperties |
coarseRoot | double |
fineRoot | double |
- Returns
- unordered_map<string, double>
◆ getStemwoodBiomass()
double getStemwoodBiomass |
( |
double |
stemwoodVolume | ) |
|
◆ getStemwoodVolumeAtAge()
double getStemwoodVolumeAtAge |
( |
int |
age | ) |
|
◆ initilizeVectors()
void initilizeVectors |
( |
| ) |
|
|
private |
◆ setParametersValue()
void setParametersValue |
( |
const DynamicObject & |
data | ) |
|
|
private |
Assign SmallTreeGrowthCurve.a1, SmallTreeGrowthCurve.a2, SmallTreeGrowthCurve.a3, SmallTreeGrowthCurve.b1, SmallTreeGrowthCurve.b2, SmallTreeGrowthCurve.b3, SmallTreeGrowthCurve.c1, SmallTreeGrowthCurve.c2, SmallTreeGrowthCurve.c3, SmallTreeGrowthCurve.a_bio, SmallTreeGrowthCurve.b_bio, SmallTreeGrowthCurve.a_vol, SmallTreeGrowthCurve.b_vol, SmallTreeGrowthCurve.maxAge, SmallTreeGrowthCurve.vol_max, SmallTreeGrowthCurve.vol_min, SmallTreeGrowthCurve.p_sw_min, SmallTreeGrowthCurve.p_sw_max, SmallTreeGrowthCurve.p_fl_min, SmallTreeGrowthCurve.p_fl_max, SmallTreeGrowthCurve.p_sb_min, SmallTreeGrowthCurve.p_sb_max, SmallTreeGrowthCurve.p_br_min,
SmallTreeGrowthCurve.p_br_max, SmallTreeGrowthCurve.sw_a, SmallTreeGrowthCurve.hw_a, SmallTreeGrowthCurve.frp_a, SmallTreeGrowthCurve.frp_b, SmallTreeGrowthCurve.frp_c as values "a1", "a2", "a3", "b1", "b2", "b3", "c1", "c2", "c3", "a_bio", "b_bio", "a_vol", "b_vol", "maxAge", "vol_max", "vol_min", "p_sw_min", "p_sw_max", "p_fl_min", "p_fl_max", "p_sb_min", "p_sb_max", "p_br_min", "p_br_max", "sw_a", "hw_a", "frp_a", "frp_b", "frp_c" in parameter data
- Parameters
-
- Returns
- void
◆ setRootBiomassEquation()
void setRootBiomassEquation |
( |
| ) |
|
◆ speciesType()
◆ a1
◆ a2
◆ a3
◆ a_bio
◆ a_vol
◆ b1
◆ b2
◆ b3
◆ b_bio
◆ b_vol
◆ c1
◆ c2
◆ c3
◆ ecoBoundaryName
std::string ecoBoundaryName |
|
private |
◆ foliageCarbonIncrements
std::vector<double> foliageCarbonIncrements |
|
private |
◆ frp_a
◆ frp_b
◆ frp_c
◆ hw_a
◆ hw_b
◆ maxAge
◆ otherCarbonIncrements
std::vector<double> otherCarbonIncrements |
|
private |
◆ p_br_max
◆ p_br_min
◆ p_fl_max
◆ p_fl_min
◆ p_sb_max
◆ p_sb_min
◆ p_sw_max
◆ p_sw_min
◆ rootBiomassEquation
◆ stemCarbonIncrements
std::vector<double> stemCarbonIncrements |
|
private |
◆ sw_a
◆ typeName
◆ vol_max
◆ vol_min
The documentation for this class was generated from the following files: