Skip to content
Marcos Longo edited this page Feb 5, 2021 · 17 revisions

The table below summarises the settings options for ED-2.2 simulations. For many mechanisms, multiple algorithms have been implemented; in these cases, we highlight the status of each implementation:

  • ED-2.2 default. These are the options described in the ED-2.2 technical note (Longo et al., 2019) and that have been thoroughly tested. When unsure, we recommend to use this option.
  • ED-2.2 alternative. These are the options described either in the ED-2.2 or other publications (mostly Xu et al., 2016), and should be fully functional. Depending on the application, this may be the most appropriate option.
  • Legacy. Older implementations that have been implemented in ED-1.0, ED-2.0, or ED-2.1. These options are still fully functional and may be the most appropriate option depending on the question.
  • Beta. Well developed alternative implementations to the ED-2.2 default. These implementations are nearly complete, but they have not be thoroughly tested. Feel free to try if you think it is useful, but bear in mind that they may still need some adjustments.
  • Under development. Alternative implementations to the ED-2.2 default, but not yet fully implemented. Do not use these options unless you are willing to contribute to the development.
  • Deprecated. Older implementations that have shown important limitations. They are included for back-compatibility but we strongly discourage their use in most cases.
  • Non-functional. Older implementations that have been discontinued or methods not yet implemented. Do not use these options.

References

Longo M, Knox RG, Medvigy DM, Levine NM, Dietze MC, Kim Y, Swann ALS, Zhang K, Rollinson CR, Bras RL, Wofsy SC, Moorcroft PR. 2019. The biophysics, ecology, and biogeochemistry of functionally diverse, vertically and horizontally heterogeneous ecosystems: the Ecosystem Demography model, version 2.2 – part 1: Model description. Geosci. Model Dev. 12: 4309–4346, doi:10.5194/gmd-12-4309-2019.

Xu X, Medvigy D, Powers JS, Becknell JM , Guan K. 2016. Diversity in plant hydraulic traits explains seasonal and inter-annual variations of vegetation dynamics in seasonally dry tropical forests. New Phytol. 212: 80–95, doi:10.1111/nph.14009.

ED2IN Namelist

Name Description
NL%EXPNME Simulation Name
NL%RUNTYPE Type of run sought:
  • 'INITIAL' - ED-2 will start a new run. Initial conditions will be set by NL%IED_INIT_MODE. The initial conditions can be based on a previous run (restart/history), but then it will use only the biomass information as a simple initial condition. Energy, water, and CO2 will use standard initial conditions.
  • 'HISTORY' - ED-2 will resume a simulation from the last history, and every variable (including forest structure and thermodynamics) will be assigned based on the history file. Important: this option is intended for continuing interrupted simulations (e.g. power outage). We discourage users to select this option and provide restart files generated by different commits.
  • 'RESTORE' - This option automatically decides whether to start a new run (akin to 'INITIAL'), or to continue an existing run from the last history file. In case of the latter, SFILIN, IYEARH, IMONTHH, IDATEH, ITIMEH from the namelist will be ignored, the last available history will define them.
NL%IMONTHA Together with IDATEA, IYEARA, and ITIMEA, this variable specifies the time corresponding to the initial state. It is an integer ranging from 1 to 12. When doing a HISTORY run, these variables are unmodified. Instead, change IMONTHH, IDATEH, IYEARH, and ITIMEH (see below).
NL%IDATEA The day of the month that corresponds to the initial state. This is an integer ranging from 1 to 31.
NL%IYEARA The year that corresponds to the initial state. This is an integer.
NL%ITIMEA The time of day corresponding to the initial state. It is in UTC, and has the form hhmm. It is an integer.
NL%IMONTHZ Together with IDATEZ, IYEARZ, and ITIMEZ, this variable specifies the time at which integration of the state variables should cease. It is an integer ranging from 1 to 12.
NL%IDATEZ Day of the month on which integration ceases. It is an integer ranging from 1 to 31.
NL%IYEARZ Year in which integration ceases. It is an integer.
NL%ITIMEZ The time of day at which integration ceases. It is in UTC, and has the form hhmm. It is an integer.
NL%DTLSM Basic time step [seconds] for photosynthesis, and maximum step for thermodynamics. Recommended values range from 240 to 900 seconds when using the 4th order Runge Kutta integrator (NL%INTEGRATION_SCHEME=1). We discourage using the forward Euler scheme (NL%INTEGRATION_SCHEME=0), but in case you really want to use it, set the time step to 60 seconds or shorter.
NL%RADFRQ Time step for the canopy radiative transfer model [seconds]. This value must be an integer multiple of NL%DTLSM, and we recommend it to be exactly the same as NL%DTSLM.
NL%MONTH_YRSTEP Month in which the annual time step (patch dynamics) should occur.
NL%N_ED_REGION The model may be run over 2-dimensional regions, at point locations, or both. NL%N_ED_REGION refers to the number of (typically disjoint) 2-dimensional regions to run the model. This can be set to 0 as long as NL%N_POI > 0.
NL%GRID_TYPE For 2-dimensional regions, this determines the grid projection. A value of 0 sets up a rectangular latitude/longitude grid; a value of 1 sets up a polar-stereographic grid.
NL%GRID_RES For latitude/longitude grids, this is the spacing (in degrees) of the grid mesh. Not used if NL%GRID_TYPE = 1.
NL%ED_REG_LATMIN List of length NL%N_ED_REGION. On a latitude/longitude grid, this specifies the minimum latitude of each region. Allowed values of -90 to 90. Not used if NL%GRID_TYPE = 1.
NL%ED_REG_LATMAX Like ED_REG_LATMIN, but this instead specifies the maximum latitude. Allowed values are -90 to 90. Not used if NL%GRID_TYPE = 1.
NL%ED_REG_LONMIN Like ED_REG_LATMIN, but this instead specifies the minimum longitude. Allowed values are -180 to 180. Not used if NL%GRID_TYPE = 1.
NL%ED_REG_LONMAX Like ED_REG_LATMIN, but this instead specifies the maximum longitude. Allowed values are -180 to 180. Not used if NL%GRID_TYPE = 1.
NL%NNXP Number of points in the X direction. Not used if NL%GRID_TYPE = 0.
NL%NNYP Number of points in the Y direction. Not used if NL%GRID_TYPE = 0.
NL%DELTAX X and Y grid spacing scale. Not used if NL%GRID_TYPE = 0.
NL%DELTAY in metres (dimension 1). Not used if NL%GRID_TYPE = 0.
NL%POLELAT Latitude of pole point (dimension 1). Not used if NL%GRID_TYPE = 0.
NL%POLELON Longitude of pole point (dimension 1). Not used if NL%GRID_TYPE = 0.
NL%CENTLAT Latitude of central point (list with NL%N_ED_REGION elements). Not used if NL%GRID_TYPE = 0.
NL%CENTLON Longitude of central point (list with NL%N_ED_REGION elements). Not used if NL%GRID_TYPE = 0.
NL%NSTRATX Fraction of the sizes in X direction given above that I should use for each region. Not used if NL%GRID_TYPE = 0.
NL%NSTRATY Fraction of the sizes in X direction given above that I should use for each region. Not used if NL%GRID_TYPE = 0.
NL%N_POI The number of point locations (aka polygons of interest or POIs) at which the model should be run. This can be zero as long as NL%N_ED_REGION > 0.
NL%POI_LAT list of the latitudes of the POIs. Allowed values are -90 to 90.
NL%POI_LON list of the longitudes of the POIs. Allowed values are -180 to 180.
NL%POI_RES Grid resolution of each POI (degrees). This is used only to define the soil characteristics when these data are obtained from gridded files (i.e., when NL%ISOILFLG = 1, NL%ISLCOLFLG = 1, and/or NL%ISOILDEPTHFLG = 2).
NL%LOADMETH Load balancing method. This is only used by regional runs, when RUNTYPE is set to HISTORY, or when IED_INIT_NODE is set to 4 or 5. This is used to determine the method in which the polygons are going to be split
  • 0 - (ED-2.2 default) Let the loadmaster determine what is best. This option is recommended when the number of polygons exceed the number of available cores.
  • 1 - The "workload" will be evenly distributed across nodes. The workload is defined as the total number of integration time steps per month that each polygon takes. This works well but option 3 may be more efficient, so it is preferable to use option 0 instead.
  • 2 - Try to load an equal number of polygons per node. This option is recommended when the number of polygons is similar to the number of available cores.
  • 3 - Similar to 1, but the rounding is done differently. This works well but option 1 may be more efficient, so it is preferable to use option 0 instead.
