Subversion Repositories public iLand

Rev

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

Rev 327 Rev 369
Line 48... Line 48...
48
{
48
{
49
    double harsh =  1 - 0.8/(1 + 2.5 * mResponse->nitrogenResponse());
49
    double harsh =  1 - 0.8/(1 + 2.5 * mResponse->nitrogenResponse());
50
    return harsh;
50
    return harsh;
51
}
51
}
52
52
53
/** calculate the alphac (=photosynthetic efficiency) for given month.
-
 
-
 
53
void Production3PG::clear()
-
 
54
{
-
 
55
    for (int i=0;i<12;i++) {
-
 
56
        mGPP[i] = 0.; mUPAR[i]=0.;
-
 
57
    }
-
 
58
}
-
 
59
-
 
60
/** calculate the GPP
54
  @sa http://iland.boku.ac.at/primary+production */
61
  @sa http://iland.boku.ac.at/primary+production */
55
double Production3PG::calculate()
62
double Production3PG::calculate()
56
{
63
{
57
    Q_ASSERT(mResponse!=0);
64
    Q_ASSERT(mResponse!=0);
58
    // Radiation: sum over all days of each month with foliage
65
    // Radiation: sum over all days of each month with foliage
59
    double year_raw_gpp = 0.;
66
    double year_raw_gpp = 0.;
60
    for (int i=0;i<12;i++) {
-
 
61
        mGPP[i] = 0.; mUPAR[i]=0.;
-
 
62
    }
-
 
-
 
67
    clear();
63
    double utilizable_rad, epsilon;
68
    double utilizable_rad, epsilon;
64
    // conversion from gC to kg Biomass: C/Biomass=0.5
69
    // conversion from gC to kg Biomass: C/Biomass=0.5
65
    const double gC_to_kg_biomass = 2. / 1000.;
70
    const double gC_to_kg_biomass = 2. / 1000.;
66
    for (int i=0;i<12;i++) {
71
    for (int i=0;i<12;i++) {
67
        utilizable_rad = calculateUtilizablePAR(i); // utilizable radiation of the month times ...
72
        utilizable_rad = calculateUtilizablePAR(i); // utilizable radiation of the month times ...