Rev 1157 | Rev 1164 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1157 | Rev 1160 | ||
---|---|---|---|
Line 224... | Line 224... | ||
224 | value2 = nitrogenResponse(availableNitrogen, mNitrogen_2a, mNitrogen_2b); |
224 | value2 = nitrogenResponse(availableNitrogen, mNitrogen_2a, mNitrogen_2b); |
225 | value3 = nitrogenResponse(availableNitrogen, mNitrogen_3a, mNitrogen_3b); |
225 | value3 = nitrogenResponse(availableNitrogen, mNitrogen_3a, mNitrogen_3b); |
226 | return value2 + (responseClass-2)*(value3-value2); |
226 | return value2 + (responseClass-2)*(value3-value2); |
227 | }
|
227 | }
|
228 | }
|
228 | }
|
229 | if (responseClass==2) |
- | |
- | 229 | if (responseClass==2.) |
|
230 | return nitrogenResponse(availableNitrogen, mNitrogen_2a, mNitrogen_2b); |
230 | return nitrogenResponse(availableNitrogen, mNitrogen_2a, mNitrogen_2b); |
231 | if (responseClass==1) |
- | |
- | 231 | if (responseClass==1.) |
|
232 | return nitrogenResponse(availableNitrogen, mNitrogen_1a, mNitrogen_1b); |
232 | return nitrogenResponse(availableNitrogen, mNitrogen_1a, mNitrogen_1b); |
233 | // last ressort: interpolate between 1 and 2
|
233 | // last ressort: interpolate between 1 and 2
|
234 | value1 = nitrogenResponse(availableNitrogen, mNitrogen_1a, mNitrogen_1b); |
234 | value1 = nitrogenResponse(availableNitrogen, mNitrogen_1a, mNitrogen_1b); |
235 | value2 = nitrogenResponse(availableNitrogen, mNitrogen_2a, mNitrogen_2b); |
235 | value2 = nitrogenResponse(availableNitrogen, mNitrogen_2a, mNitrogen_2b); |
236 | return value1 + (responseClass-1)*(value2-value1); |
236 | return value1 + (responseClass-1)*(value2-value1); |
Line 243... | Line 243... | ||
243 | @param nitrogenResponse (yearly) nitrogen response of the species
|
243 | @param nitrogenResponse (yearly) nitrogen response of the species
|
244 | @param soilWaterReponse soil water response (mean value for a month)
|
244 | @param soilWaterReponse soil water response (mean value for a month)
|
245 | */
|
245 | */
|
246 | double SpeciesSet::co2Response(const double ambientCO2, const double nitrogenResponse, const double soilWaterResponse) const |
246 | double SpeciesSet::co2Response(const double ambientCO2, const double nitrogenResponse, const double soilWaterResponse) const |
247 | {
|
247 | {
|
248 | if (nitrogenResponse==0) |
- | |
- | 248 | if (nitrogenResponse==0.) |
|
249 | return 0.; |
249 | return 0.; |
250 | 250 | ||
251 | double co2_water = 2. - soilWaterResponse; |
251 | double co2_water = 2. - soilWaterResponse; |
252 | double beta = mCO2beta0 * co2_water * nitrogenResponse; |
252 | double beta = mCO2beta0 * co2_water * nitrogenResponse; |
253 | 253 |