NL%IFOUTPUT This variable, together with IDOUTPUT, IMOUTPUT, IYOUTPUT, and ITOUPUT specifies the time scales on which model generates output. In all cases, 0 means not to write the output file, and 3 means to write the output file (HDF5 format). Options 1 (ASCII) and 2 (Binary) are no longer supported and no longer functional. IFOUTPUT corresponds to the instantaneous state variables(site-averaged).
NL%IDOUTPUT Flag specifying whether to write out daily averages (site-averaged).
NL%IMOUTPUT Flag specifying whether to write out monthly averages (site-averaged).
NL%IQOUTPUT Monthly means of the diurnal cycle (one file per month). The number of points for the diurnal cycle is 86400 / NL%FRQANL
NL%IYOUTPUT Flag specifying whether to write out yearly averages (site-averaged).
NL%ITOUTPUT Flag specifying whether to write out a specific file with instantaneous fluxes combined in a single file per year (site-averaged). This is used for optimization purposes only.
NL%IOOUTPUT
Observation time output. Equivalent to IFOUTPUT, except only at the times specified in NL%OBSTIME_DB (see below).
NL%ISOUTPUT Flag specifying whether history restart files are to be generated. 0 - no file; 1 - save ascii (non functional); 2 - save RAMS-vfm file (non functional); 3 - save HDF5.
NL%IADD_SITE_MEANS
This variable, along with NL%IADD_PATCH_MEANS and NL%IADD_COHORT_MEANS, determine which level of aggregation to include in the output. When enabled, the files will contain more detailed output, but they may add a lot of disk space (especially if you want the fast output to have the detailed. NL%IADD_SITE_MEANS controls the site-level averages. The options are additive, and the indices below represent the different types of output.
  • 0 - No site-level averages in the analysis output files.
  • 1 - Include site-level averages in the monthly output (NL%IMOUTPUT and NL%IQOUTPUT).
  • 2 - Include site-level averages in the daily output (NL%IDOUTPUT).
  • 4 - Include the site-level averages in sub-daily output (NL%IFOUTPUT and NL%IOOUTPUT).
For example, in case you don't want any site output, set NL%IADD_SITE_MEANS to 0. In case you want to generate include site means to both daily and monthly outputs, but not the sub-daily means, set NL%IADD_SITE_MEANS to 3 (1 + 2). Any combination of the above options is acceptable (i.e., NL%IADD_SITE_MEANS can be any number between 0 and 7, including 0 and 7).
NL%IADD_PATCH_MEANS Flag to determine which output files should include patch-level averages. This flag works similarly to NL%IADD_SITE_MEANS.
NL%IADD_COHORT_MEANS Flag to determine which output files should include patch-level averages. This flag works similarly to NL%IADD_SITE_MEANS.
NL%ATTACH_METADATA Flag for attaching metadata to HDF datasets attaching metadata will aid new users in quickly identifying dataset descriptions but will compromise I/O performance significantly. 0 = no metadata, 1 = yes metadata
NL%UNITFAST Flag specifying the units of FRQFAST and OUTFAST. 0 - Seconds; 1 - Days; 2 - Calendar months (variable) 3 - Calendar years (variable) PS: If NL%OUTFAST is set to special flags (-1 or -2), NL%UNITFAST will be ignored.
NL%UNITSTATE
Flag specifying the units of NL%FRQSTATE and NL%OUTSTATE. 0 - Seconds; 1 - Days; 2 - Calendar months (variable) 3 - Calendar years (variable) PS: If NL%OUTSTATE is set to special flags (-1 or -2), NL%UNITSTATE will be ignored.
NL%OUTFAST This specifies the time interval between new fast output files. Values are in seconds and must be <= 1 month. Values < NL%FRQFAST are ignored so each time will be written into a separate file. Special values are -1 = one file per day; -2 = one file per month.
NL%OUTSTATE Similar to OUTFAST, but for full state (history) files. Please notice that this option should be avoided in case the user is intending to run a restart or history run using the state files afterwards.
NL%ICLOBBER Flag specifying what to do if the model is trying to create an output or history file that already exists. If set to 0, the run will crash. If set to 1, previously existing files will be overwritten.
NL%FRQFAST
Time interval between analysis output. If NL%OUTFAST is not a special value and is less than FRQFAST, this means that a new output will be written into a different file every NL%FRQFAST. Otherwise, files will be created every NL%OUTFAST seconds, and each file will contain one or more times (every NL%FRQFAST).
NL%FRQSTATE
Similar to NL%FRQFAST, but for history output.
NL%FFILOUT Character string giving the path and prefix of analysis (fast, daily, monthly, yearly, yearly flux) files.
NL%SFILOUT Character string giving the path and prefix of history files.
NL%IED_INIT_MODE
Flag specifying how the initial model state will be determined:
  • -1 - start with a true (absolute) bare ground run. Plants will never grow under this option.
  • 0 - indicates that vegetation will be initialized with a few seedlings (near-bare ground).
  • 1 - (Deprecated) This will do a history restart from ED1-type restart files.
  • 2 - (Deprecated) this will do a standard history restart from ED2-type restart files.
  • 3 - this will initialize via ED-2.0 and site file restarts.
  • 4 - A value of 4 will initialize from ED2.1 H5 history/state files that take the form: 'dir/prefix-gxx.h5'; initialization files MUST end with -gxx.h5 where xx is a two digit integer grid number; each grid has its own initialization file; as an example, if a user has two files to initialize their grids with: example_file_init-g01.h5 and example_file_init-g02.h5, then NL%SFILOUT = 'example_file_init'.
  • 5 - similar to option 4, except that you may provide several files (including a mix of regional and POI runs, each file ending at a different date). This will not check date nor grid structure, it will simply read all polygons and match the nearest neighbour to each polygon of your run. SFILIN must have the directory common to all history files that are sought to be used, up to the last character the files have in common. For example if your files are /mypath/P0001-S-2000-01-01-000000-g01.h5, /mypath/P0002-S-1966-01-01-000000-g02.h5, ..., /mypath/P1000-S-1687-01-01-000000-g01.h5, then set NL%SFILIN = '/mypath/P'.
  • 6 - this will do a standard history restart from ED-2.0-type restart files, as in option 2, but it will assume that the PFT numbers are the same as ED-2.1/ED-2.2. This is the default option for single-site initialization using forest inventory data.
  • 7 - initialize from a list of both POI and gridded ED2.1 state files, organized in the same manner as 5. This method overrides the soil database info and takes the soil texture and soil moisture information from the initializing ED2.1 state file. It allows for different layering, and assigns via nearest neighbor.
NL%EDRES The grid resolution of ED2 restart files with multiple sites (used only when IED_INIT_MODE = 3).
NL%SFILIN The meaning and the size of this variable depends on the type of run, defined by variable NL%RUNTYPE.
  • NL%RUNTYPE='INITIAL'. Then this is the path+prefix of the previous ecosystem state. This has dimension of the number of grids so you can initialize each grid with a different dataset. In case only one path+prefix is given, the same will be used for every grid. Only some ecosystem variables will be set up here, and the initial condition will be in thermodynamic equilibrium.
  • NL%RUNTYPE='HISTORY'. This is the path+prefix of the history file that will be used. Only the path+prefix will be used, as the history for every grid must have come from the same simulation.
NL%ITIMEH Time of day corresponding to the restart files when RUNTYPE is set to HISTORY. It is in UTC and has the format hhmm. It is an integer.
NL%IDATEH Day of the month corresponding to the restart files when RUNTYPE is set to HISTORY. It ranges from 1 to 31.
NL%IMONTHH Month corresponding to the restart files when RUNTYPE is set to HISTORY. It ranges from 1 to 12.
NL%IYEARH Year corresponding to the restart files when RUNTYPE is set to HISTORY.
NL%NZG Number of soil layers. One value for all regions and polygons of interest.
NL%NZS Maximum number of snow/water pounding layers. One value for all regions and polygons of interest. This is used only when snow is accumulating. If only liquid water is standing, the water will be always collapsed into a single layer.
NL%ISOILFLG This controls how to initialise soil texture. This must be a list with NL%N_ED_REGION+NL%N_POI elements. The first N_ED_REGION elements correspond to each gridded domain (from first to last). Elements between NL%N_ED_REGION+1 and NL%N_ED_REGION+NL%N_POI correspond to the polygons of interest (from 1 to NL%N_POI. Options are:
  • 1 — Read in soil textural class from the files set in NL%SOIL_DATABASE.
  • 2 — Assign either the value set by NL%NSLCON (see below) or define soil texture from NL%SLXSAND and NL%SLXCLAY.
NL%ISLCOLFLG This controls how to initialise soil colour. This must be a list with NL%N_ED_REGION+NL%N_POI elements. The first NL%N_ED_REGION elements correspond to each gridded domain (from first to last). Elements between NL%N_ED_REGION+1 and NL%N_ED_REGION+NL%N_POI correspond to the polygons of interest (from 1 to NL%N_POI). Options are:
  • 1 - Read in soil colour class from the files set in NL%SLCOL_DATABASE (see below).
  • 2 - Assign either the value set by NL%ISOILCOL (see below).
NL%NSLCON This specifies the soil textural class when NL%ISOILFLG=2. Standard soil types are:
  • 1 - Sand
  • 2 - Loamy sand
  • 3 - Sandy loam
  • 4 - Silt loam
  • 5 - Loam
  • 6 - Sandy clay loam
  • 7 - Silty clay loam
  • 8 - Clay loam
  • 9 - Sandy clay
  • 10 - Silty clay
  • 11 - Clay
  • 12 - Peat
  • 13 - Bedrock
  • 14 - Silt
  • 15 - Heavy clay
  • 16 - Clayey sand
  • 17 - Clayey silt
NL%ISOILCOL LEAF-3 and ED-2 soil color classes that the model will use when ISOILFLG is set to 2. Allowed values are 1 to 21. 1 to 20 are soil color class values with 1 being lightest and 20 darkest. Soil type 21 is a special case that uses the albedo method that used to be the default in ED-2.1.
NL%SLXCLAY If all ISOILFLG are set to 2, then SLXCLAY may be used to compute the soil properties instead of using one the pre-defined classes. If the number given is between 0 and 1, then SLXCLAY is the fraction of clay in the soil. Values outside the range 0-1 means that the user do not want to specify the fraction and use the pre-defined class set by NL%NSLCON.
NL%SLXSAND Similar to NL%SLXCLAY, but when defined between 0 and 1 it means the fraction of sand in the soil.
NL%SLSOC Prescribed mass fraction of soil organic carbon (kg kg-1). Used only when NL%SOIL_HYDRO_SCHEME=2. Currently this variable, along with NL%SLPH, NL%SLCEC, and NL%SLDBD must be initialised through the namelist (and not through XML as they are site characteristics). The code will be eventually updated to read these characteristics from HDF5 files (similalrly to soil depth, colour, and texture).
NL%SLPH Prescribed soil potential of hydrogen (pH) (0-14). Used only when NL%SOIL_HYDRO_SCHEME=2.
NL%SLCEC Prescribed cation exchange capacity (mol kg). Used only when NL%SOIL_HYDRO_SCHEME=2.
NL%SLDBD Prescribed dry bulk density (kg m-3). Used only when NL%SOIL_HYDRO_SCHEME=2.
NL%SLZ List of length NL%NZG elements, corresponding to the bottom of each soil layer [metres]. The first element of the list corresponds to the deepest soil layer, and the final element of the list corresponds to the shallowest soil layer. Values must be negative. We recommend that the top soil layer
NL%SLMSTR A list of length NL%NZG elements, corresponding to each soil layer. The first element of the list corresponds to the deepest soil layer, and the final element of the list corresponds to the shallowest soil layer. This is used only if NL%ISOILSTATEINIT=0 (see below). In this case, NL%SLMSTR will initialize the soil moisture using a soil moisture index.
  • -1 — dry air (residual) soil moisture.
  • 0 — permanent wilting point.
  • 1 — field capacity.
  • 2 — porosity (saturation)
Values can be fraction, in which case they will be linearly interpolated between the special points (e.g. 0.5 will put soil moisture half way between the wilting point and field capacity).
NL%STGOFF A list of length NL%NZG. Each element of the list corresponds to a different soil layer. The first element of the list corresponds to the deepest soil layer, and the final element of the list corresponds to the shallowest soil layer. This is used only if NL%ISOILSTATEINIT=0 (see below). In this case, NL%STGOFF will initialize the soil temperature. The value of NL%STGOFF is the difference between the initial soil temperature and the initial atmospheric temperature.
NL%VEG_DATABASE Character string giving the directory and prefix of the global vegetation class dataset. This classifies each point in the dataset as either land or water. Many different land cover types are recognized. In ED-2, this dataset is useful because it provides a land-sea mask. The default file is the Olson Global Ecosystem dataset.
NL%SOIL_DATABASE Character string and prefix for the database files that contain soil textural class data. This is used only when NL%ISOILFLG is set to 1.
NL%SLCOL_DATABASE Character string and prefix for the database files that contain soil colour data. This is used only when NL%ISLCOLFLG is set to 1.
NL%LU_DATABASE Character string and prefix for the database files that contain land-use change rates data. This is used only when NL%IANTH_DISTURB is set to 1.
NL%PLANTATION_FILE Character string for the path to the forest plantation fraction file. This is used only when NL%IANTH_DISTURB is set to 1 and the user wants to simulate forest plantations. Otherwise, leave it empty (NL%PLANTATION_FILE=)
NL%THSUMS_DATABASE Character string for the path to the directory with the dataset to initialize chilling-degree and growing-degree days. This is used to drive cold-deciduous phenology. You must provide this path even when you are not simulating cold-deciduous PFTs.
NL%ED_MET_DRIVER_DB Full path and name of the meteorological header file. Additional information on meteorological drivers are available here.
NL%OBSTIME_DB
File containing times of desired IOOUTPUT. Reference file: /ED/run/obstime_template.time
NL%SOILSTATE_DB If NL%ISOILSTATEINIT is set to 1, this variable specifies the full path of the file that contains soil moisture and temperature information. For more information on the file itself, see documentation on the soil state file
NL%SOILDEPTH_DB If NL%ISOILDEPTHFLG is set to 1 or 2 (see below), this variable specifies the full path of the file that contains soil moisture and temperature information. For more information on the file itself, see documentation on the soil state file.
NL%ISOILSTATEINIT A flag specifying where to obtain soil temperature and soil moisture.
  • 0 — Use the namelist values NL%SLMSTR and NL%STGOFF
  • 1 — (Legacy) Read from a file specified by NL%SOILSTATE_DB (ED-1.0 style, ASCII file).
NL%ISOILDEPTHFLG A flag specifying where to obtain soil depth information.
  • 0 - No soil depth information is read, and the model defines the soil grid exactly according to NL%NZG and NL%SLZ.
  • 1 - The model will read a soil depth file. All of a grid cell's soil layers lying below NL%SLZ are treated as bedrock.
  • 2 - Read from SOILDEPTH_DB (ED-2.2 style, hdf5 files + header).
NL%SOIL_HYDRO_SCHEME This flag controls the pedotransfer functions in ED-2.2.
  • 0 - (ED-2.2 default) Matric potential and hydraulic conductivity are determined using the Campbell(-Mualem) approach. Pedotransfer function parameters are determined using the Cosby et al. (1984) equations, which depend only on sand, silt, and clay fractions and are fitted for US soils.
  • 1 - (Beta) Matric potential and hydraulic conductivity are determined using the Campbell(-Mualem) approach, although not assuming that residual moisture is zero. Pedotransfer function parameters are determined using the Tomasella and Hodnett (1998) equations, which depend only on sand, silt, and clay fractions and are fitted for tropical soils.
  • 2 - (Beta) Matric potential and hydraulic conductivity are determined using the van Genuchten(-Mualem) approach. Pedotransfer function parameters are determined using the Hodnett and Tomasella (2002) equations, which depend on sand, silt, and clay fractions, soil organic carbon content, pH, cation exchange capacity, and dry bulk density.
Additional details on all the approaches can be found in Marthews et al. (2014).
NL%ISOILBC Soil boundary condition at lowest soil level. Possible values:
  • 0 - Flat bedrock. Flux from the bottom of the bottommost layer is zero.
  • 1 - Gravitational flow (free drainage). The flux from the bottom of the bottommost layer is due to the gradient of the height only.
  • 2 - Lateral drainage. Similar to free drainage, but the gradient is reduced by the slope not being completely vertical. The reduction is controlled by SLDRAIN.
  • 3 - Aquifer. Soil moisture of the ficticious layer beneath the bottom is always at saturation.
NL%SLDRAIN Slope that slows down drainage from the bottommost soil layer. Possible values range from 0 (flat bedrock) to 90 (free drainage). Only used if ISOILBC = 2.
NL%IVEGT_DYNAMICS Vegetation dynamics scheme. Possible values:
  • 0 - No vegetation dynamics, the initial state will be preserved for all vegetation properties (except leaf phenology) and soil carbon, even though the model will compute the potential values. This option is useful for theoretical simulations only.
  • 1 - Normal ED vegetation dynamics (Moorcroft et al. 2001). The normal option for almost any simulation.
NL%IBIGLEAF Whether to run the model as a "big leaf" model.
  • 0 - No, use the standard size- and age-structure (Moorcroft et al. 2001). This is the recommended method for most applications.
  • 1 - Big-leaf ED Levine et al. 2016: this will have no horizontal or vertical heterogeneities; 1 patch per PFT and 1 cohort per patch; no vertical growth, recruits will 'appear' instantaneously at maximum height. In case you set NL%IBIGLEAF=1, you MUST turn off the crown model (NL%CROWN_MOD = 0).
NL%INTEGRATION_SCHEME This determines how the fast time step is integrated.
  • 0 - (Deprecated) Euler step. The fastest, but it has only a very crude estimate of time-step errors.
  • 1 - (ED-2.2 default) Fourth-order Runge-Kutta method.
  • 2 - (Deprecated) Second-order Runge-Kutta method (Heun's). This is not faster than option 1, and it will be eventually removed.
  • 3 - (Under development) Hybrid Stepping (Backward Euler BDF2 implicit step for the canopy air and leaf temp, forward Euler for else). This has not been thoroughly tested for energy, water, and CO2 conservation.
NL%NSUB_EULER The number of sub-steps in case we are running forward Euler. The maximum time step will then be DTLSM / NSUB_EULER. This is needed to make sure we don't take too long steps with Euler, as we cannot estimate errors using first-order schemes. This number is ignored except when NL%INTEGRATION_SCHEME is 0.
NL%RK4_TOLERANCE This is the relative tolerance for the Runge-Kutta integration (NL%INTEGRATION_SCHEME set to 1 or 2). Currently the valid range is between 10-7 and 10-1, but recommended values are between 10-4 and 10-2. (ED-2.2 default is 0.01).
NL%IBRANCH_THERMO Flag specifying whether branches should be included in the vegetation thermodynamics or not. Options:
  • 0 - (Legacy) No branches in energy/radiation.
  • 1 - (ED-2.2 default) Branches are accounted for in energy and radiation. Branchwood and leaves are treaded separately in the canopy radiation scheme, but solved as a single pool in the biophysics integration.
  • 2 - (Beta) Similar to 1, but branches are treated as separate pools in the biophysics (thus doubling the number of prognostic variables).
NL%IPHYSIOL Determines the functional form that controls how parameters vary with temperature, and how the CO2 compensation point for gross photosynthesis (Gamma*) is found. Options:
  • 0 - (Legacy) Original ED-2.1, we use the "Arrhenius" function as in Foley et al. (1996) and Moorcroft et al. (2001). Gamma* is found using the parameters for tau as in Foley et al. (1996). This option causes optimal temperature to be quite low, even in the tropics (Rogers et al. 2017).
  • 1 - (Beta) Similar to case 0, but we use Jmax to determine the RubP-regeneration (aka light) limitation case, account for the triose phosphate utilisation limitation case (C3), and use the Michaelis-Mentel coefficients along with other parameters from von Caemmerer (2000).
  • 2 - (ED-2.2 default) Collatz et al. (1991). We use the power (Q10) equations, with Collatz et al. parameters for compensation point, and the Michaelis-Mentel coefficients. The correction for high and low temperatures are the same as in Moorcroft et al. (2001).
  • 3 - (Beta) Similar to case 2, but we use Jmax to determine the RubP-regeneration (aka light) limitation case, account for the triose phosphate utilisation limitation case (C3), and use the Michaelis-Mentel coefficients along with other parameters from von Caemmerer (2000).
NL%IALLOM Which allometry to use. This mostly affects tropical PFTs. Options:
  • 0 - (Legacy) Original ED-1.0, included for back compatibility.
  • 1 - (Legacy) Coefficients for structural biomass are set so the total AGB is similar to Baker et al (2004), eqn 2. Canopy trees have a root depth of 5 m and grasses and seedlings have a root depth of 0.5 m. Crown area is defined as in Poorter et al (2006), imposing a maximum crown area.
  • 2 - (ED-2.2 default) Similar to 1, with the following changes: Height - DBH allometry is as in Poorter et al (2006). BALIVE is retuned, using a few leaf biomass allometric equations for a few genera in Costa Rica (Cole and Ewel 2006; Calvo Alvarado et al. 2008))
  • 3 - (Beta) Updated allometric for tropical PFTs based on data from Sustainable Landscapes Brazil (Height and crown area), Chave et al. (2014) (biomass) and the BAAD data base, Falster et al. (2015) (leaf area/leaf biomass). Both leaf and structural biomass take DBH and Height as dependent variables, and DBH-Height takes a simpler log-linear form fitted using SMA so it can be inverted (useful for airborne lidar initialisation). Described in Longo et al. (2020).
  • 4 - (Beta) Similar to 3 but (a) leaf and height allometric equations depend on wood density; (b) use leaf area based allometry instead of leaf biomass based allometry, which is more compatible with trait plasticity in SLA; (c) use height-based root allometry from Smith-Martin et al. (2020).
NL%ECONOMICS_SCHEME Temporary variable for testing the relationship amongst traits in the tropics. This will be eventually remove in future releases.
NL%IGRASS Controls the dynamics and growth calculation for grasses.
  • 0 - (Legacy) Original ED-1/ED-2.0 method, grasses are miniature trees, bdead is positive, and growth happens monthly.
  • 1 - (ED-2.2 default) Heartwood biomass is always 0, height is a function of BLEAF, and growth happens daily. With this option, grasses are evergreen regardless of IPHEN_SCHEME.
NL%IPHEN_SCHEME Flag that specifies the phenology scheme. In the old scheme, plants shed their leaves once the instantaneous amount of available water becomes less than a critical value; in the new scheme, a 10-day running average of available water is used. Options:
  • -1 - (ED-2.2 default for evergreen tropical) grasses are evergreen; tropicals are evergreen; conifers are evergreen; hardwoods are cold deciduous (Botta et al).
  • 0 - (Deprecated) grasses are drought deciduous (old scheme); tropicals are drought deciduous (old scheme); conifers are evergreen; and hardwoods are cold deciduous.
  • 1 - (ED-2.2 default for prescribed phenology; deprecated for tropical trees) phenology is prescribed according to Harvard Forest conditions.
  • 2 - (ED-2.2 default for drought-deciduous tropical) grasses are drought-deciduous (new scheme); tropicals are drought-deciduous (new scheme); conifers are evergreen; and hardwoods are cold deciduous.
  • 3 - (Beta) grasses are drought-deciduous (new scheme); tropicals are drought-deciduous with light-based phenology; conifers are evergreen; hardwoods are cold deciduous.
  • 4 - (Beta) grasses are drought-deciduous (hydraulics-based); tropicals are drought-deciduous (hydraulics-based); conifers are evergreen; hardwoods are cold deciduous.
Differences between old and new schemes:
  • Old scheme: plants shed their leaves once instantaneous amount of available water becomes less than a critical value.
  • New scheme: plants shed their leaves once a 10-day running average of available water becomes less than a critical value.
  • Hydraulics-based: plants shed their leaves once their pre-dawn leaf water potential is lower than the turgor loss point for 10 consecutive days.
NL%RADINT Intercept of the phenology response to radiation. Only used if IPHEN_SCHEME = 3.
NL%RADSLP Slope of the phenology response to radiation. Only used if IPHEN_SCHEME = 3.
NL%REPRO_SCHEME Controls plant reproduction and dispersal. Possible values:
  • 0 - Reproduction is off. Useful only for theoretical tests.
  • 1 - (Legacy) Original reproduction scheme. Seeds are exchanged between patches belonging to the same site but cannot leave their site of origin.
  • 2 - (ED-2.2 default) Seeds are exchanged between patches in the same polygon, even if they are in different sites. Seeds cannot leave their polygon of origin.
  • 3 - (Beta) Similar to 2, but allocation to reproduction may be set as a function of height using an asymptotic curve.
NL%LAPSE_SCHEME This specifies the atmospheric lapse rate scheme:
  • 0 - (ED-2.2 default) Lapse rates off
  • 1 - (Beta) Phenomenological, global
  • 2 - (Non-functional) Phenomenological, local
  • 3 - (Non-functional) Mechanistic
NL%CROWN_MOD Specifies how tree crowns are represent in the canopy radiation model
  • 0 - (ED-2.2 default) Flat-top, infinitesimally thin crowns
  • 1 - (Under development) Finite radius mixing model (Dietze). This is only implemented for direct radiation with NL%ICANRAD=0.
NL%ICANRAD Specifies how canopy radiation is solved, for both shortwave and longwave. Options:
  • 0 - (Deprecated) original two-stream model from Medvigy (2006), with the possibility to apply finite crown area to direct shortwave radiation. This option is no longer supported and may be removed in future releases.
  • 1 - (Deprecated) Multiple scattering model from Zhao and Qualls (2005) and Zhao and Qualls (2006). This option is no longer supported and may be removed in future releases.
  • 2 - (ED-2.2 default) Updated two-stream model from Liou (2002).
NL%IHRZRAD Specifies how horizontal canopy radiation is solved.
  • 0 - (ED-2.2 default) No horizontal patch shading. All patches receive the same amount of light at the top.
  • 1 - (Beta) A realized map of the plant community is built by randomly assigning gaps associated with gaps (number of gaps proportional to the patch area), and populating them with individuals, respecting the cohort distribution in each patch. The crown closure index is calculated for the entire landscape and used to change the amount of direct light reaching the top of the canopy. Patches are then split into 1-3 patches based on the light condition, so expect simulations to be slower. (Morton et al., in review)
  • 2 - (Beta) Similar to option 1, except that height for trees with DBH > DBH_crit are rescaled to calculate CCI. (Morton et al., in review)
  • 3 - (Beta) This creates patches following NL%IHRZRAD = 1, but then assumes that the light scaling factor is 1 for all patches. This is only useful to isolate the effect of heterogeneous illumination from the patch count.
  • 4 - (Beta) Similar to option 3, but it applies the same method as NL%IHRZRAD=2.
NL%LTRANS_VIS Leaf transmittance for tropical plants in the visible (PAR) band (ED-2.2 default is 0.05). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%LTRANS_NIR Leaf transmittance for tropical plants in the near infrared (NIR) band (ED-2.2 default is 0.20). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%LREFLECT_VIS Leaf reflectance for tropical plants in the visible (PAR) band (ED-2.2 default is 0.10). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%LREFLECT_NIR Leaf reflectance for tropical plants in the near infrared (NIR) band (ED-2.2 default is 0.40). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%ORIENT_TREE Leaf orientation factor for tropical trees. Values can range from -1 (all leaves are oriented in the vertical) to 1 (all leaves are oriented in the horizontal), and 0 means that leaf orientation is perfectly random. In practice, values outside the (-0.4;0.6) range are not recommended (Goudriaan 1977).
The ED-2.2 default is 0.10. This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%ORIENT_GRASS Leaf orientation factor for tropical grasses. Values can range from -1 (all leaves are oriented in the vertical) to 1 (all leaves are oriented in the horizontal), and 0 means that leaf orientation is perfectly random. In practice, values outside the (-0.4;0.6) range are not recommended (Goudriaan 1977).
The ED-2.2 default is 0.00. This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%CLUMP_TREE Clumping factor for tropical trees. Values range from approaching 0 (black hole) to 1 (homogeneously spread - no clumping). 0 itself is not acceptable.
The ED-2.2 default is 0.80. This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%CLUMP_GRASS Clumping factor for tropical grasses. Values range from approaching 0 (black hole) to 1 (homogeneously spread - no clumping). 0 itself is not acceptable.
The ED-2.2 default is 1.00. This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%IGOUTPUT Ignored unless NL%IHRZRAD ≠ 0. Write the patch table and gap realisation files? (0 -- no; 1 -- yes). Note these files are still in text files so they may take considerable disk space.
NL%GFILOUT Ignored unless NL%IHRZRAD ≠ 0. Prefix for the output patch table/gap files.
NL%DECOMP_SCHEME Specifies the dependence of soil decomposition on temperature. Options:
  • 0 - (Deprecated) ED-2.0 default. Exponential with low temperature limitation only. This option is known to cause excessive accumulation of soil carbon in the tropics.
  • 1 - (Beta)Lloyd and Taylor (1994) model. Aditional parameters must be set in an XML file.
  • 2 - (ED-2.2 default) Similar to ED-1.0 and CENTURY model, heterotrophic respiration reaches a maximum at around 38°C (using the default parameters), then quickly falls to zero at around 50°C. It applies a similar function for soil moisture, which allows higher decomposition rates when it is close to the optimal, plumetting when it is almost saturated.
  • 3 – (Beta) Similar to option 0, but it uses empirical moisture limit equation from Moyano et al. (2012).
  • 4 – (Beta) Similar to option 1, but it uses empirical moisture limit equation from Moyano et al. (2012).
  • 5 – (Beta) Based on Bolker et al. (1998) CENTURY model. Five necromass pools (litter aka fast, structural, microbial, humified aka slow, and passive). Temperature and moisture functions are the same as 2.
NL%H2O_PLANT_LIM This determines whether plant photosynthesis can be limited by soil moisture, the FSW, defined as FSW = Supply / (Demand + Supply). Demand is always the transpiration rates in case soil moisture is not limiting (the psi_0 term times LAI). The supply is determined by Kw * nplant * Broot * Available_Water, and the definition of available water changes depending on H2O_PLANT_LIM:
  • 0 - Force FSW = 1 (effectively available water is infinity). Useful for theoretical simulations only.
  • 1 - (Legacy) Available water is the total soil water above wilting point, integrated across all layers within the rooting zone. This is the ED-1 and ED-2.0 default
  • 2 - (ED-2.2 default) Available water is the soil water at field capacity minus wilting point, scaled by the so-called wilting factor: (psi(k) - (H - z(k)) - psi_wp) / (psi_fc - psi_wp), where psi is the matric potential at layer k, z is the layer depth, H it the crown height and psi_fc and psi_wp are the matric potentials at wilting point and field capacity
  • 3 - (Beta) Use leaf water potential to modify fsw following Powell et al. (2017). This setting requires PLANT_HYDRO_SCHEME to be non-zero.
  • 4 - (Beta) Use leaf water potential to modify the optimization-based stomatal model following Xu et al. (2016). This setting requires PLANT_HYDRO_SCHEME to be non-zero values and set ISTOMATA_SCHEME to 1.
  • 5 - (Beta) Similar to 2, but the water supply directly affects gsw, as opposed to fsw. This is done by making D0 a function of soil moisture. Note that this still uses Kw but Kw must be significantly lower, at least for tropical trees (1/15 - 1/10 of the original).
NL%PLANT_HYDRO_SCHEME Flag to set dynamic plant hydraulics.
NL%ISTRUCT_GROWTH_SCHEME Different methods to perform structural growth.
  • 0 - (ED-2.2 default) Use all bstorage allocation to growth to increase heartwood. This option will be eventually deprecated, as it creates problems for drought-deciduous plants and for allometric settings that properly calculate sapwood (IALLOM = 3).
  • 1 - (ED-2.2 alternative) Correct the fraction of storage allocated to heartwood, so storage has sufficient carbon to increment all living tissues in the upcoming month. This option will eventually become the default.
NL%ISTEM_RESPIRATION_SCHEME Different methods to calculate respiration from stem metabolism.
  • 0 - (ED-2.2 default) No explicit stem respiration.
  • 1 - (Beta) Calculate stem respiration with stem surface area and per area respiration rate, which is a function of temperature and tree size based on measurements on tropical trees by Chambers et al. (2004). Note that the calculation of surface area uses wood area index. Thus, if NL%IBRANCH_THERMO is set to 0, all branch surface areas will be ignored.
NL%ISTOMATA_SCHEME Which stomatal conductance model to use.
NL%TRAIT_PLASTICITY_SCHEME How plant traits vary with changes in local environment:
  • 0 - (ED-2.2 default) No trait plasticity. Trait parameters for each PFT are fixed.
  • 1 - (Beta) Vm0, SLA and leaf turnover rate change annually with cohort light environment. The parametrisation is based on Lloyd et al. (2010), with additional data from Keenan and Niinemets (2016) and Russo and Kitajima (2016). For each cohort, Vm0 and leaf turnover rates decrease, and SLA increases with shading. The magnitude of changes is calculated using overtopping LAI and corresponding extinction factors for each trait. This is not applicable to grass PFTs. (Xu et al. in prep.)
  • 2 - (Beta)Similar to 1, but traits are updated monthly.
  • -1 - (Beta) Similar to 1, but use height to adjust SLA.
  • -2 - (Beta) Similar to 2, but use height to adjust SLA.
  • 3 - (Beta) Similar to 1, but traits are updated monthly and the magnitude of change each month is constrained current leaf turnover rate based on the assumption that leaf trait changes can only be acheived by replacing old leaves.
NL%IDDMORT_SCHEME This flag determines whether storage should be accounted in the carbon balance. Options:
  • 0 - (Legacy) Carbon balance is done in terms of fluxes only. This is the default in ED-1.0 and ED-2.0. Plants will be in negative carbon balance whenever the combined metabolic respiration and maintenance costs exceed GPP, even if the plant has storage.
  • 1 - (ED-2.2 default) Carbon balance accounts for the storage pool. Plants will be in negative carbon balance only when they run out of storage and are still losing more carbon than gaining.
NL%CBR_SCHEME This flag determines which carbon stress scheme is used. Options:
  • 0 - (ED-2.2 default) Single stress. CBR = CB/CB_MLMAX. Variable CB_MLMAX is the carbon balance in full sun and no moisture limitation.
  • 1 - (Legacy) Co-limitation from light and moisture Longo et al. (2018). CBR_LIGHT = CB/CB_LIGHTMAX, and CBR_MOIST = CB/CB_MOISTMAX. Variables CBR_LIGHT and CBR_MOIST are then weighted according to NL%DDMORT_CONST (see below).
  • 2 - (Beta) Leibig's law-of-minimum Style, i.e. limitation from either light or moisture depending on which is the most limiting at a given point in time CBR = CB/max(CB_LIGHTMAX, CB_MOISTMAX).
NL%DDMORT_CONST This constant determines the relative contribution of light and soil moisture to the density-dependent mortality rate. Values range from 0 (soil moisture only) to 1 (light only, ED-1 and ED-2.0 default).





where is the density-dependent mortality, is a parameter for the most negative carbon balance considered, and are PFT-dependent parameters that control mortality rates.
NL%CARBON_MORTALITY_SCHEME Different methods to calculate negative carbon balance mortality.
  • 0 - (ED-2.2 default) ED-1 original formulation (Moorcroft et al. 2001).
  • 1 - (Deprecated) Trait-dependent exponential model by Camac et al. (2018), but using carbon balance instead of growth.
  • 2 - (ED-2.2 Alternative) Trait-dependent exponential model by Camac et al. (2018) and using actual growth rates.
NL%HYDRAULIC_MORTALITY_SCHEME Different methods to calculate hydraulic failure mortality.
  • 0 - (ED-2.2 default) No hydraulic failure mortality.
  • 1 - (Beta) Hydraulic failure mortality based on monthly mean xylem percentage loss of conductance (PLC).
NL%VMFACT_C3 Factor multiplying the default Vm0 for C3 plants (ED-2.2 default is 1.0). This variable will be eventually removed from ED2IN, use XML initialisation file to set Vm0 instead.
NL%VMFACT_C4 Factor multiplying the default Vm0 for C4 plants (ED-2.2 default is 1.0). This variable will be eventually removed from ED2IN, use XML initialisation file to set Vm0 instead.
NL%MPHOTO_TRC3 Stomatal slope (M) for tropical C3 plants (ED-2.2 default is 9.0). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%MPHOTO_TEC3 Stomatal slope (M) for conifers and temperate C3 plants (ED-2.2 default is 7.2). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%MPHOTO_C4 Stomatal slope (M) for C4 plants (ED-2.2 default is 5.2). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%BPHOTO_BLC3 Cuticular conductance (μmol m-2s-1) for broadleaf C3 plants (ED-2.2 default is 10000.). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%BPHOTO_NLC3 Cuticular conductance (μmol m-2s-1) for needleleaf C3 plants (ED-2.2 default is 1000.). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%BPHOTO_C4 Cuticular conductance (μmol m-2s-1) for C4 plants (ED-2.2 default is 10000.). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%KW_GRASS Water conductance (m2 yr-1kgCFine Root) for grasses (ED-2.2 default is 900 along with NL%H2O_PLANT_LIMIT=2). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%KW_TREE Water conductance (m2 yr-1kgCFine Root) for trees (ED-2.2 default is 600 along with NL%H2O_PLANT_LIMIT=2). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%GAMMA_C3 The respiration:carboxylation ratio (Rd0/Vm0) for C3 plants. In case this is set to 0 (Beta), find the ratio following Atkin et al. (2015, New Phytol.). The ED-2.2 default is 0.015. This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter or Rd0 instead.
NL%GAMMA_C4 The respiration:carboxylation factor (Rd0/Vm0) for C4 plants. In case this is set to 0 (Beta), find the ratio following Atkin et al. (2015, New Phytol.). The ED-2.2 default is 0.035. This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter or Rd0 instead.
NL%D0_GRASS The leaf vapour pressure deficit control (mol mol-1) in stomatal conductance for grasses (C3/C4), following Leuning (1995, Plant Cell Environ.) (ED-2.2 default is 0.016.). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%D0_TREE The leaf vapour pressure deficit control (mol mol-1) in stomatal conductance for trees, following Leuning (1995, Plant Cell Environ.) (ED-2.2 default is 0.016.). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%ALPHA_C3 Quantum yield of all C3 plants. This variable is used only when NL%QUANTUM_EFFICIENCY_T = 0 and NL%IPHYSIOL is 0 or 2 (ED-2.2 default is 0.080.). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%ALPHA_C4 Quantum yield of all C3 plants. This variable is used only when NL%IPHYSIOL is 0 or 2 (ED-2.2 default is 0.080.). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%KLOWCO2IN The initial slope (molAir molCO2-1) for the PEP carboxylase for C4 plants (ED-2.2 default is 17949). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%RRFFACT Factor multiplying the fine root respiration function ALL PFTs (ED-2.2 default is 1.0). This variable will be eventually removed from ED2IN, use XML initialisation file to set the fine root respiration parameters instead.
NL%GROWTHRESP The actual growth respiration factor for tropical PFTs (ED-2.2 default is 0.333). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%LWIDTH_GRASS Leaf width (m) for grasses, which is used to control the leaf boundary layer conductance (ED-2.2 default is 0.05). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%LWIDTH_BLTREE Leaf width (m) for broadleaf trees, which is used to control the leaf boundary layer conductance (ED-2.2 default is 0.10). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%LWIDTH_NLTREE Leaf width (m) for needleleaf trees, which is used to control the leaf boundary layer conductance (ED-2.2 default is 0.05). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%Q10_C3 Q10 factor for carboxylation and leaf and fine root respiration for C3 plants. This is used only if NL%IPHYSIOL is set to 2 or 3 (ED-2.2 default is 2.4). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%Q10_C4 Q10 factor for carboxylation and leaf and fine root respiration for C4 plants. This is used only if NL%IPHYSIOL is set to 2 or 3 (ED-2.2 default is 2.4). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%THETACRIT Leaf drought phenology threshold. The sign matters. If the value is:
  • θCrit ≥ 0 - This is the relative soil moisture above the wilting point below which the drought-deciduous plants will start shedding their leaves.
  • θCrit < 0 - This is the soil potential in MPa below which the drought-deciduous plants will start shedding their leaves. The wilting point is by definition -1.5MPa, so make sure that the value is above -1.5.
NL%QUANTUM_EFFICIENCY_T Which quantum yield the model should use for C3 plants. This is used only when NL%IPHYSIOL is set to 0 or 2. Options:
  • 0 - (ED-2.2 default) Quantum efficiency is constant.
  • 1 - (Beta) Quantum efficiency varies with temperature following Ehleringer (1978) polynomial fit.
NL%N_PLANT_LIM Flag to activate nitrogen limitation on photosynthesis.
  • 0 - No nitrogen limitation.
  • 1 - Activate nitrogen limitation. As of ED-2.2, this option has not been thoroughly tested in the tropics.
NL%N_DECOMP_LIM Flag to activate nitrogen limitation on decomposition.
  • 0 - No nitrogen limitation.
  • 1 - Activate nitrogen limitation. As of ED-2.2, this option has not been thoroughly tested in the tropics.
NL%INCLUDE_FIRE Determines how to apply fire in the model. Options:
  • 0 - No fires
  • 1 - (Deprecated, included as ED-1.0 legacy). Fire will be triggered with enough fuel (assumed to be total above-ground biomass) and integrated ground water depth less than a threshold. The threshold assumes that the soil to be 1 m, so deeper soils will need to be much drier to allow fires to happen and often will never allow fires.
  • 2 - (ED-2.2 default when fires are sought) Fire will be triggered with enough biomass and the total soil water at the top 50 cm falls below a threshold.
  • 3 - (Under development) This will eventually become SPITFIRE and/or HESFIRE. Currently this is similar to 2, except that fuel is defined as above-ground litter and coarse woody debris, grasses, and trees shorter than 2 m. Ignitions are currently restricted to areas with human presence (i.e. any non-natural patch).
NL%FIRE_PARAMETER If fire happens, this will control the intensity of the disturbance given the amount of fuel.
NL%SM_FIRE This is used only when NL%INCLUDE_FIRE = 2 or 3, and it has different meanings. The sign here matters.
  • When NL%INCLUDE_FIRE = 2 or 3 :
    • NL%SM_FIRE ≥ 0 - Minimum relative soil moisture above dry air of the top 1m that will prevent fires from happening.
    • NL%SM_FIRE < 0 - Minimum mean soil moisture potential in MPa of the top 1m that will prevent fires from happening. Although this variable can be as negative as -3.1 MPa (residual soil water), it is recommended that NL%SM_FIRE > -1.5 MPa (wilting point), otherwise fires may never occur.
NL%IANTH_DISTURB This flag controls whether to include anthropogenic disturbances such as land clearing, abandonment, and logging.
  • 0 - No anthropogenic disturbance.
  • 1 - Use anthropogenic disturbance dataset (ED-2.2 default when anthropogenic disturbance is sought).
  • 2 - Site-specific forest plantation or selective logging cycle (Beta, Longo et al. in prep.)
NL%SL_SCALE This flag assumes whether the simulation scale is local or landscape. This controls the recurrence of logging.
  • 0 - Local. The simulation represents one logging unit. Apply logging only once every NL%SL_NYRS.
  • 1 - Landscape. The simulation represents a landscape. Logging occurs every year but it is restricted to patches with age greater than or equal to SL_NYRS.
This option is used only when NL%IANTH_DISTURB=2.
NL%SL_YR_FIRST The first year to apply logging. In case NL%IANTH_DISTURB=2 it must be a simulation year (i.e. between IYEARA and IYEARZ). Otherwise, this is ignored.
NL%SL_NYRS This variable defines the logging cycle, in years (see variable NL%SL_SCALE above). Ignored unless NL%IANTH_DISTURB=2.
NL%SL_PFT List of PFTs that can be harvested. Ignored unless NL%IANTH_DISTURB=2.
NL%SL_PROB_HARVEST Logging intensity (one value for each PFT provided in SL_PFT). Values should be between 0.0 and 1.0, with 0 meaning no removal, and 1 removal of all trees needed to meet demands. Ignored unless NL%IANTH_DISTURB=2.
NL%SL_MINDBH_HARVEST Minimum DBH for logging (one value for each PFT provided in NL%SL_PFT). Ignored unless NL%IANTH_DISTURB=2.
NL%SL_BIOMASS_HARVEST Target biomass (kgC m-2) to be harvested in each cycle. Ignored unless NL%IANTH_DISTURB=2.
Important:NL%SL_BIOMASS_HARVEST=0 is a special flag, then all trees that meet the minimum DBH and minimum patch age will be logged.
NL%SL_SKID_REL_AREA Area damaged by skid trails (relative to felled area). Used only when NL%IANTH_DISTURB≠0.
NL%SL_SKID_S_GTHARV Survivorship of trees with DBH > MINDBH in skid trails. Used only when NL%IANTH_DISTURB≠0.
NL%SL_SKID_S_LTHARV Survivorship of trees with DBH < MINDBH in skid trails. Used only when NL%IANTH_DISTURB≠0.
NL%SL_FELLING_S_LTHARV Survivorship of trees with DBH < MINDBH in felling gaps. Used only when NL%IANTH_DISTURB≠0.
NL%CL_FSEEDS_HARVEST Fraction of seeds that is harvested in cropland patches. Used only when NL%IANTH_DISTURB≠0.
NL%CL_FSTORAGE_HARVEST Fraction of non-structural carbon that is harvested in cropland patches. Used only when NL%IANTH_DISTURB≠0.
NL%CL_FLEAF_HARVEST Fraction of leaves that is harvested in cropland patches. Used only when NL%IANTH_DISTURB≠0.
NL%ICANTURB Canopy turbulence scheme
  • 0 - (Legacy) Based on Leuning et al. (1995) and LEAF-3 (Walko et al. 2000). Roughness and displacement height are found using simple relationships with vegetation height; wind is computed using the similarity theory for the top cohort, then it is assumed that wind extinguishes following an exponential decay with "perceived" cumulative LAI (local LAI with finite crown area).
  • 1 - (Legacy) Similar to option 0, but the wind profile is not based on LAI; instead it uses the cohort height.
  • 2 - (ED-2.2 default) This uses the method of Massman (1997), assuming constant drag and no sheltering factor.
  • 3 - (ED-2.2 alternative) This is based on Massman and Weil (1999), similar to 2, but with varying drag and sheltering factors within the canopy.
  • 4 - (Beta) Same as 0, but it finds the ground conductance following CLM technical note equations 5.98-5.100 (Oleson et al. 2013).
NL%ISFCLYRM This variable sets the surface layer model, which will be used to compute the characteristic scales (u*, θ*, q*, etc.).
  • 1 - (Legacy) BRAMS default, based on Louis (1979); it uses empirical relations to estimate the flux based on the bulk Richardson number.
  • 2 - (Legacy) Oncley and Dudhia (1995) model, based on MM5; it uses a empirical relation between bulk Richardson number and z/L, then computes the flux functions.
  • 3 - (ED-2.2 default) Beljaars and Holtslag (1991) model; similar to 2, but it finds z/L using a root-finding method, and it has a different set of equations for stable layers that works better during night time.
  • 4 - (Beta) CLM-based (Oleson et al. 2013). Similar to options 2 and 3, but it uses special functions to deal with very unstable and very stable cases. It also accounts for different roughness lengths between momentum and heat.
NL%IED_GRNDVAP Method for finding ground to canopy air space conductance. Options are: In all cases the beta term is modified so it approaches zero as soil moisture goes to dry air soil.
NL%GAMM Gamma coefficient for momentum, unstable case (dimensionless). A control for the similarity theory model. For more, check Beljaars and Holtslag (1991) (ED-2.2 default is 13.0). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%GAMH Gamma coefficient for heat, unstable case (dimensionless). A control for the similarity theory model. For more, check Beljaars and Holtslag (1991) (ED-2.2 default is 13.0). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%TPRANDTL Turbulent Prandtl number. A control for the similarity theory model. For more, check Beljaars and Holtslag (1991, J. Appl. Meteorol.) (ED-2.2 default is 0.74). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%RIBMAX Maximum bulk Richardson number. A control for the similarity theory model. For more, check Beljaars and Holtslag (1991, J. Appl. Meteorol.) (ED-2.2 default is 0.50). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%LEAF_MAXWHC Maximum amount of water (interception + dew/frost) that can stand on top of leaves (kg mLeaf-2) (ED-2.2 default is 0.11). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%IPERCOL Control for percolation and infiltration. Options:
  • 0 - (ED-2.2 default). Based on LEAF-3 (Walko et al. 2000). This assumes soil conductivity is constant. For the temporary surface water, it sheds liquid in excess of a 1:9 liquid-to-ice ratio through percolation. Temporary surface water exists only if the top soil layer is at saturation.
  • 1 - (Beta) This assumes soil conductivity is constant. It uses the percolation model as in Anderson (1976). Temporary surface water may exist after a heavy rain event, even if the soil doesn't saturate.
  • 2 - (Beta) Similar to 1, but soil conductivity decreases with depth even for constant soil moisture.
NL%INCLUDE_THESE_PFT List of plant functional types (PFTs) to be included. Current default PFTs are:
  • 1 - C4 Grass
  • 2 - Tropical broadleaf, early successional
  • 3 - Tropical broadleaf, mid-successional
  • 4 - Tropical broadleaf, late successional
  • 5 - Temperate C3 grass
  • 6 - Northern North American pines
  • 7 - Southern North American pines
  • 8 - Late-successional North American conifers
  • 9 - Temperate broadleaf, early successional
  • 10 - Temperate broadleaf, mid-successional
  • 11 - Temperate broadleaf, late successional
  • 12 - (Beta) Tropical broadleaf, early successional (thick bark)
  • 13 - (Beta) Tropical broadleaf, mid-successional (thick bark)
  • 14 - (Beta) Tropical broadleaf, late successional (thick bark)
  • 15 - Araucaria
  • 16 - Tropical/subtropical C3 grass
  • 17 - Lianas
NL%PASTURE_STOCK Which PFTs should be used for pasture. This is used only if NL%IANTH_DISTURB is set to 1 or 2. These PFTs should also be included in NL%INCLUDE_THESE_PFT.
NL%AGRI_STOCK Which PFTs should be used for cropland. This is used only if NL%IANTH_DISTURB is set to 1 or 2. These PFTs should also be included in NL%INCLUDE_THESE_PFT.
NL%PLANTATION_STOCK Which PFTs should be used for plantations. This is used only if NL%IANTH_DISTURB is set to 1 or 2. These PFTs should also be included in NL%INCLUDE_THESE_PFT.
NL%PFT_1ST_CHECK What should I do when I find a cohort with an unexpected PFT in the history start?
  • 0 - Stop the run
  • 1 - Add the PFT in the NL%INCLUDE_THESE_PFT list
  • 2 - Ignore the cohort.
This variable is ignored in near bare ground or history runs.
NL%IFUSION Flag to set patch/cohort fusion scheme
  • 0 - (ED-2.2 default) Original ED-2.0/ED-2.2 scheme.
  • 1 - (Beta) New scheme, developed to address a few issues with the default scheme that become more evident when initialising ED with large (>1000) number of patches. It uses absolute difference in light levels to avoid fusing patches with very different canopies, and also makes sure that remaining patches have area above NL%MIN_PATCH_AREA and that a high percentage of the original landscape is retained.
NL%MAXSITE This is the strict maximum number of sites that each polygon can contain. Currently this is used only when the user wants to run the same polygon with multiple soil types. If there aren't that many different soil types with a minimum area (check NL%MIN_SITE_AREA), then the model will allocate just the amount needed.
NL%MAXPATCH A variable controlling the sought number of patches per site. Possible values are:
  • 0 - Disable any patch fusion. This may lead to a large number of patches in century-long simulations.
  • 1 - The model will force fusion until the total number of patches is 1 for each land use type.
  • -1 - Similar to 1, but fusion will only happen during initialisation
  • ≥ 2 - The model will seek fusion of patches every year, aiming to keep the number of patches below NL%MAXPATCH.
  • *le; -2 - Similar to ≥ 2, but fusion will only happen during initialisation. The target number of patches will be the absolute number of NL%MAXPATCH.
Important: A given site may contain more patches than NL%MAXPATCH in case the patches are so different that they cannot be fused even when the fusion threshold is relaxed.
NL%MAXCOHORT A variable controlling the sought number of cohorts per patch. Possible values are:
  • 0 - Disable cohort fusion. This may lead to a large number of cohorts in century-long simulations.
  • ≥ 1 - The model will seek fusion of cohorts every month, aiming to keep the number of cohorts per patch below NL%MAXCOHORT.
  • *ge; -1 - Similar to ≥ 1, but fusion will only happen during initialisation. The target number of cohorts will be the absolute number of NL%MAXCOHORT.
Important: A given patch may contain more cohorts than NL%MAXCOHORT in case the cohorts are so different that they cannot be fused even when the fusion threshold is relaxed.
NL%MIN_SITE_AREA This is the minimum fraction area of a given soil type that allows a site to be created.
NL%MIN_PATCH_AREA This is the minimum fraction area of a given soil type that allows a patch to be created. Important: This is not enforced by the model, but we recommend that NL%MIN_PATCH_AREA ≤ 1/NL%MAXPATCH, otherwise the model may never reach NL%MAXPATCH.
NL%ZROUGH Roughness length (m) of non-vegetated soil (ED-2.2 default is 0.1). This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%TREEFALL_DISTURBANCE_RATE This sets the background (time-independent) disturbance rate due to tree fall.
  • 0. - No treefall disturbance
  • > 0. - The reference treefall disturbance rate (yr-1).
NL%TIME2CANOPY Minimum patch age for treefall disturbance to happen. The ED-2.2 default is 0. When NL%TIME2CANOPY > 0 and NL%TREEFALL_DISTURBANCE_RATE > 0, then NL%TREEFALL_DISTURBANCE_RATE is internally adjusted so the average patch age is still 1/NL%TREEFALL_DISTURBANCE_RATE.
NL%RUNOFF_TIME In case a temporary surface water (TSW) is created, this is the e-folding lifetime of the TSW in seconds due to runoff. The ED-2.2 default is 3600. In case you don't want runoff to happen, set this variable to 0 (discouraged for long runs).
NL%UBMIN Minimum wind speed (m s-1) at the top of the canopy air space. The ED-2.2 default is 1.0. This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%UGBMIN Minimum wind speed (m s-1) at the leaf level. The ED-2.2 default is 0.25. This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%USTMIN Minimum friction velocity (m s-1) also known as u*. The ED-2.2 default is 0.10. This variable will be eventually removed from ED2IN, use XML initialisation file to set this parameter instead.
NL%IPRINTPOLYS
  • 0 - Do not print information to screen. Recommended for nearly all cases.
  • 1 - Print polygon arrays to screen, use variables listed in NL%PRINTVARS. Useful for debugging only.
NL%NPVARS Number of variables to be printed.
NL%PRINTVARS List of variables to be printed on screen.
NL%PFMTSTR Format string for each variable listed in NL%PRINTVARS. The format strings follow standard Fortran format notation.
NL%IPMIN The first polygon index to print
NL%IPMAX The last polygon index to print
NL%IMETTYPE Flag specifying the format of your meteorological driver files.
  • 0 - (Non-functional) ASCII
  • 1 - (ED-2.2 default) HDF5
NL%ISHUFFLE Flag specifying what to do if the model is trying to simulate a time for which you do not have a meteorological driver file.
  • 0 - (ED-2.2 default) Sequentially cycle over the meteorological drivers.
  • 1 - (Under development) Randomly pick a year. The sequence of randomly picked years will be the same every time the simulation is re-run, provided that the initial year and met driver time span remain the same. This have been reports that this option is working like option 2 (completely random).
  • 2 - (Beta) Randomly pick the years, choosing a different sequence each time the model is run.
Important: Regardless of the NL%ISHUFFLE option, the model always use the correct year for the period in which meteorological drivers exist.
NL%METCYC1 First year for which meteorological driver files exist.
NL%METCYCF Last year for which meteorological driver files exist. In addition, the model assumes that files exist for all years between METCYC1 and METCYCF.
NL%IMETAVG
This controls the time stamp of meteorological driver averages. Options:
  • -1 - (Deprecated) Unknown; use linear interpolation
  • 0 - No averaging; values are instantaneous
  • 1 - Averages end at the reference time
  • 2 - Averages begin at the reference time
  • 3 - Averages are centered at the reference time (use this option if you are using met data extracted and converted from NARR)
Important: The user must obtain the correct information for each meteorological driver before running the model, and set this variable consistently. Inconsistent settings are known to cause numerical instabilities, particularly at around sunrise and sunset times.
NL%IMETRAD What should the model do with the input shortwave radiation? Options:
  • 0 - (ED-2.2 default when radiation components were measured) Nothing, use it as is
  • 1 - (Legacy) Add radiation components back together, then use the SiB method (Sellers et al. 1986 to split radiation into the four components (PAR direct, PAR diffuse, NIR direct, NIR diffuse).
  • 2 - (ED-2.2 default when radiation components were not measured) Add radiation components back together, then use the method by Weiss and Norman (1985) to split radiation to the four components.
  • 3 - All radiation goes to diffuse. Useful for theoretical studies only.
  • 4 - All radiation goes to direct, except at night. Useful for theoretical studies only.
  • 5 - (Beta) Add radiation components back together, then split radiation to the four components based on clearness index (Bendix et al. 2010).
NL%INITIAL_CO2 Initial value for CO2 (μmol mol-1) in case no CO2 is provided at the meteorological driver dataset.
NL%IPHENYS1 For prescribed phenology schemes (NL%IPHEN_SCHEME=1), this is the earliest year for which spring data are available. Ignored otherwise.
NL%IPHENYSF For prescribed phenology schemes (NL%IPHEN_SCHEME=1), this is the latest year for which spring data are available. Ignored otherwise.
NL%IPHENYF1 For prescribed phenology schemes (NL%IPHEN_SCHEME=1), this is the earliest year for which fall data are available. Ignored otherwise.
NL%IPHENYFF For prescribed phenology schemes (NL%IPHEN_SCHEME=1), this is the latest year for which fall data are available. Ignored otherwise.
NL%PHENPATH Path and prefix giving the locations of the prescribed phenology files. Used only when NL%IPHEN_SCHEME=1.
NL%IEDCNFGF Full path and file name of an XML configuration file containing additional parameters. This can be blank if there is no configuration file.
NL%EVENT_FILE Full path and file name of a file that describes fine scale management (e.g. planting, irrigation, harvest, etc). This can be blank if there is no event file.
NL%DT_CENSUS Time between tree censuses, in months. Currently the maximum is 60 months, to avoid excessive memory allocation. Set this to 1 if you do not intend to compare the model with census data.
NL%YR1ST_CENSUS Year in which the first census was conducted.
NL%MON1ST_CENSUS Month in which the first census was conducted.
NL%MIN_RECRUIT_DBH Minimum DBH that is measured in the census, in cm.
NL%IDETAILED This flag controls the possible detailed outputs, mostly used for debugging purposes. The idea is to provide detailed output to check bad assumptions. The options are additive (see below), and the indices below represent the different types of output:
  • 0 - (ED-2.2 default). No detailed output
  • 1 - Detailed budget (every DTLSM)
  • 2 - Detailed photosynthesis (every DTLSM)
  • 4 - Detailed output from the integrator (every HDID)
  • 8 - Thermodynamic bounds for sanity check (every DTLSM)
  • 16 - Daily error stats (which variable caused the time step to shrink)
  • 32 - Allometry parameters, and minimum and maximum sizes (three files, only at the beginning)
  • 64 - Detailed disturbance rate output. Two types of detailed transitions will be written (single polygon runs only).
    • a - A text file that looks like the .lu files. This is written only once, at the beginning of the simulation.
    • b - Detailed information about the transition matrix. This is written to the standard output (e.g. screen), every time the patch dynamics is called.
In case you want to generate multiple outputs, add the number of the sought options: for example, if you want detailed photosynthesis and detailed output from the integrator, set NL%IDETAILED to 6 (2 + 4). Any combination of the above outputs is acceptable, although options 1, 2, 4, 8, and 16 produce a sheer amount of txt files, in which case you may want to look at variable NL%PATCH_KEEP.
Important: Options 1, 2, 4, 8, and 16 will only work for single site simulations, and it is strongly recommended to set NL%IVEGT_DYNAMICS to 0. These options generate tons of output, so don't try these options with long simulations.
NL%PATCH_KEEP This option will eliminate all patches except one from the initialization. This is only used when one of the first five types of detailed output is active, otherwise it will be ignored. Options are:
  • -2 - Keep only the patch with the lowest potential LAI
  • -1 - Keep only the patch with the highest potential LAI
  • 0 - Keep all patches.
  • > 0 - Keep the patch with the provided index. In case the index is not valid, the model will crash.
NL%GROWTH_RESP_SCHEME This flag indicates how growth respiration fluxes are treated.
  • 0 - (Legacy) Growth respiration is treated as tax on GPP, at PFT-specific rate given by the growth respiration factor. All growth respiration is treated as aboveground wood -> canopy air space flux.
  • 1 - (ED-2.2 default) Growth respiration is calculated as in 0, but split into fluxes entering the CAS from Leaf, Fine Root, Sapwood (above- and below-ground), and Bark (above- and below-ground, only when NL%IALLOM=3), proportionally to the biomass of each tissue. This does not affect carbon budget at all, it provides greater within-ecosystem flux resolution.
NL%STORAGE_RESP_SCHEME This flag indicates how storage respiration fluxes are treated.
  • 0 - (Legacy) Storage respiration is treated as aboveground wood -> canopy air space flux.
  • 1 - (ED-2.2 default) Storage respiration is calculated as in 0, but split into fluxes entering the CAS from Leaf, Fine Root, Sapwood (above- and below-ground), and Bark (above- and below-ground, only when NL%IALLOM=3), proportionally to the biomass of each tissue. This does not affect carbon budget at all, it provides greater within-ecosystem flux resolution.