Subversion Repositories public iLand

Rev

Rev 304 | Rev 381 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 304 Rev 308
Line 44... Line 44...
44
    double volumeFactor() const { return mVolumeFactor; } ///< factor for volume calculation: V = factor * D^2*H (incorporates density and the form of the bole)
44
    double volumeFactor() const { return mVolumeFactor; } ///< factor for volume calculation: V = factor * D^2*H (incorporates density and the form of the bole)
45
    double density() const { return mWoodDensity; } ///< density of stem wood [kg/m3]
45
    double density() const { return mWoodDensity; } ///< density of stem wood [kg/m3]
46
    double specificLeafArea() const { return mSpecificLeafArea; }
46
    double specificLeafArea() const { return mSpecificLeafArea; }
47
    // mortality
47
    // mortality
48
    double deathProb_intrinsic() const { return mDeathProb_intrinsic; }
48
    double deathProb_intrinsic() const { return mDeathProb_intrinsic; }
49
    double deathProb_stress() const { return mDeathProb_stress; }
-
 
-
 
49
    inline double deathProb_stress(const double &stress_index) const;
50
    // aging
50
    // aging
51
    double aging(const float height, const int age);
51
    double aging(const float height, const int age);
52
    // environmental responses
52
    // environmental responses
53
    double vpdResponse(const double &vpd) const;
53
    double vpdResponse(const double &vpd) const;
54
    inline double temperatureResponse(const double &delayed_temp) const;
54
    inline double temperatureResponse(const double &delayed_temp) const;
Line 145... Line 145...
145
  */
145
  */
146
inline double Species::soilwaterResponse(const double &psi_kPa) const
146
inline double Species::soilwaterResponse(const double &psi_kPa) const
147
{
147
{
148
    const double psi_mpa = psi_kPa / 1000.; // convert to MPa
148
    const double psi_mpa = psi_kPa / 1000.; // convert to MPa
149
    double result = limit( 1. - psi_mpa / mPsiMin, 0., 1.);
149
    double result = limit( 1. - psi_mpa / mPsiMin, 0., 1.);
-
 
150
    return result;
-
 
151
}
-
 
152
-
 
153
/** calculate probabilty of death based on the current stress index. */
-
 
154
inline double Species::deathProb_stress(const double &stress_index) const
-
 
155
{
-
 
156
    if (stress_index==0)
-
 
157
        return 0.;
-
 
158
    double result = 1. - exp(-mDeathProb_stress*stress_index);
150
    return result;
159
    return result;
151
}
160
}
152
161
153
#endif // SPECIES_H
162
#endif // SPECIES_H