Changes between Version 250 and Version 251 of DevelopmentActivities/ORCHIDEE-DOFOCO


Ignore:
Timestamp:
2020-01-22T23:35:33+01:00 (4 years ago)
Author:
luyssaert
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • DevelopmentActivities/ORCHIDEE-DOFOCO

    v250 v251  
    7474== Functionalities (alphabetical order) == 
    7575 
    76 === Age classes (since  r6470) === 
     76=== Age classes (r6470) === 
    7777Age classes were introduced to better handle heterogeneity at the landscape level. The feature allows us to distinguish between different successional stages of the same PFT (e.g., a newly grown forest vs. a mature forest). Age classes are independent of the number of diameter classes. Using age classes adds a lot of details to both the biophysics and the biogeochemistry following natural disturbances, forest management and land cover change. If half of a grassland is afforested with a PFT that already exists in the pixel, previous versions of ORCHIDEE will combine this newly forest land and the existing forest in a single PFT. This will result in, for example, a low albedo, a high roughness, and other properties.  When age classes are used, the newly afforested and the existing forest will end up in separate PFTs. One will have a high albedo, the other a low albedo, and other properties may differ significantly as well. In CAN with age classes, PFTs are only merged if the youngest age class for a PFT already has biomass. 
    7878 
     
    128128}}} 
    129129 
    130 === Albedo (since r6470) === 
     130=== Albedo (r6470) === 
    131131ORCHIDEE-CN-CAN makes use of a two stream radiative transfer scheme through the canopy, extended to multiple canopy levels (https://doi.org/10.5194/gmd-2016-280). The scheme is based on Pinty et al 2006. This approach accounts not only for the leaf mass but also for the vertical and horizontal distribution of the leaf mass (=canopy structure), calculating an effective LAI based on the solar angle. Light from collimated (black sky) and diffuse (white sky) sources are used, and both are weighted equally as information about this partitioning is not yet available in forcing data.  In ORCHIDEE-CN-CAN the same scheme is used to simulate the reflected, transmitted and absorbed light, of which the absorbed light as a function of canopy level is passed to the photosynthesis routines and used in place of the exponential LAI layering found in older versions of the TRUNK (see the section Photosynthesis). This implies that albedo and photosynthesis are now fully consistent as well as the light reaching the forest floor (the latter is used in for example recruitment). ORCHIDEE-CN-CAN cannot revert to previous approaches for calculating albedo. 
    132132  
     
    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 (since r6470) === 
     145=== Allocation (r6470) === 
    146146ORCHIDEE-CN-CAN uses the allometric allocation as developed in O-CN. 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 (incl. the pseudo sugar loading), the allocation scheme remained rather similar between the 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. This sensitivity is important at the start and the end of the growing seasons when temperatures may be low. 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 a lot/too much. This dampening was observed in ORCHIDEE-CN  and ORCHIDEE-CN-CAN. IN ORCHIDEE-CNP the temperature relationship was removed (hence NPP and GPP are strictly coupled) because the interannual variability became unrealistic.  
    147147 
     
    152152Previously there was a functional link between C and N-allocation and the hydraulic architecture of a plant because both approaches used the same parameter k_root. In DOFOCO k_root described the conductivity of the fine roots and the soil. In ORCHIDEE-CN-CAN this joined conductivity has been split in a fine root conductivity and a soil to root conductivity. Allocation should make use of both conductivities but soil to root conductivity cannot be easily calculated when needed in the allocation. This is subject to future developments. Accounting for the soil to root conductivity in the allocation would imply an adaptation of plant growth to its environment.   
    153153 
    154 === Anthropogenic species change (since r6470) === 
     154=== Anthropogenic species change (r6470) === 
    155155Following 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-CN-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. A example of such a configuration can be found in config/ORCHIDEE_OL/OOL_SEC_STO_FG5. 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. 
    156156 
    157 === Bare soil (since r6470) === 
     157=== Bare soil (r6470) === 
    158158The 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. 
    159159 
    160160At present the default settings combine the new albedo scheme with the single layer energy budget (enerbil) and '''ok_bare_soil_new''' = n. The consequences of this combination of settings should be evaluated against observations. 
    161161 
    162 === Bark beetles (since r6470) === 
     162=== Bark beetles (r6470) === 
    163163The 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 which 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. 
    164164 
    165 === C13 (since r6470) === 
     165=== C13 (r6470) === 
    166166The 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. Following changes to the recalculation of GPP under plant water stress the calculation of Ci is no longer accurate. This may have broken the functionality to calculate C13. Needs to be tested. 
    167167 
    168 === Configurations (since r6470) === 
     168=== Configurations (r6470) === 
    169169The model comes with the following configuration set-ups (config/ORCHIDEE_OL): 
    170170* SPINUP: used for single pixel FLUXNET runs. 
     
    180180* FORCESOIL: Not maintained for ORCHIDEE-CN-CAN. Will be added back once forcesoil.exe has been restored. 
    181181 
    182 === Consistency checks (since r6470) === 
     182=== Consistency checks (r6470) === 
    183183The 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. 
    184184* 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. 
     
    186186* 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. 
    187187 
    188 === CWRR vs Choinel (since r6470) === 
     188=== Croplands (CHECK) === 
     189Makes use of sapiens_planting and sapiens_harvest. Harvest goes into harvest_pool (just like wood) and its decomposition is accounted for in the fluxes from the product use pool. 
     190 
     191=== CWRR vs Choinel (r6470) === 
    189192ORCHIDEE-CN-CAN was developed and tested with CWRR. The Choinel code is removed from ORCHIDEE-CN-CAN. The hydrological schemes were not touched during the development of ORCHIDEE-CN-CAN. The hydraulic architecture in ORCHIDEE-CN-CAN relies on CWRR. 
    190193 
     
    202205The 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. 
    203206 
    204 === Forced clear cut (since r6470) === 
     207=== Forced clear cut (r6470) === 
    205208'''OK_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 start a new stand at the beginning 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). Note that if '''OK_CLEARCUT''' is used, the model will clearcut at the end of every year. The typical set-up should be: 300 years of spin-up with '''OK_CLEARCUT''' set to FALSE, 1 year with '''OK_CLEARCUT''' set to TRUE, a simulation with the length similar to the age of the forest with '''OK_CLEARCUT''' set to FALSE.  
    206209 
     
    234237In 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. 
    235238 
    236  
    237 === Harvest (CHECK) === 
    238 All biomass harvest is recorded in a harvest variable '''harvest_pool''', this variable also stores the mass and dimensions of the harvest/mortality (absolute numbers thus accounting for the pixel area!). 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 were replaced by 2, 17 and 50 years which is closer to the reality for Europe. For most parts of the world a 100 year wood pool is optimistic.  
     239Part of the turnover goes into the harvest pool (was that parameter extermalized?) -> simplified use of grasslands. Harvest goes into harvest_pool (just like wood) and its decomposition is accounted for in the fluxes from the product use pool. 
     240 
     241 
     242=== Harvest (r6470) === 
     243All biomass harvest is recorded in a harvest variable '''harvest_pool''', this variable also stores the mass and dimensions of the harvest/mortality (absolute numbers thus accounting for the pixel area!). 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 were replaced by 2, 17 and 50 years which is closer to the reality for Europe. For most parts of the world a 100 year wood pool is very optimistic.  
    239244 
    240245=== Leaf area index map (CHECK) === 
     
    265270}}} 
    266271 
    267 === Litter raking (CHECK) === 
    268 Tree 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. 
     272=== Litter raking (r6470) === 
     273Tree 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. An example of to set up the model to make use of the historical litter raking maps can be found in config/ORCHIDEE_OL/OOL_SEC_STO_FG4 
    269274 
    270275=== Mortality (CHECK) === 
     
    303308}}} 
    304309 
    305 === Parameter files (CHECK) === 
     310=== Parameter files (r6470) === 
    306311A 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.  
    307312* 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. 
    308 * The orchidee.def contains the details of the experiment together with the settings of the orchidee_ol, sechiba and stomate cards in COMP. Each of the predefined configurations in config/ORCHIDEE_OL will have different settings. These files need to set up manually because each experiment will differ. Copy the best matching predefined experiment from config/ORCHIDEE_OL and use it a template to set-up your own simulation experiment. 
     313* The orchidee.def contains the details of the experiment together with the settings of the orchidee_ol, sechiba and stomate cards in COMP. Each of the predefined configurations in config/ORCHIDEE_OL will have different settings. These files need to set up manually because each experiment will differ. Copy the best matching predefined experiment from config/ORCHIDEE_OL and use it as a template to set-up your own simulation experiment. 
    309314* The orchidee_pft.def is available in different configurations. The configuration depends on the interest of the user in vegetation and its dynamics. The default setting for the moment is the same as the trunk, i.e., 15 pfts with a single age class. Nevertheless other useful orchidee_pft.def files are available. Users can make their own files by making use of the script in the MAKE_RUN_DEF folder. '''Note that different numbers of PFTs will require matching land cover maps. Also the order of the PFTs in the run.def should follow the order of the PFTs in the map. There is no quality control to check whether definition files and input maps following the same PFT order.''' If the PFT maps are available, users can run each of the predefined simulation experiments (config/ORCHIDEE_OL) with all available orchidee_pft.def files. The number of PFTs largely determines the speed of the model. 
    310315 
    311316How to use a different orchidee_pft.def file?  
    312317* Go to COMP/orchidee_ol.card and change the value of !DefSuffix. !DefSuffix = 15pft.1ac will make use of orchidee_pft.def_15pft.1ac, change !DefSuffix = 3pft.1ac to have the model use orchidee_pft.def_3pft.1ac. You can also use your own customized orchidee_pft.def, just make sure the follow the naming guideline.  
    313 * make sure the PFT map has the correct number of units '''nvm''' vs. '''nvmap'''. These numbers are set in orchidee_pft.def but affect the expecation of the model when reading the land cover map. The correct land cover map is set in COMP/sechiba.card 
     318* make sure the PFT map has the correct number of units '''nvm''' vs. '''nvmap'''. These numbers are set in orchidee_pft.def but affect the expectation of the model when reading the land cover map. The correct land cover map is set in COMP/sechiba.card 
    314319* orchidee_pft.def with 3 PFTs make for a powerful test-case. Most of the output variables in stomate have their units in something per square meter of vegetation. So two identical PFTs with different vegetation fractions should still result in the same stomate outputs. If this is not the case, something went wrong with the units (and likely the way veget and/or veget_max are used in the model. To use this test case remember to set impose_veg = y (PARAM/orchidee.def) and veget_update = 0Y (COMP/sechiba.card). The test case can be run over large spatial domains which may also help to find bugs. 
    315320* 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. 
     
    320325From 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 decrease 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 carbon 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. 
    321326 
    322 === Photosynthesis (CHECK) === 
    323 Photosynthesis 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. 
     327=== Photosynthesis (r6470) === 
     328Photosynthesis 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. 
    324329 
    325330=== Plant water stress (CHECK) === 
     
    346351The 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. 
    347352 
    348 The 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. 
    349  
    350 === Recruitment (CHECK) === 
     353The 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. 
     354 
     355=== Recruitment (r6470) === 
    351356When 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. 
    352357 
     
    355360Recruitment 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. 
    356361 
    357 === River routing (CHECK) === 
    358 The 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.  
    359  
    360 === run.def (CHECK) === 
    361 The 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). 
    362  
    363 A script is now included with the config/ORCHIDEE_OL directory called MAKE_RUN_DEF.  This will generate 
     362=== River routing (r6470) === 
     363The river routing code was not touched during the development of ORCHIDEE-CN-CAN. This functionality works has not been evaluated yet for ORCHIDEE-CN-CAN, although it technically runs. Unless rivers are your main interest, set '''river_routing''' to n. The functionality still has problem when combined with the zoomed grids because pixels far away from the zoom become so big that some rivers can no longer reach the sea.  
     364 
     365=== run.def (r6470) === 
     366The 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 its driver settings (written in run.def), general items which control the ORCHIDEE model (in the orchidee.def file), and PFT-dependent parameters (in the orchidee_pft.def file). A script is now included with the config/ORCHIDEE_OL directory called MAKE_RUN_DEF. This scripts generates different orchidee_pfts.def files. Default model configurations (and thus different orchidee.def files) can be found in config/ORCHIDEE_OL. 
    364367 
    365368=== Soil maps (CHECK) === 
    366 ORCHIDEE-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''': 
     369ORCHIDEE-CN-CAN runs for two soil maps: zobler (3 soil types) and usda (12 soil types). Although the usda map has been the default for a while, ORCHIDEE-CN-CAN is back at using Zobler due to yet to resolve issues with the usda map. The code had to be adjusted in hydraulic_architect.f90 and stomate_windthrow.f90. The soil map can be selected in the run.def by setting the value for '''soiltype_classif''': 
    367370{{{ 
    368371SOILTYPE_CLASSIF= usda 
     
    425428}}} 
    426429 
    427 === Specific leaf area (CHECK) === 
     430=== Specific leaf area (r6470) === 
    428431Similar 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. 
    429432 
    430 === Spin-up (CHECK) === 
     433=== Spin-up (r6470) === 
    431434The 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: 
    432435{{{ 
     
    436439SOM_INIT_SURFACE = 1000 
    437440}}}  
    438 The initial values of carbon for the four SOM pools are used globally. Sensitivity test have shown that the analytic spin-up is not sensitive to the actual size of the initial values. The different systems will after a while settle into their own states (N limited or saturated) in spite of having the same initial state. Convergence appears to be faster if initial values are set. 
     441The initial values of carbon for the four SOM pools are used globally. Sensitivity test have shown that the analytic spin-up is not sensitive to the actual size of the initial values. The different ecosystems will after a while settle into their own states (N limited or saturated) in spite of having the same initial state. Convergence appears to be faster if initial values are set. 
    439442 
    440443 
     
    460463* 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.      
    461464 
    462 === Sechiba vs stomate (CHECK) === 
    463 ORCHIDEE-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. 
    464  
    465 === Wind throw (CHECK) === 
    466 The 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). 
     465=== Sechiba vs stomate (r6470) === 
     466ORCHIDEE-CN-CAN strengthened 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. 
     467 
     468=== Wind throw (r6470) === 
     469The calculation of wind storm damage can be activated by setting '''ok_windthrow''' to y in the orchidee.def. This module calculates 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 replanted and moved to the first age class (if more than 1 age class is used). 
    467470 
    468471