Subversion Repositories public iLand

Rev

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

Rev 798 Rev 802
Line 68... Line 68...
68
{
68
{
69
    double utilized_frac = 1.;
69
    double utilized_frac = 1.;
70
    if (Model::settings().usePARFractionBelowGroundAllocation) {
70
    if (Model::settings().usePARFractionBelowGroundAllocation) {
71
        // the Landsberg & Waring formulation takes into account the fraction of utilizeable to total radiation (but more complicated)
71
        // the Landsberg & Waring formulation takes into account the fraction of utilizeable to total radiation (but more complicated)
72
        // we originally used only nitrogen and added the U_utilized/U_radiation
72
        // we originally used only nitrogen and added the U_utilized/U_radiation
73
        utilized_frac = mResponse->totalUtilizedRadiation() / mResponse->yearlyRadiation();
-
 
-
 
73
        utilized_frac = mResponse->totalUtilizeableRadiation() / mResponse->yearlyRadiation();
74
    }
74
    }
75
    double harsh =  1 - 0.8/(1 + 2.5 * mResponse->nitrogenResponse() * utilized_frac);
75
    double harsh =  1 - 0.8/(1 + 2.5 * mResponse->nitrogenResponse() * utilized_frac);
76
    return harsh;
76
    return harsh;
77
}
77
}
78
78
Line 96... Line 96...
96
    clear();
96
    clear();
97
    double utilizable_rad, epsilon;
97
    double utilizable_rad, epsilon;
98
    // conversion from gC to kg Biomass: C/Biomass=0.5
98
    // conversion from gC to kg Biomass: C/Biomass=0.5
99
    const double gC_to_kg_biomass = 1. / (biomassCFraction * 1000.);
99
    const double gC_to_kg_biomass = 1. / (biomassCFraction * 1000.);
100
    for (int i=0;i<12;i++) {
100
    for (int i=0;i<12;i++) {
101
        utilizable_rad = calculateUtilizablePAR(i); // utilizable radiation of the month times ... (MJ/m2)
-
 
-
 
101
        utilizable_rad = calculateUtilizablePAR(i); // utilizable radiation of the month ... (MJ/m2)
102
        epsilon = calculateEpsilon(i); // ... photosynthetic efficiency ... (gC/MJ)
102
        epsilon = calculateEpsilon(i); // ... photosynthetic efficiency ... (gC/MJ)
103
        mUPAR[i] = utilizable_rad ;
103
        mUPAR[i] = utilizable_rad ;
104
        mGPP[i] =utilizable_rad * epsilon * gC_to_kg_biomass; // ... results in GPP of the month kg Biomass/m2 (converted from gC/m2)
104
        mGPP[i] =utilizable_rad * epsilon * gC_to_kg_biomass; // ... results in GPP of the month kg Biomass/m2 (converted from gC/m2)
105
        year_raw_gpp += mGPP[i]; // kg Biomass/m2
105
        year_raw_gpp += mGPP[i]; // kg Biomass/m2
106
    }
106
    }