Debug outputs

The so called debug outputs are - besides the database oriented Outputs and the direct visualization - the third type of data outputs available in iLand. Debug outputs are usually on a very detailed level and are typically used during development and for debugging purposes (hence the name). In addition, debug output data is available within the iLand viewer application and is linked to iLand objects (e.g., trees or resource units). Outputs are enabled/disabled from the Debug Data menu of the GUI or via the project file and the keys system.settings.debugOutput and system.settings.debugOutputAutoSave. If debugOutputAutoSave is true, the debug data is written to the temp directory as CSV files (;-separated). The behavior is modified by the model.parameter.debug_clear switch: if true the debug output will be written every year (if auto-save is enabled) and then deleted from the memory. This limits the additional memory footprint of debug outputs (which can be quite high for larger simulations).

Note that these codes can also be combined, i.e. "12" will trigger the two debug outputs "tree growth" and "standlevel NPP".

Debug outputs based on individual trees (Tree NPP, Tree partition, Tree growth) produce potentially huge amounts of data and are therefore filtered by default. Only trees that satisfy the condition provided by the setting debug_tree (see project file ) are allowed producing debug output data.

The following codes trigger the respective debug outputs:

Tree NPP (1)

Tree partition (2)

The output focuses on how NPP is split between the tree compartments.
Biomass pools are given after growth (at the end of the year).

NameDescription
Idunique tree Id (numeric)
Species4-character species code (e.g. 'psme')
Dbhdiamter at breast height (cm)
Heighttree height (m)
xx-coordinate of the tree (index of the pixel on the 2m grid)
yy-coordinate of the tree (index of the pixel on the 2m grid)
ru_indexindex of the resource unit that hosts the tree
LRIlight-resource-index of the tree
mWoodybiomass (kg) of the stem (biomass states *after* growth)
mRootbiomass (kg) of the coarse roots
mFoliagebiomass (kg) of the foliage
LAleaf area (m2) of the tree
mFinerootbiomass (kg) of fine roots
mBranchbiomass (kg) of the branches
npp_kgNPP (kg biomass) produced by the tree in this year (note that the state of the reserve pool is added interally for distribution, and that the reserve pool (with increased size) is substracted again)
apct_foliageallocation (0..1) to the foliage compartment
apct_woodfraction of NPP that goes into woody organs (this is: stem, branches, reserve)
apct_rootfraction of NPP that is routed to the roots (coarse + fine roots)
delta_foliagenet increment of foliage biomass (kg)
delta_woodynet increment of woody compartments (stem and branches, flow to reserve already subtracted).
delta_rootnet increment (kg) of roots (fine + coarse)
biomass_lossbiomass (kg) that is lost due to senescene (fine roots, foliage) and coarse root turnover
mNPPReserveamount of the NPP reserve at the end of the year (kg)
netStemIncbiomass increment (kg) of the stem (branch increment: delta_woody - netStemInc)
stress_index Carbon balance based stress index (see base mortality )

Tree growth (4)

Standlevel GPP (8)

The output gives raw values for GPP productivity on resource unit x species level.

NameDescription
speciesshort name of the species
RU_index0-based index of resource unit
ridID of the resource unit (0 if no IDs are provided)
laileaf area index (m2/m2) for trees >4m height of the species
gpp_kg_m2 GPP production (yearly) (kg Biomass) per m2 (effective area)
gpp_kgGPP (kg Biomass) of the species on the whole resource unit
avg_agingaverage aging factor (0..1) of the species' trees. Note, that at this point the values are still from the last year.
f_env_yraggregated environmental factor 0..1. See sapling growth and competition for details on $f_{env,yr}$

Water Cycle (16)

datedate of the day (yyyymmdd). Note: this is the date of the climate record
ruindexindex of the RU (0-based)
ridID of the resource unit
tempaverage day temp (°C)
vpdvapour pressure deficit of the day (kPa)
precprecip of the day (mm)
radglobal radiation (MJ/m2)
combined_responsecombined response of all species on RU (min(water, vpd) )
after_interceptprecipitation after interception (mm)
after_snowwater input after snow pack (mm)
et_canopyevapotranspiration of the day (mm)
evapo_interceptedevaporation from the canopy (intercepted water) (mm)
contentcurrent soil water content (after evapotranspiration) (mm)
psi_kpasoil water potential (kPa) (before evapotranspiration)
excess_mmrunoff/deep percolation (mm)
snow_height current snow height (mm)
lai_effectiveeffective leaf area index (m2/m2), i.e. the sum of LAI of adult trees and saplings, including ground vegetation

Daily responses (32)

Establishment (64)

Note: The debug output is only created if seeds of the species are present on the resource unit.

NameDescription
speciesshort name of the species
RU_index0-based index of resource unit
ridID of the resource unit (0 if no IDs are provided)
avgProbDensity mean seed density on RU (avg probability of all seed cells (i.e. 20m) on a RU (100x100m))
TACAminTempabsolute minimum-temperatur, boolean-switch, false: establishment = NO
TACAchillchilling requirement (number of days), boolean-switch, false: establishment = NO
TACAfrostFreenumber of frost-free days, boolean-switch, false: establishment = NO
TACAgddtrue = gdd within thresholds
TACAFrostAfterBudfrostdays after budbirst are counted to the end of vegetation period
waterLimitationprobability of establishment due to water limitation (1: no limitation).
GDDthe calculated growing degree days (see establishment ).
TACAAbioticEnvresult after abiotic environment (after multiplication with fEnvYr) (result of tolerance pow(sqrt(frostdays after budbirst)) * fEnvYr)
fEnvYrstill missing: f_ref: parameter that scales response values to the range 0..1 (1 for best growth conditions)
avgLIFValueaverage LIF value of all pixels that are tested for establishment. If no pixels were tested, avgLifValue=0.
N_Established number of cells in RU where establishment was successful

