Changes between Version 241 and Version 242 of DevelopmentActivities/ORCHIDEE-DOFOCO


Ignore:
Timestamp:
2020-01-22T20:07:54+01:00 (4 years ago)
Author:
luyssaert
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • DevelopmentActivities/ORCHIDEE-DOFOCO

    v241 v242  
    133133The radiative transfer through the canopy is controlled by 3 parameters for each wavelength/band: single leaf scattering '''leaf_ssa_xxx''', forward scattering '''leaf_psd_xxx''' and background reflectance '''bgrd_ref_xxx'''. At present, both the visible (VIS) and near-infrared (NIR) spectra have been parameterized. Parameterization is based on running an inverse radiation scheme on the MODIS albedo product while accounting for the different land cover types. The inverted parameters are provided by the JRC as the JRC TIP product. Seasonal variation in the background albedo was observed but small and therefore not accounted for. 
    134134 
    135 When snow is present in a pixel, all snow is assumed to reach the ground and the background albedo and the snow albedo (calculated as a function of snow age) are weighted according to their cover fractions (see Albedo (background)).  
    136  
    137 === Albedo (background) === 
     135When snow is present in a pixel, all snow is assumed to reach the ground and the background albedo and the snow albedo (calculated as a function of snow age) are weighted according to their cover fractions (see Background albedo).  
     136 
     137=== Background albedo (CHECK) === 
    138138If covered by snow, the background albedo is calculated by the snow module and accounts for snow age and snow density (needs to be checked – last time snow did not account for NIR). If not covered by snow, the background albedo is not simulated but prescribed by the parameters '''bgrd_ref_vis''' and '''bgrd_ref_nir'''. If the background is partly covered by snow, the snow albedo and the background albedo are merged, which allows snow to settle under the canopy, reflecting In deciduous forest, grasslands and croplands, the background albedo is known to be strongly affected by the phenology and senescence of the understory vegetation. ORCHIDEE-CN-CAN has two options to prescribe the background albedo: 
    139139* The background albedo is prescribed per PFT but is constant throughout the year. This is the option that has been used in ORCHIDEE-CAN and is the option that has been validated over Europe. Set '''alb_bg_modis''' = n. 
    140140* The background albedo is constant across PFTs. This option reads background maps. Given that those maps are based on the JRC TIP product, they should be compatible with the new albedo scheme. This option, however, has not been validated yet. Set '''alb_bg_modis''' = y. 
    141141  
    142 === Albedo (snow) === 
     142=== Snow albedo (CHECK) === 
    143143The snow albedo could be either prescribed (in condveg_init.f90) or calculated following Chalita and Treut (1994) '''do_new_snow_albedo = n ''' or calculated following CLM3 '''do_new_snow_albedo = y'''. The difference between the latter two methods has not been tested yet. The CLM method was added to CN-CAN, the Chalita and Treut method was added in parallel to the runk. When merging both versions we ended up with two options. 
    144144 
    145 === Allocation === 
     145=== Allocation (CHECK) === 
    146146ORCHIDEE-CN-CAN uses the allometric allocation as developed in OCN. In ORCHIDEE-CAN the approach was adjusted to work for more than one diameter class. Since it was developed this allocation has been used in ORCHIDEE-CN, and ORCHIDEE-CNP. In those branches only a single diameter class was used. Except for the way the reserves and labile pools are calculated, the allocation scheme is identical between all aforementioned versions. The model is, however, very sensitive to the way the reserves and labile pools are calculated. The allocation makes use of a labile pool for which the activity is calculated based on the temperature. As such the model addresses the sink/source discussion initiated by Körner. Whereas this approach resulted in an acceptable interannual variability in for example NPP in ORCHIDEE-CAN, adding N seems to have dampen the interannual variability too much. This dampening was observed in ORCHIDEE-CN  and ORCHIDEE-CN-CAN. IN ORCHIDEE-CNP this temperature relationship was removed because the interannual variability became unrealistic.  
    147147 
     
    150150There are no options to revert to the allocation based on resource limitation. All references and parameters for allocation based on resource limitation have been removed from the code (those that were overlloked can be removed). Allometric allocation makes use of the following PFT-specific parameters: '''sla''', '''tau_root''', '''tau_leaf''', '''tau_sap''', '''pipe_density''', '''tree_ff''', '''pipe_tune_x''', '''k_latosa_max''', and '''k_latosa_min'''. In addition to this set of parameters that mainly describe the allometric relationships and the longevity of the different tissues, the calculation of the allocation coefficients makes use PFT-specific tissue conductivities, i.e., '''k_sap''', '''k_root''', and '''k_leaf''' (see also plant water stress). As such there is a functional link between C and N-allocation and the hydraulic architecture of a plant. Details on the parameters can be found in the SI of Naudts et al 2015 in GMD or in src_parameters/constantes_mtc.f90. 
    151151 
    152 === Anthropogenic species change === 
     152=== Anthropogenic species change (CHECK) === 
    153153Following a disturbance (which could be a clear cut), tree species changes and forest management change can be prescribed or read from a map in ORCHIDEE-CAN. Set '''ok_change_species''' = y, '''read_species_change_map''' = y, and '''read_desired_fm_map''' = y and specify the paths of those maps in the COMP/stomate.card. This functionality replaces the DGVM in areas where humans rather than nature govern species distribution, for example, Europe. Note that there are some constraints on the possible species changes. If the forest is unmanaged (fm=1), the code assumes that nature will determine the species rather than humans. Anthropogenic species change has not been developed to work together with land cover change. For the moment it is one or the other. When testing this functionality read_species_change_map and/or read_desired_fm_map could be set to n. The new forest management strategy can then be simply prescribed by setting the parameter '''fm_change_force''' to one of the four fm strategies. Likewise the new species can be prescribed by setting the parameter '''species_change_force''' to the desired PFT number. 
    154154 
    155 === Bare soil === 
     155=== Bare soil (CHECK) === 
    156156The flag '''ok_bare_soil_new''' controls how the bare soil is perceived and calculated. If set to FALSE the total bare soil is still calculated as a function of veget. When a deciduous PFT sheds its leaves, the gaps in the forest will contribute to bare soil fraction in the grid. Although this approach was introduced a long time ago to get acceptable evaporation estimates from forest, the approach also resulted in using the albedo of deserts as the background albedo of forest gaps. The new albedo scheme (see Albedo and Background albedo) considers a specific background albedo for each PFT and calculates the albedo of the PFT including the canopy gaps. Moving gaps to the bare soil is no longer needed. So, if '''ok_bare_soil_new''' is set to TRUE, canopy gaps no longer contribute to the bare soil. It needs to be tested what will happen with the evaporation in the single-layer model. The multi-layer energy budget should be able to correctly deal with the gaps in the canopy because the diffusivity will increase when the canopy is becoming sparser.  
    157157 
    158 === Bark beetles === 
     158=== Bark beetles (CHECK) === 
    159159The bark beetle module was developed such that it interacts with the windthrow module. If you want to activate it use the flag OK_PEST=y in the run.def. To specify wich PFT may be affected by bark beetles use BEETLE_PFT_xxx= TRUE where XXX is the pft you interested in. Note that for the moment bark beetles in ORCHIDEE is parameterized only to work with Picea abies. 
    160160 
    161 === C13 === 
     161=== C13 (CHECK) === 
    162162The concentration of C13 in the leaves can be calculated by setting '''ok_c13''' to y in the run.def. This calculation follows Farquhar's approach and is currently limited to the fractionation in the leaves. 
    163163 
     
    177177* FORCESOIL: Not maintained for ORCHIDEE-CN-CAN. Will be added back once forcesoil.exe has been restored. 
    178178 
    179 === Consistency checks === 
     179=== Consistency checks (CHECK) === 
    180180The code distinguishes between three options to check for mass and surface conservation. These options are controlled by the parameter '''err_act'''. Always use err_act = 3 when developing and testing the code. Note that in addition to checking for mass balance closure ORCHIDEE-CN-CAN will also check for the conservation of veget_max and frac_nobio. This is useful to make sure no surface area is lost when moving biomass from one PFT to another following natural disturbances, forest management, land cover changes and when using age classes. In some parts of the code, for example, modules that deal with disturbances, it is assumed that the tallest trees are stored in the last diameter class. When the difference in diameter between diameter classes becomes very small, this assumption could be violated. Therefore, the diameter classes are sorted to enforce the assumed order and where needed the order is checked. 
    181181* err_act = 1 is recommended when running global long-term simulations. Under this option, mass balance closure is checked for all biogeochemical processes but only at the highest level thus stomate.f90 and stomate_lpj.f90. Although the mass balance checks are not very expensive in terms of computer time, skipping the numerous lower level checks is expected to save some time. Under this option the total mass balance error is only written to the history file. No information is provided in which subroutine the problem occurred. 
     
    183183* arr_act = 3 is recommended when having a problem with mass balance closure. The mass balance is explicitly checked in stomate.f90, stomate_lpj.f90 and all its subroutines. If a mass balance error occurs, the model is stopped. 
    184184 
    185 === CWRR vs Choinel === 
     185=== CWRR vs Choinel (CHECK) === 
    186186ORCHIDEE-CN-CAN was developed and tested with CWRR. The Choinel code is still available but was never used in ORCHIDEE-CN-CAN and can thus be removed. The hydrological schemes were not touched during the development of ORCHIDEE-CN-CAN. The hydraulic architecture in ORCHIDEE-CN-CAN relies on CWRR. 
    187187 
    188 === Diameter classes === 
     188=== Diameter classes (CHECK) === 
    189189Diameter classes were introduced to better simulate the canopy structure, they are a tool to simulate heterogeneity within a single PFT. Given that the canopy is the interface between the land and the atmosphere this feature has effects well beyond forest management. Stand structure was observed to affect albedo, transpiration, photosynthesis, soil temperature, roughness length, and recruitment. Using diameter classes adds very little complexity to setting-up the simulations as well as to the output files. The complexity is mostly within the code.  
    190190 
     
    199199The above declaration implies that 9/15th of the trees will always be in the smallest diameter class, 5/15th will be in the medium class and 1 tree out of 15 will be in the largest diameter class. These ratios are kept throughout the simulations and the boundaries of the diameter classes are adjusted to respect this constraint. Consequently, an even-aged stand will be simulated with three diameter classes where the diameter of the first class may be, for example, 20.3 cm, the diameter of the second class 20.4 cm and the diameter of the third class 20.5 cm. The same code and set-up allows to simulate, in the same simulation, an uneven-aged stand for the same PFT but in a different pixel with, for example, the smallest diameter 7 cm, the medium diameter 25 cm and the largest diameter 45 cm. 
    200200 
    201 === Forced clear cut === 
     201=== Forced clear cut (CHECK) === 
    202202OK_CLEARCUT is a flag used to force ORCHIDEE-CN-CAN to clearcut a forest after one year of simulation. This flag is set to TRUE in order to restart a new stand at the begining of the FIN step in ENSEMBLE runs. It helps us to control the stand age at the end of the HIST step. If you want to use this flag for other purposes, do not forget that a clearcut means that the majority of the living biomass is removed (circ_class_biomass for sapwood and heartwood), but the other pools are transferred in the litter pool (leaf, branches, fruit, fine root). 
    203203 
    204 === Forest management and management changes === 
     204=== Forest management and management changes (CHECK) === 
    20520570% of the global forests are managed, which contradicts the assumption in previous versions of ORCHIDEE that forests are long-lived natural vegetation. Forest management, inspired by ORCHIDEE-FM, was implemented in ORCHIDEE-CAN. Owing to the allometric allocation scheme, the introduction of diameter classes and a canopy structure, only the principles of ORCHIDEE-FM, i.e., the allocation rule of Deleuze and Dhote that allocates carbon to different diameter classes based on the basal area of the tree, and relative-density index (RDI)-based management which enforces thinning and harvest operations based on the current tree density and the self-thinning density, were retained.  
    206206 
     
    228228Following a disturbance (which could be a clear cut), tree species changes and forest management change can be prescribed or read from a map in ORCHIDEE-CAN. Set '''lchange_species''' = y, '''read_species_change_map''' = y, and '''read_desired_fm_map''' = y and specify the paths of those maps in the COMP/stomate.card. This functionality replaces the DGVM in areas where humans rather than nature govern species distribution, for example, Europe. Note that there are some constraints on the possible management changes. If the species is a conifer, for example, the new management strategy cannot be coppicing (fm=3). Anthropogenic species change has not been developed to work together with land cover change (this would require some good bookkeeping for veget_max). Forest management change has not been tested together with land cover change but because they affect different variables, i.e., '''forest_managed''' and '''veget_max''' combining both functionalities seems not overly complex. 
    229229 
    230 === Grasslands === 
     230=== Grasslands (CHECK) === 
    231231In the DOFOCO branch, grasslands were treated as evergreens as dead grasslands in winter at the time had too high of albedo compared to real grasslands.  After the work of Nicolas Vuichard, we have moved CAN back to deciduous phenology, trying to follow what is done in the TRUNK as closely as possible.  For the moment we are also using Nicolas's patch that enforces senescence if too many of the leaves are in the oldest leaf age class.  This patch is controlled by the LNVGRASSPATCH flag, and is set to T in the standard run.def. 
    232232 
    233233 
    234 === Harvest === 
     234=== Harvest (CHECK) === 
    235235All biomass harvest is recorded in a harvest variable Harvest_pool, this variable also stores the mass and dimensions of the harvest/mortality (absolute numbers!). Related variables were introduced: harvest_type,harvest_cut, and harvest_area. Wood product pools and fluxes from wood and biomass decomposition are calculated in a separate module dedicated to wood use. The dimension of the wood use pools were externalized and can be changed to better address regional differences when aiming for regional simulations. The default 1, 10 and 100 year pools should be replaced by 2, 17 and 50 years pools in Europe.  
    236236 
    237 === Leaf area index map === 
     237=== Leaf area index map (CHECK) === 
    238238Four flags have been identified that control the model behavior in terms of lai: ok_stomate, ok_pheno, impose_veg and read_lai. There is a 5th implicit flag which is whether restart files are used or not. If a restart file is used, the lai values will come from the sechiba restart file which is read at t=48. Given that each flag can take two values, we have 32 configurations in total. Out of these 32 configurations 10 are defined of which about 5 to 7 seem to be intended (for more details see Start and restart - Table 1). Many of the remaining 22 settings are inconsistent (i.e. running stomate to calculate a lai and reading an lai_map to prescribe lai), duplicate other settings, or would require further developments to work properly. Furthermore, the current code does not stop or warn when inconsistent settings are selected. The table (see Start and restart) proposes a scheme with 2 flags which can run with our without restart files, thus resulting in 8 different ways to control the lai in sechiba or the initial lai in stomate. The remaining 2 combinations are inconsistent and will stop the model. 
    239239 
     
    242242The functionality to simply prescribe an lai value (either through impose or by reading a map) will need to be replaced by functionality that prescribes or reads the biomass, leaf age, and number of individuals. Given that the current lai map is based on a previous ORCHIDEE run, the same approach could be used to generate a spatially explicit canopy map that contains biomass, individuals and leaf age distribution. Nevertheless, reading an observed lai, i.e., from MODIS, and using it to force ORCHIDEE-CN-CAN would require a substantial number of assumptions to turn an aggregated 1D lai value into a disaggregated 3D canopy at the PFT level. 
    243243 
    244 === Land cover change (with age classes) === 
     244=== Land cover change (with age classes) (CHECK) === 
    245245Land cover change now accounts for age classes. It is controlled by the flags '''land_cover_change''' and '''veget_update'''. Set '''land_cover_change''' = n and '''veget_update''' = 0Y if land cover change should be disabled. The wood pool and its subsequent fluxes were moved from the land cover change routine to a separate routine. Furthermore, land cover change also deals with the change of biological land uses to non biological land uses (of which the most important change is probably urbanization). If urbanization happens, all the carbon an nitrogen are stored in a series of variables '''burried_xxx''' where xxx stands for a different pool, e.g., litter, soil, .... Burried_xxx are cumulative variables thus increasing over time. There is a place holder in sapiens_lcchange.90 to also develop the release of the burried carbon and nitrogen following de-urbanization (see ticket #616).  The series of the burried_xxx variables are not yet written to an output file but this could be easily added. 
    246246 
    247247An interesting parameter is '''min_vegfrac'''. When reading in a land cover map, PFTs with a fraction below min_vegfrac are removed. Likewise the fraction cover of a PFT after a land cover change should not be less than min_vegfrac either. This requirement seems to have been solely established to avoid ending up with too many PFTs with very small fractions. Because the the non-biological and biological fraction covers of each pixel should sum up to one, removing even these very small fractions implies that these farctions need to be added to one of the remaining PFTs. First it is tried to add the fraction to the bare soil (this will only be accepted if the new fraction of the bare soil exceeds min_vegfrac), then the code tries to allocate the residual fraction to the largest vegetated fraction. If age classes are used this should be the largest vegetated fraction in the first age class of a PFT. If all of the above failed, the residual fraction is added to frac_nobio irrespective of whether frac_nobio exceeds min_vegfrac. Everytime this happens, the failure to meet the min_vegfrac criterion is registered in the variable '''failed_vegfrac'''. This variable is not yet added to an output file.  
    248248 
    249 Note that the min_vegfrac critrion could be the reason of why very small land cover changes occur. Another consequence is that the land cover fractions in the model are not exactly the same as those read in from the maps. Deviations should remain small and should not accumulate over time. Assume that in y0 the fraction of PFT2 = 0. In y1 the map tells us the fraction is half of min_vegfrac. The model will keep the PFT fraction to zero. The model and the map will no longer be in line with each other. In y2 the map tells us the fraction is twice min_vegfrac. The model will now accept the change. The model and the map will be in line with each other. 
    250  
    251 === Litter decomposition === 
     249Note that the min_vegfrac criterion could be the reason of why very small land cover changes occur. Another consequence is that the land cover fractions in the model are not exactly the same as those read in from the maps. Deviations should remain small and should not accumulate over time. Assume that in y0 the fraction of PFT2 = 0. In y1 the map tells us the fraction is half of min_vegfrac. The model will keep the PFT fraction to zero. The model and the map will no longer be in line with each other. In y2 the map tells us the fraction is twice min_vegfrac. The model will now accept the change. The model and the map will be in line with each other. 
     250 
     251=== Litter decomposition (CHECK) === 
    252252After large-scale dieback events (with a closed n-cycle, i.e., impose_cn = n), so much soil mineral N becomes immobilized to decompose litter that too little N is left for plant regrowth. To address this, we implicitly represent the action of fungivores, which eat the decomposing fungi and release N for the plants and increase N turnover rates. We set aside a fraction of qd (stomate_litter.f90) which becomes available for plant uptake in nitrogen_dynamics. This fraction is calculated and is at its maximum when the litter pool is large compared to the biomass pool. The fraction is at its lowest when the living biomass is high compared to the litter biomass. The implemented principle mimics a Lokta-Volta dynamic where the predator are the fungivores and the prey the fungi. The share of the N contained in the decomposing fungi that is released as an excrement from the fungivores ranges between 0 and 1 and is calculated. 
    253253 
     
    262262}}} 
    263263 
    264 === Litter raking === 
     264=== Litter raking (CHECK) === 
    265265Tree litter was collected from the forest and used in the winter in stables instead of straw. In spring the litter and manure was spread on the croplands. This lateral flow of C and N between PFTS in the same pixel can be accounted for in ORCHIDEE-CN-CAN by setting '''use_litter_raking''' = y. If litter raking is to be used, the model will search for annual maps. The path of these maps needs to be specified in COMP/stomate.card. Litter raking maps were prepared for Europe. Unless liter raking is your research topic set '''use_litter_raking''' = n. 
    266266 
    267 === Mortality === 
     267=== Mortality (CHECK) === 
    268268ORCHIDEE-CN-CAN distinguished 3 types of natural mortality. The first two options are similar to those in previous version of ORCHIDEE and are set by the flag '''constant_mortality'''. If '''constant_mortality''' = y, the background mortality of a forests is calculated as a constant, prescribed fraction. In ORCHIDEE-CN-CAN, this fraction is given by '''residence_time''' (see also forest management).  If '''constant_mortality''' = n, the background mortality of a forest is a function of its net primary production (npp). If npp decreases, mortality will increase.  
    269269 
     
    272272Notice that the meaning of residence_time is very different between the CAN branch and the trunk.  In the trunk biomass has no age and thus the residence time accounts for all forest dynamics including self-thinning, pests, diseases and windthrow. In the CAN branch, biomass does have an age and self-thinning is explicitly accounted for, hence, the residence time should be much higher as it only accounts for pest, diseases and windthrow. Even the latter is not exact because as long as those disturbances are small scale they are probably accounted for in the parametrization of self-thinning. 
    273273 
    274 === Nitrogen cycle === 
     274=== Nitrogen cycle (CHECK) === 
    275275ORCHIDEE-CN-CAN strictly follows ORCHIDEE-CN where it concerns the implementation of the N-cycle. Following mass balance problems caused by negative N mineralization and followed by negative immobilization, the code has been slightly adjusted to ensure mass balance closure. First the flag '''stomate_ok_ncycle''' needs to be set to y, to run the model with a N-cycle. Subsequently the parameter '''impose_cn''' is used to control the N-cycle calculations. If set to y, C/N ratios are calculated but whenever N appears to be limiting, it is taken from the atmosphere to satisfy this need. This is the preferred setting when testing/developing the code without a proper spin-up. N-limitation will only be accounted for when setting impose_cn = n. With this setting the N-cycle is closed (checked when checking for mass balance closure) it requires a spin-up to produce reasonable results. 
    276276 
     
    300300}}} 
    301301 
    302 === Parameter files === 
     302=== Parameter files (CHECK) === 
    303303A model run now requires three different parameter files: run.def, orchidee.def and orchidee_pft.def. LibIGCM reads these files in COMP/orchidee_ol.card.  
    304304* The run.def contains all the information for the driver. This is also the file where the default global domain can be reduced (LIMIT_N, LIMIT_S, LIMIT_E and LIMIT_W). When the same experiment is to run in off-line and coupled mode, only the run.def should be changed. 
     
    312312* orchidee_pft.def with 64 PFTs demonstrates how MTCs, PFTs, species and age classes can all be combined in a single set-up. The species parameters are limited to the European domain, the MTCs are used outside of Europe. In Europe 4 age classes are distinguished, outside of Europe a single age is used. This is the set-up that was used in Naudts et al 2016 and Luyssaert et al 2018. 
    313313 
    314 === Phenology (forced) === 
     314=== Phenology (forced) (CHECK) === 
    315315The pft-specific parameter '''always_init''' controls whether the phenology depends on the reserves (set to .FALSE.) or is forced (set to .TRUE.). Note that a forced phenology (thus always_init = .TRUE.) has no ecophysiological basis, it is a numerical approach to stabilize the vegetation cover. A stable vegetation cover is particulary welcome in coupled simulations but likley hides real vegetation dynamics (especially under future climate conditions) or problems in other routines or parameter settings. If a PFT keeps dying in an area where it is currently present, this would hint at a problem with the current model/parameters. If a PFT keeps dying under future conditions, it may be a real response (depending on the PFT). If forced phenology is used, plants will develop an initial canopy in phenology irrespective of whether the plant had sufficient carbon and nitrogen reserves and for evergreen species irrespective of whether the canopy was viable at all. This setting basically overcomes a mortality event at the expense of taking up carbon and nitrogen from the atmosphere. When used in combination with impose_cn = n, an inconsistency is introduced: impose_cn = n reflect the desire to close the nitrogen cycle, always_init = y opens a backdoor in the nitrogen cycle.  
    316316 
    317317From a conceptual point of view, CN-CAN is all about vegetation dynamics and thus instabilities in the vegetation cover. In CN-CAN there are two processes that can deal with dying PFts including evergreens PFTs. First, ok_recruitment could used. If ok_recruitment = .TRUE. a decreas in the canopy cover will result in more light reaching the forest floor which in turn should trigger recruitment of -for the moment- the same PFT. Generation can take over from each other without loosing the canopy cover entirely. Second, if there are insufficient reserves to grow no leaves, there will be no or insufficient gpp, the crabon reserves will be consumed by respiration processes, the plants will be killed, the biomass transferred to the litter pools and the same or another PFT (see section on species change) will be replanted. CN-CAN was developed to work with always_init = .FALSE. so this has become the default value, contrary to the trunk where always_init = .TRUE. is the default. 
    318318 
    319 === Photosynthesis === 
     319=== Photosynthesis (CHECK) === 
    320320Photosynthesis is calculated as in ORCHIDEE-CAN, and ORCHIDEE-CN but the way the canopy levels are defined has changed. The reason of this change is in the albedo and energy budget for which physical layers are required. For this reason the space between the bottom and the top of the canopy is divided into x layers. X is set by the parameter '''nlevels_photo'''. Applications with ORCHIDEE-CAN used nlevels_photo = 10. This values was retained in ORCHIDEE-CN-CAN. Contrary to ORCHIDEE-CN and previous versions of ORCHIDEE where each canopy layer contained 0.5 units of LAI, in ORCHIDEE-CN-CAN, each canopy layer will have the same depth (in m) but will contain a different amount of LAI because tree canopies are assumed spherical. 
    321321 
    322 === Plant water stress === 
     322=== Plant water stress (CHECK) === 
    323323With ORCHIDEE-CN-CAN there is two option to calculate waters stress. 
    324324* Same as in the trunk, where a soil moisture stress functions limits C assimilation through constraints on the carboxylation capacity. 
     
    331331The following PFT dependent parameters are needed for the calculations accounting for plant hydraulic architecture; minimal leaf water potential '''psi_leaf''', sapwood leaf water potential that causes 50 % loss of xylem '''psi_50''', maximum sapwood conductivity '''k_sap''', root conductivity '''k_root''', leaf conductivity '''k_leaf''', specific root lenght '''srl''', fine root radius '''r_froot''', minimum root water potential '''psi_root'''. 
    332332 
    333 === Prescribe initial vegetation === 
     333=== Prescribe initial vegetation (CHECK) === 
    334334+++UPDATE+++ 
    335335At the start of the model run or after a die-back or clear-cut new vegetation needs to be planted as ORCHIDEE does not grow vegetation from seeds. The initial dimensions of the vegetation is thus prescribed. Given that the allocation follows allometric relationships, any of the tree dimensions or any mass of any component could have been used to prescribe. The variable height was chosen because it is easy to (mentally) visualize the prescribed vegetation. In the run.def  '''height_init_min''' and '''height_init_max''' need to be prescribed. Typical values are 2 to 5 meter. If more than one diameter class is used, '''height_init_max ''' needs to larger than '''height_init_min'''. The larger the difference between the min and max, the more vegetation layers the canopy will be composed from.  
     
    340340++++++++++++ 
    341341 
    342 === Pseudo sugar loading === 
     342=== Pseudo sugar loading (CHECK) === 
    343343The model code does not control the C/N ratio of the labile pool hence, even if there is a strong N-limitation, the model can accumulate lots of carbon in the labile pool. The first CN-version was indeed doing this as the plant could easily store several 1000 gC m-2. As this was considered unrealistic, the excess C in the labile pool was burned-off by some excess respiration. Although this luxury/wastage respiration has been suggested in the literature (see Amthor et al 2000 and Chamber et al 2004) it is not confirmed by many observations. It was therefore decided to control the size of the labile pool. The model already had an estimate of the optimal pool size of the labile and carbres pools. If the plant has more labile carbon than the optimal, GPP is downregulated (too much sugars in the leaves will increase the viscosity and hamper the sapflow in the phloem. The viscosity can be decreased again by closing the stomata and transpiring less of the sapflow in the xylem. By closing the stomata, GPP will be downregulated. See Holtta et al 2017 doi:10.1093/treephys/tpx011). Because ORCHIDEE has no sapflow, turgor and viscosity yet, we used a simple ratio to downregulate NUE. Hence, the feature was called '''pseudo sugar loading''' to make clear this is not the real thing yet. 
    344344 
    345345The regulation is smoothened by setting boundaries to avoid sudden decreases in GPP (which are not apparent in the data). Smoothing is taken care of in stomate_vmax.f90. If the plant has less carbon in its labile and carbres pools than wanted, the NUE is upregulated. Up regulation is also capped to avoid crazy NUE values and high frequency changes between up and downregulation. Up and downregulation are done in stomate_vmax.f90. The parameters than control the smoothing are '''sugar_load_min''' and '''sugar_load_max''' and can be set in the run.def. Pseudo sugar loading is now the default setting but it can be switched of by setting the flag '''ok_sugar_loading=n''' in the run.def. 
    346346 
    347 === Recruitment === 
     347=== Recruitment (CHECK) === 
    348348When stands grow old the tree density decreases and under certain conditions the LAI can no longer cover the ground area. When this happens productivity will start to decrease. In nature the decrease in LAI comes with an increase in the amount of light reaching the forest floor which enables seedlings to grow and to restore the LAI. This process is known as recruitment. Note that in managed forest and forest with a lot of stand replacing disturbances (for example, fire) the forest may never reach the stage where the canopy sufficiently opens up to enable recruitment. 
    349349 
     
    352352Recruitment has been developed, tested and validated for tropical forests. There is no reason why it shouldn't work for other forests. Initial test for temperate regions show that it works there as well. Also forest productivity at higher ages seems relatively sensitive to recruitment. At present recruitment was introduced at the PFT level. It probably makes more sense to link it to the management strategy than to the PFT. This needs to be checked. 
    353353 
    354 === River routing === 
     354=== River routing (CHECK) === 
    355355The river routing code was not touched during the development of ORCHIDEE-CN-CAN. This functionality has not been evaluated yet for ORCHIDEE-CN-CAN, although it technically runs. Unless rivers are your main interest, set '''river_routing''' to n.  
    356356 
    357 === run.def === 
     357=== run.def (CHECK) === 
    358358The format of the run.def has been modified to use the same structure for both coupled and off-line runs.  The run.def is split between some driver settings (written in run.def), a bunch of general items which control the ORCHIDEE model (in the orchidee.def file), and PFT-dependent parameters (in the orchidee_pft.def file). 
    359359 
    360360A script is now included with the config/ORCHIDEE_OL directory called MAKE_RUN_DEF.  This will generate 
    361361 
    362 === Soil maps === 
     362=== Soil maps (CHECK) === 
    363363ORCHIDEE-CN-CAN runs for two soil maps: zobler (3 soil types) and usda (12 soil types). The usda map will become the default setting. The code had to be adjusted in sechiba_hydrol_architect.f90 and stomate_windthrow.f90. The soil map can be selected in the run.def by setting the value for '''soiltype_classif''': 
    364364{{{ 
     
    374374}}} 
    375375 
    376 === Single layer vs multi layer energy budget === 
     376=== Single layer vs multi layer energy budget (CHECK) === 
    377377There are still some issues with the multi-layer energy budget, and it is currently only possible to run for one PFT. Thus, we suggest you use the single layer energy budget. This can, however, be done by two different methods that gives the exact same results: 
    378378A - Use the energy scheme as found in the original enerbil.f90 
     
    422422}}} 
    423423 
    424 === Specific leaf area === 
     424=== Specific leaf area (CHECK) === 
    425425Similar to ORCHIDEE-CN, ORCHIDEE-CN-CAN users can choose to use a constant specific leaf area (SLA) or a dynamic (SLA) by setting the flag '''dyn_sla'''. SLA is a fundamental parameter in the allocation scheme and it is well established that SLA is dynamic in nature especially during leaf onset. Nevertheless, the effect of this flag is much more limited than one could expect based on the perceived importance of sla. 
    426426 
    427 === Spin-up === 
     427=== Spin-up (CHECK) === 
    428428The analytical spin-up works with ORCHIDEE-CN-CAN. To ensure growth at the onset of the analytic spin-up for all PFTs initial values are needed for the SOM pools, and that is  irrespective of whether IMPOSE_CN is y or n. The initial pools are set in stomate_io.f90, and they can be specified in the run.def by: 
    429429{{{ 
     
    436436 
    437437 
    438 === Start and restart (under development)=== 
     438=== Start and restart (under development) (CHECK) === 
    439439The table below shows typical configurations to start and restart ORCHIDEE-CN-CAN 
    440440|| '''Sechiba''' || || || || '''stomate''' || || || 
     
    457457* NCO commands could be used to hack into the restart file. This could be powerful when stomate is used and one wants to restart the model after a spin-up but also want that the forest starts growing the first year of the simulation. In that case circ_class_biomass and circ_class_n should be set to zero. This approach is straightforward when no age classes are used. When age classes are used many more variables need to be moved to the correct PFT to avoid conflicts.      
    458458 
    459 === Sechiba vs stomate === 
     459=== Sechiba vs stomate (CHECK) === 
    460460ORCHIDEE-CN-CAN strengthen the links between sechiba and stomate. As in previous versions, stomate makes use of variables calculated in sechiba but in ORCHIDEE-CAN and ORCHIDEE-CN-CAN, sechiba requires information from stomate to work properly. It is possible to prescribe the canopy structure and thus only run sechiba. Set '''lai_map''' = y, the data for a canopy structure map need to come from an ORCHIDEE-CN-CAN run with stomate. All the required information is stored in the sechiba restart file to enable restarting the model without stomate. 
    461461 
    462 === Wind throw === 
     462=== Wind throw (CHECK) === 
    463463The calculation of wind storm damage can be activated by setting '''ok_windthrow''' to y in the run.def. This module calculated the critical wind speed of a stand taking stand and soil properties into account. If the stand is managed, the damaged trees are salvaged logged. If the stand is unmanaged the damaged  trees are left on-site to decompose. The default setting for ok_windthrow is n. The damaged fractions of the stands are moved to the first age class (if more than 1 age class is used). 
    464464