Details ¶
Documentations ¶
- TreeMig core model
- TreeMig Fortran Code
- TreeMig-R-package and GUI
Informations about ¶
Input data ¶
Required input data
We provide input data for Switzerland, consisting of a climate change scenario, parts of the Swiss soil suitability map for calculating the water storage capacity ("bucketsize") and the Swisss areal statistics for generating land use masks ("stockability"). The actual input data, the bioclimatic variables, are calculated automatically from this.
However, you can also enter your own input data for slope, aspect, temperature, precipitation and water storage capacity ("bucketsize") as well as stockability in the user interface. If you want to carry out a simulation with temporally and spatially constant inputs, this is very simple. Under Simulation/Study area and Bioclimate/Create new bioclimate, you can use the "constant" tab for each data type and simply enter a constant value. Otherwise, you must define the input files and their storage locations under Input data in the "Input" area. There you can enter the paths to other input files for temperature, precipitation, DHM, slope, aspect, water storage capacity and tillability. This data is then harmonised in scope and resolution by the TreeMig-R-package functions called up in the user interface.
Table 1: Formats and ranges of input data. Netcdf and raster files must be readable by the terra package, text files with the data.table::fread function (e.g. .txt, .csv, .xlxs).
Variable | Unit | Temporal resolution | Value range | Format(s) | Explanation |
Temperature | °C | monthly mean | >= -272 | Raster/Netcdf, text (lon,lat,year, T1:T12), const. |
|
Precipitation | cm | montly sum | >= 0 | Raster/Netcdf, text (lon,lat,year, P1:P12), const |
|
Slope | degrees |
| 0:90 | Raster/Netcdf, text, (lon,lat,slope), const |
|
Aspect | degrees |
| 0:360 | Raster/Netcdf, text, (lon,lat,aspect), const | Direction (Compass direction) |
Digitale elevation model (DEM) |
|
|
| must be readable with the terra package | For applying elevation in the plots |
Bucketsize | cm |
| >=0 <=40 | Swiss soil fertility map database, Raster/Netcdf, text, (lon,lat,bucketsize), const | Direct oder derived from Swiss soil fertility map |
Stockability |
|
| 0 not stockable, | NOAS04, Raster, text, shapefile (lon, lat, stockability) | Indicates whether the abiotic environment (except climate) and land use permit trees. Either direct or derived from Swiss areal statistics (NOAS04). |
Additional spatio-temporal input data
In addition to the bioclimate and stockability, you can also give the simulation 4 additional temporally and/or spatially varying input variables (Table 2). However, you must provide these yourself. To do this, add additional columns to the bioclimate file. Rename the bioclimate file and place it in folder E of the new simulation that you want to run. Then use this bioclimate file in your simulations.
Tabelle 2: Further spatio-temporal input data, that can be changed in the "TM-R-script".
Variable | Column name | Value range | Unit |
(Large scale) disturbance intensity (prescribed) | Distu | 0-1 | year-1 |
Browsing pressure by herbivores | browsPress | 0-30 | - |
Drought stress for germination | germDrought | 0-1 | - |
Nutrient availability | nutrients | >0, 300 is very high | t ha-1
|
Species parameters ¶
The parameters of the species determine their properties in the simulations. An explanation of the species parameters can be found here. The parameters are defined via a .txt file, with each line corresponding to a species. The parameter files must be located in the P folder of the TMEnvironment. Examples of species parameter values can be found in the TMEnvironment of the example setup. These represent the 30 most common tree species in Central Europe.
Output files ¶
The simulation results are saved either in a single Netcdf file or as separate text (.txt) files.
Each of the text files contains columns for the relative coordinates lat and lon (starting at 0 up to the maximum number of rows and columns of the simulation), the simulation year, starting at zero up to the number of simulation years, and then for each species the output variable. The last column contains the sum of all species. The units of the variables are given in the table below.
The default outputs are given as a sum over all height classes. If "Write species height structures" is selected, the tree numbers per height class are saved in a separate file for each height class in the folder HCL.
The netcdf file is constructed accordingly with lat, lon, year, height (if selected) and species as dimensions (but saved as variables) and the selected variables (e.g. biomass and LAI) as actual variables.
The "heights.txt" file in the HCL folder contains the lower limits of the height classes in metres, starting with the lowest height class 0 (the seedlings, first line) up to height class 15 (last line). Note that the columns lat, lon, year are meaningless here, and the height class heights are the same for all species.
In HCL, further lookup tables are output for the species-specific biomass, dbh, lai and seed production per tree in the height classes. Here too, the height classes range from 0 to 15, and lat, lon and year are dummy columns. By multiplying the values of these lookup tables by the number of trees per height class, biomass, DBH, basal area, LAI and seed production per height class can be calculated for each species and height class.
Fortran writeOutput% | TM-R-script | Explanation write… | Example | Unit |
biomass | writeBiomass | total (i.e.over all height classes) species biomasses | T | t/ha |
number | writeNumbers | total species numbers | F | #/ha |
hstruct | writecHStruct | species height structures, one file per height class | F | #/patch-area and height class |
seeds | writeSeeds | total species seed number | F | #/patch-area |
antagonists | writeSeedAnta | total number of species antagonists | F | #/patch-area |
pollen | writePollen | pollen percent of the species | F | % |
LAI | writeLAI | total species LAI; double sided leaf area index | T | m2/m2 |
basalArea | writeBasalArea | total species basal area (at 1.37m height) | F | m2/ha |
NPP | writeNPP | total NPP of species; rough estimate as difference of biomass betwen the years. | F | t/ha |
ingrowth | writeSpecIngrowth | total ingrowth of species above 1.37 m | F | #/patch-area |
biodiv | writeBiodiv | biodiversity; according to Shannon-Weaver | F | 0-1 |
light | writeLightDistr | light distribution; relative frequencies of the light classes in each height class | F |
|
Statefiles ¶
Statefiles are .txt files to provide a snapshot of the state of the simulation. They are written and read in a fixed format. If you want to provide statefiles for initialisation yourself, you must adhere to this format.
- Column 1: Species
- Column 2: Year of the state file output or input. When you start a simulation, this year should be the first year of your simulation.
- Column 3, 4: relative latitude and longitude coordinates (i.e. starting with 0)
- Column 5: # number of seeds per patch (833 m2)
- Column 6: Population density of the seed antagonists. Only needed if antagonist dynamics are simulated, which is rarely the case; set the value to any number.
- Column 7: Index of the highest height class for this species. You can see this in the file "heights.txt", in the line with the last non-zero value.
- Column 8: Number of trees per area size (833 m2) of the species in the 0th height class
- Column 9: Number of trees per area size (833 m2) of the species in the 1st height class
- etc., until the highest height class of this species is reached.
Immigration files ¶
Immigration files are .txt files that indicate when and where which species migrates into the simulation area. They are read in a specific format. If you want to provide an immigration file, make sure you adhere to this format.
- Line 1: any text or empty
- Line 2: Duration of the individual immigration events.
- Line 3: any text or empty
- from line 4: for all species, one line per species
- Column 1: Species
- Column 2: Number of immigration events
- from column 3: three values for each immigration event: year (current year, e.g. 2001), coordinates (lat, long) of the cell, between 0. and 1., where (0.,0.) is the lower left, (1.,1.) the upper right corner of the simulation area.
Example input data for Switzerland ¶
TreeMig requires high-resolution input data on climate, slope and aspect, soil and land use. Here we describe the data sources and how the example datasets in the TMInputData folder were created from them.
Climate data
The CH2018 Climate Scenarios for Switzerland[1][2] provide daily time series at individual Swiss stations and on a regular 2km grid (DAILY-LOCAL and DAILY-GRIDDED)[3]. Both data sets include data of 68 EURO-CORDEX simulations for the scenarios RCP2.6, RCP4.5 and RCP8.5. All data are available under the Creative Commons license CC BY 4.0.
Since a higher resolution of 200m was required for a sample data set, we used a 200m digital elevation model (see below) and the interpolation software Daymet by Thornton, et al. (1997)[4] to interpolate the DAILY-LOCAL data from the individual Swiss stations of the simulation CLMCOM_CCLM4_MPIESM_EUR11_RCP85.
The new 200m daily gridded data were converted to NetCDF format and then aggregated to monthly mean values (temperatures) and totals (precipitation) using the Climate Data Operators CDO.
Digital elevation model, slope and aspect
The digital elevation model DHM25/200 [5] by the Federal Office of Topography swisstopo was first reprojected to the current Official Swiss reference system CH1903+. The elevations were rounded to whole meters. The resulting DEM was then cut out along a 1km buffer outside the Swiss border and exported to GeoTIFF format. Aspect and slope were derived from the DEM using ESRI’s ArcGIS software.
Soil data
To derive the bucketsize required in TreeMig, absolute values of the properties water storage “WASSERSPEI” and water logging “VERNASS” of the Swiss Soil Suitability Map [6] [7] were used in
\( \begin{equation} bucketsize= \begin{cases} 0.78+5.43 * WASSERSPEI , & \text{if}\ VERNASS<4 \\ 10.78+5.43 * WASSERSPEI, & \text{otherwise} \end{cases} \end{equation} \)
Land use/cover data for Switzerland
TreeMig uses a stockability mask to hide grid cells that cannot be forested, e.g. because they are under a different land use. This stockability can be derived for Switzerland from land use/land cover data of the Swiss areal statistics NOAS04, 72 categories [8].
References of example input data
- [1] CH2018 (2018), CH2018 – Climate Scenarios for Switzerland, Technical Report, National Centre for Climate Services, Zurich, 271 pp. ISBN: 978-3-9525031-4-0.
- [2] CH2018 Project Team (2018): CH2018 - Climate Scenarios for Switzerland. National Centre for Climate Services. doi: 10.18751/Climate/Scenarios/CH2018/1.0
- [3] Kotlarski S., Rajczak J. (2018): CH2018 - Climate Scenarios for Switzerland, Documentation of the localized CH2018 datasets - Transient daily time series at the local scale: DAILY-LOCAL, DAILY-GRIDDED.
- [4] Thornton, P.E., Running, S.W., White, M.A. (1997): Generating surfaces of daily meteorological variables over large regions of complex terrain. J. Hydrol. 190: 214-251. https://doi.org/10.1016/S0022-1694(96)03128-9.
- [5] © Federal Office of Topography swisstopo.
- [6] © Bundesamt für Statistik (BFS), GEOSTAT, 2020, Bodeneignungskarte der Schweiz, Geodaten.
- [7] Frei, E., U. Voegt, R. Flueckiger, H. Brunner, F. Schai, and R. Haeberli. 1980. Bodeneignungskarte der Schweiz. Eidg. Forschungsanstalt für landwirtschaftlichen Pflanzenbau, Eidg. Forschungsanstalt für Wald, Schnee und Landschaft (WSL), Bern.
- [8] © BFS 1992/1997 Arealstatistik der Schweiz. Bundesamt für Statistik, editor, CH-Neuchatel.