Sapling Growth (128)

Note: the output is only created if there are living sapling trees on the resource unit.

NameDescription
speciesshort name of the species
RU_index0-based index of resource unit
ridID of the resource unit (0 if no IDs are provided)
Living_cohortsnumber of cohorts on resource unit
averageHeightaverage height of cohorts (the cohort statistics are based on all cohorts that survive, i.e. that do not die or get recruited) (m)
averageAgeaverage age of cohorts (living)
avgDeltaHPotaverage height increment potential (of all "surviving" cohorts) (m)
avgDeltaHRealizedaverage realized height increment (m)
addednumber of cohorts established in current year on RU
addedVegetativenumber of cohorts that were created by lateral sprouting in the current year and RU (note: the total number of created sprouts is added + addedVegetative)
diednumber of cohorts that died (due to stress) in the current year on RU
recruitednumber of cohorts that recruited to the iLand-model in the current year on RU
refRatioreference ratio (see Eq. 3 in sapling growth and competition
carbonLivingtotal carbon (kg) in living saplings (stem, branch, foliage, fineroots, coarse roots, saplings >1.3m height)
carbonGainnet carbon gain of saplings (>1.3m)

Carbon Cycle (256)

Note: Values for snags are always pools and fluxes of the stockable area per resource unit, while soil (ICBM/2N) pools and fluxes are always scaled to 100% stockable resource units.

NameDescription
SnagState_cTotal carbon content in snags (stem / coarse root / branches), kg/ha
TotalC_inTotal carbon input to the snags (stem / coarse root / branches), kg/ha
TotalC_toAtmflux of C to atmosphere (snag decay), kg/ha
SWDtoDWD_c,SWDtoDWD_nC and N flux from standing dead wood to downed dead wood (just snags, no branches) (kg/ha)
toLabile_c, toLabile_ntotal flux to labile soil pool (C and N, kg/ha) (mortality and litter fall)
toRefr_c, to_Refr_nfluxes (C and N) to refractory soil pool (total flux: snags, branches, coarse roots), kg/ha
for each class X=1..3
swdX_c, swdX_nstanding woody debris pool content (C, N), kg/ha
swdX_countnumber of snags (reduced transfer to DWD)
swdX_tsdaverage time since death (yrs)
dbhXaverage dbh of snags (cm)
heightXaverage height of snags (m)
volumeXaverage volume of snags (m3)
toSwdX_c, toSwdX_ninput flux into SWD pool (C, N) kg/ha
other wood classes: X: 1..5
otherWoodX_c, otherWoodX_npool content of the class (kg/ha) (coarse roots and branches)
Soil (ICBM/2N)
iLabC, iLabNC,N input to soil in labile matter (t/ha) (i.e. litter)
iKyldecomposition rate of litter input
iRefC, iRefNC and N input to soil in refractory matter (t/ha) (DWD)
iKyrdecomposition rate of refractory input
reclimate modifier (see snag dynamics)
kyl, kyrcurrent decomposition rates of labile/refractory pools
ylC, yLNstate of labile matter pool (C, N), t/ha
yrC, yrNstate of refractory matter pool (C, N), t/ha
somC, somNstate of soil organic matter (old) (C, N), t/ha
NAvailablecalculated plant available nitrogen (kg/ha*yr) (sum of N mineralization minus leaching including N deposition)
NAVLabavailable nitrogen (kg/ha*yr) from labile pool
NAVRefavailable nitrogen (kg/ha*yr) from refractory pool
NAVSomavailable nitrogen (kg/ha*yr) from SOM. This includes N deposition.

Performance (512)

NameDescription
yearyear of the simulation
treeCounttotal number of trees
saplingCounttotal number of saplings
newSaplingsnewly created saplings
managementexecution time management (ms)
applyPatternexecution time for "printing" LIP patterns (ms)
readPatternexecution time for calculating LRI values for all trees (ms)
treeGrowthtime spent in individual tree growth routine (ms)
seedDistributionexecution time for seed distribution (ms)
establishmentexecution time establishment routine (ms)
saplingGrowthtime spend with growth of trees <4m (ms)
carbonCycleexecution time for carbon cycle (ms)
writeOutputtime for writing outputs (ms)
totalYeartotal execution time of the year (ms)

Dynamic Output

The dynamic output produces statistics for all trees in the simulation. The "dynamic" output is configured in the project file section "output" (output.dynamic) and switched on/off there. In addition, the dynamic debug output can be switched on/off using the Globals Javascript function Globals.startOutput("debug_dynamic") and stopOutput().
The defintion of columns is similar to the dynamic stand output.

Example for the section in the project file:

<dynamic> <!-- clipboard -->
      <!-- free defined output that uses expressions/filter on all trees of the simulation -->
      <enabled>false</enabled>
      <columns>dbh.mean, dbh.max, dbh.min, dbh.p5, dbh.p25, dbh.p75, dbh.p95,
	  height.mean, height.max, height.min, height.p5,height.p95, height.p25,height.p75,
	  stress.mean, stress.max, if(stress>0,1,0).sum, if(stress>0,stress,0).sum, if(dbh>0,1,0).sum,
	  leafarea.sum,woodymass.sum,rootmass.sum,foliagemass.sum
      </columns>
    </dynamic>