13 | | == 1. Technical notes A: the modularisation of code used by nitrogen and phosphorus routines == |
14 | | There are aspects which the nutrient cycles have in common, for example root uptake kinetics, stoichiometric considerations, etc. To avoid the risks of introducing inconsistencies and reduce redundant code, I introduced the following subroutines. All subroutines are in stomate_phosphorus.f90. |
15 | | |
16 | | === 1.1 root_conductivity === |
17 | | This subroutine calculates the uptake capacity of N & P per mass root according to the uptake kinetics of ammonia and nitrate used in OCN (Zaehle & Friend, 2010). |
18 | | |
19 | | === 1.2 f_XY_plant === |
20 | | This subroutine calculates the scaling functions based on the stoichiometric ratio of labile plant tissue (reserve, labile and leaf) which are used to scale root uptake, biological N2 fixation, and biochemical mineralization. It currently supports scaling functions based on the P-to-N ratio, N-to-C ratio and P-to-C ratio. All other combinations will cause a 'STOP', but could be easily implemented if needed. |
21 | | |
22 | | == 2. Technical notes B: the analytical spinup of the biogeochemical cycles == |
23 | | |
24 | | === FAILS 2.1A avoid that immobilisation demand exceeds mineral nutrient supply === |
25 | | Directly, after an analytic spinup cycle the immobilisation demand can exceed the mineral nutrient supply (soil_n_min or soil_p_min). |
26 | | In such a case, we have to add artificially the needed amount of nutrients to the supply. The flag ok_spunup controls that only in the timestep after the analytical solution is derived nutrients can be added. |
27 | | |
28 | | === WORKS 2.1B avoid that immobilisation demand exceeds mineral nutrient supply === |
29 | | During the an analytic spinup cycle the immobilisation demand can exceed the mineral nutrient supply (soil_n_min or soil_p_min). |
30 | | In such a case, we have to add artificially the needed amount of nutrients to the supply. Every time it is needed during spinup. |
31 | | |
32 | | === 2.2 prescribed N inputs from BNF during the spinup === |
33 | | The biological fixation of N2 from the atmosphere is computed as a function of NPP and plant C:N:P stoichiometry. During the spinup large amounts of organic matter accumulate which is connected with a high immobilisation flux. We thus must ensure that the N inputs are rather high and constant in time. Therefore we read BNF rates in from a file rather than computing them dynamically. |
34 | | |
35 | | === 2.3 SOLVED speed up the spin up of soil CNP stoichiometry === |
36 | | It was more like a bugfix. The running window of the average of CN_som_litter_longterm should be limited to a given period not to "unlimited" for the case you want to run long spin up cycles (spinup_period=50yr). |