diff --git a/.github/workflows/ci_env.yml b/.github/workflows/ci_env.yml index 3805e107..fbd74079 100644 --- a/.github/workflows/ci_env.yml +++ b/.github/workflows/ci_env.yml @@ -9,7 +9,7 @@ on: jobs: tests: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest strategy: max-parallel: 5 diff --git a/VERSION b/VERSION index 7343cbd2..7ac554f1 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -4.3.1.501 \ No newline at end of file +4.3.1.502 \ No newline at end of file diff --git a/src/lisflood/global_modules/default_options.py b/src/lisflood/global_modules/default_options.py index 3091665f..8d334495 100644 --- a/src/lisflood/global_modules/default_options.py +++ b/src/lisflood/global_modules/default_options.py @@ -158,7 +158,7 @@ yearly=False), 'ChanQEnd': ReportedMap(name='ChanQEnd', output_var='ChanQ', unit='m3/s', end=['repEndMaps'], steps=[], all=[], - restrictoption=['simulateReservoirs','simulateLakes'], monthly=False, yearly=False), + restrictoption=[], monthly=False, yearly=False), 'ChanQState': ReportedMap(name='ChanQState', output_var='ChanQ', unit='m3/s', end=[], steps=['repStateMaps'], all=[], restrictoption=['nonInit'], monthly=False, diff --git a/tests/data/LF_MCT_UseCase/settings/mct_warm_endmaps.xml b/tests/data/LF_MCT_UseCase/settings/mct_warm_endmaps.xml new file mode 100644 index 00000000..a43688a7 --- /dev/null +++ b/tests/data/LF_MCT_UseCase/settings/mct_warm_endmaps.xml @@ -0,0 +1,5970 @@ + + + + + + + #----------------------------------------------------------- + # modelling and reporting options + #----------------------------------------------------------- + + + + # options to turn hydrological modules on/off + + + + + + + + + + + + + + + + + + + + + # use inflow data + + + # option to compute indicators + + + # option to initialize Lisflood + + + + # option to read/write NetCDF + + + + + + + #----------------------------------------------------------- + # report time series + #----------------------------------------------------------- + # report discharge TS + + + # report gauges and sites + # sites (pixel average) + + + # gauges (catchment average) + + + + + # report reservoirs and lakes + + + + # report mass balance + + + #----------------------------------------------------------- + # report maps + #----------------------------------------------------------- + # report state maps + + + # report end maps + + + # report output maps + # forcings + + + + + + + # dicharge + + + + + + # variables + + + + + + + + + + + + + + + + #Surface runoff + #Surface runoff + UZ [mm] + #Surface runoff + UZ [mm] + LZ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ************************************************************** + netCDF parameters + ************************************************************** + + + + + !-- Optimization of netCDF I/O through chunking and caching. + + The option "NetCDFTimeChunks" may take the following values: + - "-1" : Load everything upfront + - "[positive integer number]" : Chunk size defined by user + - "auto" : Let xarray to decide + + + + + The option "MapsCaching" may take the following values: + - "True" : Cache maps during execution + - "False" : No caching + + + + ************************************************************** + PARALLELIZED KINEMATIC ROUTING + ************************************************************** + + + + + The option "OutputMapsChunks" may take the following values: + - "[positive integer number]" : Dump outputs to disk every X steps (default 1) + + + + + The option "OutputMapsDataType" sets the output data type and may take the following values: + - "float64" + - "float32" + + + + ************************************************************** + PARALLELISATION WITH NUMBA (USED IN ROUTING AND SOILLOOP) + ************************************************************** + + + + + !-- Parallelisation of using Numba runtime compiled library . + The option "numCPUs_parallelNumba" may take the following values: + - "0" : set to NUMBA_NUM_THREADS Environment Variable + (if NUMBA_NUM_THREADS is not set, will take the number of CPU cores determined by python's multiprocessing.cpu_count()) + - "1" : serial execution (not parallel) + - "2", "3", ... : manual setting of the number of parallel threads. + (if exceeding NUMBA_NUM_THREADS, the value is set to NUMBA_NUM_THREADS) --> + + + + + ************************************************************** + AREA AND OUTLETS + ************************************************************** + + + + + MAPSDIR + Root directory (tables and parameters) + $(SettingsPath)/.. + + + + + + Clone map + col row cellsize xupleft yupleft + or pcraster maps or netcdf maps + + + + + + 4307500 2377500 outlet + 4307500 2377500 4292500 2377500 4302500 2377500 4302500 2372500 4297500 2372500 4312500 2377500 4287500 2372500 4282500 2367500 + Nominal map with gauge locations (i.e cells for which simulated discharge + is written to file(1,2,3 etc) + lat lon (lat2 lon2 ...) + or pcraster maps or netcdf maps + + + + + + netcdf template used to copy metadata information for writing netcdf + + + + + + latitude map to be used for snow/ice modelling + + + + + + This is needed when using projected coordinates + + + + + ************************************************************** + TIME-RELATED CONSTANTS + ************************************************************** + + + + + Calendar convention + + + + + + Reference day and time + + + + + + timestep [seconds] + + + + + + 17280 5 times subrouting + 21600 6 hours + Sub time step used for kinematic and MCT wave channel routing [seconds] + Within the model,the smallest out of DtSecChannel and DtSec is used + + + + + + 01/01/YEAR_START 12:00 + Number of first time step in simulation + + + + + + 01/01/YEAR_END 06:00 + Number of last time step in simulation + + + + + + low value to limit testing time + + + + + + 1..9999 + Time steps at which to write model state maps (i.e. only + those maps that would be needed to define initial conditions + for succeeding model run) + + + + + + + + ************************************************************** + MONTE CARLO, KALMAN FILTER + ************************************************************** + + + + + Number of sample to use in MonteCarlo simulations + + + + + + Number of cores of the computer to use in MonteCarlo simulations + This only works with Linux, if set to 1 no forking will be used + + + + + + Time steps at which to write model state maps (i.e. only + those maps that would be needed to define initial conditions + for succeeding model run) + + + + + + + + ************************************************************** + CALIBRATION PARAMETERS + with .nc format: than working with smaller sub-areas is possible + ************************************************************** + + + + default: 10 + $(PathParams)/params_UpperZoneTimeConstant + Time constant for water in upper zone [days] + This is the average time a water 'particle' remains in the reservoir + if we had a stationary system (average inflow=average outflow) + + + + + + default: 100 + $(PathParams)/params_LowerZoneTimeConstant + Time constant for water in lower zone [days] + This is the average time a water 'particle' remains in the reservoir + if we had a stationary system (average inflow=average outflow) + + + + + + default: 0.5 + $(PathParams)/GwPercValue + Maximum rate of percolation going from the Upper to the Lower + response box [mm/day] + + + + + + default: 0.0 + $(PathParams)/GwLoss + Maximum percolation rate from the lower groundwater zone [mm/days]. GWLoss + it’s lost beyond the catchment boundaries or to deep groundwater systems. + A value of 0 (closed lower boundary) is recommended as a starting value. + + + + + + default: 10 + $(PathParams)/params_LZThreshold + threshold value [mm] of the water storage in the lower groundwater zone. + If the water storage in the lower groundwater zone decreases below LZThreshold, + the flow from the lower zone to the nearby rivers (base-flow) stops. + + + + + + default: 0.7 [-] + $(PathParams)/b_Xinanjiang + Power in Xinanjiang distribution function [-] + + + + + + default: 3.5 [-] + $(PathParams)/PowerPrefFlow + Power that controls increase of proportion of preferential + flow with increased soil moisture storage [-] + + + + + + default: 2.0 [-] + $(PathParams)/CalChanMan1 + Multiplier [-] applied to Channel Manning's n + + + + + + default: 4.0 [mm C-1 day-1] + $(PathParams)/SnowMeltCoef + SRM: 0.45 cm C-1 day-1 ( = 4.50 mm C-1 day-1), Kwadijk: 18 mm C-1 month-1 (= 0.59 mm C-1 day-1) + See also Martinec et al., 1998. + + + + + + default: 3.0 [-] + $(PathParams)/CalChanMan2 + Multiplier [-] applied to Channel Manning's n for second line of routing + + + + + + default: 3.0 [-] + $(PathParams)/CalChanMan3 + Multiplier [-] applied to Channel Manning's n for MCT routing + + + + + + default: 1.0 [-] + $(PathParams)/LakeMultiplier + Multiplier applied to the lake parameter A + + + + + + Fraction of the total reservoir storage above which the reservoirs enters + the flood control zone. + + + + + + Factor of the 100-year return inflow (`ReservoirFloodOutflow`) that defines the inflow + value that switches, when exceeded, the reservoir routine to flood control mode. + It can be a map (NetCDF), a table (TXT) or a float. Negative values will be replaced by + the default value of 0.3 + Units: - + Range: 0.1 - 0.5 + Default: 0.3 + + + + + + default: 5.0 [mm/day] (not included in calibration) + Critical amount of available water (expressed in [mm/day]!), above which 'Days Since Last Rain' parameter is + set to 1 + + + + + default: 2.0 + $(PathParams)/params_QSplitMult + Multiplier applied to average Q to split into a second line of routing + + + + + + default: 1.0 + $(PathParams)/params_ChanBottomWMult + Multiplier applied to ChanBottomWidth + + + + + + default: 1.0 + $(PathParams)/params_ChanDepthTMult + Multiplier [] applied to ChanDepthThreshold + + + + + + default: 1.0 + $(PathParams)/params_ChanSMult + Multiplier [] applied to ChanSdXdY + + + + + + + ************************************************************** + FILE PATHS + ************************************************************** + + + + + RUNDIR + Output path (org=$(PathRoot)/out) + + + + + + INITDIR + Path of the initial value maps e.g. lzavin.map (org=$(PathRoot)/outPo) + + + + + + Static maps path + + + + + + Inflow path + + + + + + Calibration parameter path + + + + + + Tables path + + + + + + Maps instead of tables path + + + + + + Maps instead of tables for soil hydraulics path + + + + + + Maps for transient land use changes every 5 years + + + + + + Maps for land use fractions and related land use maps + + + + + + Water use maps path + + + + + + FORCINGSDIR + Meteo path + + + + + + Leaf Area Index maps path + + + + + + variable water fraction maps path + + + + + + + + ************************************************************** + INITIAL CONDITIONS + (maps or single values) + ************************************************************** + + + + + if init. condition are stored as netCDF with different time steps + this variable indicates which time step to use + Either as date e.g. 1/1/2010 or as number e.g. 5 + + + + + + Cold start: 0 + Initial overland flow storage [m3], direct runoff fraction + + + + + + Cold start: 0 + Initial overland flow storage [m3], other fraction + + + + + + Cold start: 0 + Initial overland flow storage [m3], forest fraction + + + + + + Cold start: 0 + initial snow depth in snow zone A [mm] + + + + + + Cold start: 0 + initial snow depth in snow zone B [mm] + + + + + + Cold start: 0 + initial snow depth in snow zone C [mm] + + + + + + Cold start: 0 + initial Frost Index value [degC/day] + + + + + + Cold start: 0 + cumulative interception [mm] + + + + + + Cold start: 0 + PRERUNDIR/uz.end.nc + water in upper store [mm] + + + + + + Cold start: 1 + days since last rainfall [days] + + + + + + + + ************************************************************** + The following variables can also be initialized in the model + internally. if you want this to happen set them to bogus value + of -9999 + ************************************************************** + + + + + PRERUNDIR/lz.end.nc + water in lower store [mm] + Cold start: -9999: use steady-state storage + + + + + + initial cross-sectional area of flow in channel[m2] + Cold start: -9999: use half bankfull + + + + + + PRERUNDIR/tha.end.nc + initial soil moisture content layer 1a (superficial soil layer) [mm3/mm3] + Cold start: -9999: use field capacity values + + + + + + PRERUNDIR/thb.end.nc + initial soil moisture content layer 1b (upper soil layer) [mm3/mm3] + Cold start: -9999: use field capacity values + + + + + + PRERUNDIR/thc.end.nc + initial soil moisture content layer 2 (lower soil layer) [mm3/mm3] + Cold start: -9999: use field capacity values + + + + + + initial channel cross-section area [m2] for 2nd routing channel + Cold start: -9999: use 0 + + + + + + initial lateral inflow for 1st line of routing [m2/s] + Cold start: -9999: use 0 + + + + + + Initial lake level [m] + Cold start: -9999 sets initial value to steady-state level + + + + + + Lake inflow at previous routing sub-step (ChanQ(t-1)) [m3/s] + Cold start: -9999 sets initial value equal to PrevDischarge (ChanQ(t)) + + + + + + Lake outflow at previous routing sub-step (ChanQ(t-1)) [m3/s] + Cold start: -9999 sets initial value + + + + + + Outflow discharge at the end of previous step (instantaneous) [m3/s] + Cold start: -9999 sets initial value to 0 + + + + + + Outflow average discharge on previous routing sub-step (average) [m3/s] + Cold start: -9999 sets initial value to 0 + + + + + + Courant number at previous step for MCT routing + Cold start: -9999 sets initial value to 1 + + + + + + Reynolds number at previous step for MCT routing + Cold start: -9999 sets initial value to 0 + + + + + + + ************************************************************** + INITIAL CONDITIONS FOREST + (maps or single values) + ************************************************************** + + + + + cumulative interception [mm] + Cold start: 0 + + + + + + PRERUNDIR/uzf.end.nc + water in upper groundwater store [mm] + Cold start: 0 + + + + + + days since last rainfall + Cold start: 1 + + + + + + PRERUNDIR/thfa.end.nc + initial soil moisture content [mm3/mm3] layer 1a (superficial soil layer) + Cold start: -9999: use field capacity values + + + + + + PRERUNDIR/thfb.end.nc + initial soil moisture content [mm3/mm3] layer 1b (upper soil layer) + Cold start: -9999: use field capacity values + + + + + + PRERUNDIR/thfc.end.nc + initial soil moisture content [mm3/mm3] layer 2 (lower soil layer) + Cold start: -9999: use field capacity values + + + + + + + + + ************************************************************** + INITIAL CONDITIONS IRRIGATION + (maps or single values) + ************************************************************** + + + + + cumulative interception [mm] + Cold start: 0 + + + + + + PRERUNDIR/uzi.end.nc + water in groundwater upper store [mm] + Cold start: 0 + + + + + + days since last rainfall + Cold start: 1 + + + + + + PRERUNDIR/thia.end.nc + initial soil moisture content [mm3/mm3] layer 1a (superficial soil layer) + Cold start: -9999: use field capacity values + + + + + + PRERUNDIR/thib.end.nc + initial soil moisture content [mm3/mm3] layer 1b (upper soil layer) + Cold start: -9999: use field capacity values + + + + + + PRERUNDIR/thic.end.nc + initial soil moisture content [mm3/mm3] layer 2 (lower soil layer) + Cold start: -9999: use field capacity values + + + + + + + + ************************************************************** + INITIAL CONDITIONS IMPERVIOUS AREAS + (maps or single values) + ************************************************************** + + + + + cumulative interception [mm] + Cold start: 0 + + + + + + + + ************************************************************** + PREFIXES OF METEO AND VEGETATION RELATED VARIABLES + ************************************************************** + + + + + prefix precipitation maps + + + + + + prefix average temperature maps + + + + + + prefix E0 maps + + + + + + prefix ES0 maps + + + + + + prefix ET0 maps + + + + + + prefix LAI maps + + + + + + prefix LAI forest maps + + + + + + prefix LAI irrigation maps + + + + + + prefix domestic water use maps + + + + + + prefix livestock water use maps + + + + + + prefix energy water use maps + + + + + + prefix industry water use maps + + + + + + prefix variable water fraction + + + + + + + + ************************************************************** + PARAMETERS RELATED TO EVAPO(TRANSPI)RATION AND Interception + ************************************************************** + + Suggested parameterisation strategy: + + - leave all these parameters at their default values. + in some very special cases CalEvaporation may be set to some + value other than one + + + + + + Multiplier [-] applied to potential precipitation rates + + + + + + Multiplier [-] applied to potential evapo(transpi)ration rates + + + + + + Time constant for water in interception store [days] + + + + + + Average extinction coefficient for the diffuse radiation flux + varies with crop from 0.4 to 1.1 (Goudriaan (1977)) + + + + + + maximum depression storage for water on impervious surface + which is not immediatly causing surface runoff [mm] + + + + + + + + ************************************************************** + SNOW AND FROST RELATED PARAMETERS + ************************************************************** + + Suggested parameterisation strategy: + + - estimate SnowFactor from prior data (if available), otherwise use 1 + - use SnowMeltCoef as a calibration constant + - leave all other parameters at default + + + + + + Multiplier [-] applied to precipitation that falls as snow + + + + + + range [mm C-1 day-1] of the seasonal variation + SnowMeltCoef is the average value + + + + + + Average temperature [deg C] at which snow melts + + + + + + Average temperature [deg C] below which precipitation is snow + + + + + + Temperature lapse rate with altitude [C / m] + + + + + + Daily decay coefficient [day-1], (Handbook of Hydrology, p. 7.28) + + + + + + Snow depth reduction coefficient, [cm-1], (HH, p. 7.28) + + + + + + Snow water equivalent, (based on snow density of 450 kg/m3) (e.g. Tarboton and Luce, 1996) + + + + + + Degree Days Frost Threshold (stops infiltration, percolation and capillary rise) + Molnau and Bissel found a value 56-85 for NW USA. + + + + + + + + ************************************************************** + IRRIGATION AND WATER ABSTRACTION RELATED PARAMETERS + ************************************************************** + + + + + default: 0.75 + Field application irrigation efficiency [-]: max 1, ~0.90 drip irrigation, ~0.75 sprinkling + + + + + + conveyance efficiency [-]: around 0.80 for average channel + + + + + + IrrigationType (value between 0 and 1) is used here to distinguish between additional adding water until fieldcapacity (value set to 1) or not (value set to 0) + + + + + + Factor [-] to irrigation water demand + More than the transpiration is added e.g to prevent salinisation + + + + + + Annual amount (m3) of treated wastewater reused for irrigation + + + + + + Number of days over which the annual amount of treated wastewater for irrigation is used + + + + + + Consumptive Use (1-Recycling ratio) for livestock water use (0-1) [-] + + + + + + Consumptive Use (1-Recycling ratio) for industrial water use (0-1) [-] + + + + + + # Consumptive Use (1-Recycling ratio) for energy water use (0-1) [-] + # Source: Torcellini et al. (2003) "Consumptive Use for US Power Production" + # map advised by Neil Edwards, Energy Industry + # the UK and small French rivers the consumptive use varies between 1:2 and 1:3, so 0.33-0.50 + # For plants along big rivers like Rhine and Danube the 0.025 is ok + EnergyConsumptiveUseFraction=0.025 + + + + + + Consumptive Use (1-Recycling ratio) for domestic water use (0-1) [-] + Source: EEA (2005) State of Environment + + + + + + Default : 0.2 + $(PathRoot)/leakage.map + Fraction of leakage of public water supply (0=no leakage, 1=100% leakage) + + + + + + The water that is lost from leakage (lost) (0-1) [-] + + + + + + Leakage reduction fraction (e.g. 50% = 0.5 as compared to current Leakage) (baseline=0, maximum=1) [-] + + + + + + Water savings fraction (e.g. 10% = 0.1 as compared to current Use (baseline=0, maximum=1) [-] + scenwsav.map + + + + + + Fraction of water re-used in industry (e.g. 50% = 0.5 = half of the water is re-used, used twice (baseline=0, maximum=1) [-] + scenruse.map + + + + + + + Irrigation crop coefficient [-] + + + + + + Irrigation crop group number [-] + + + + + + Population [units] + + + + + + Population + + + + + + Land Use Mask + + + + + + Reported water use [cu m/s], depending on the availability of discharge + + + + + + Time series of upstream water use at gauging stations + + + + + + Number of sub-steps needed for water use + routine + + + + + + maximum number of loops for calculating the use of water + = distance water is taken for water consuption + + + + + + percentage of water which remains in the channel + e.g. 0.2 -> 20 percent of discharge is not taken out + + + + + + ? + + + + + + + + + ************************************************************** + GROUNDWATER RELATED PARAMETERS + ************************************************************** + + Suggested parameterisation strategy: + + - leave GwLossFraction at 0 unless prior information show groundwater loss + is important + - use UpperZoneTimeConstant, LowerZoneTimeConstant, + GwPercValue as calibration constants + - calibrate on GwLossFraction if necessary + + + + + length of the window used to smooth the LZ zone [number of cell length] + + + + + + map of aquifers (0/1), used to smoothen LZ near extraction areas + + + + + + + + ************************************************************** + EVAPORATION FROM OPEN WATER + ************************************************************** + + + + + Fraction of maximum extend of water + + + + + + Mask with Lakes from GLWD database + + + + + + + + ************************************************************** + TRANSMISSION LOSS PARAMETERS + ************************************************************** + + Suggested parameterisation strategy: + + - Use TransSub as calibration constant leave all other parameters at default values + + + + + Transmission loss function parameter + + + + + + PBchange + Transmission loss function parameter + + + + + + PBchange + downstream area taking into account for transmission loss + + + + + + upstream area + + + + + + + + + ************************************************************** + ROUTING PARAMETERS + ************************************************************** + + Suggested parameterisation strategy: + + - Use CalChanMan as calibration constant to fine-tune timing of + channel routing, leave all other parameters at default values + + + + + kinematic wave parameter beta [-]: 0.6 is for broad sheet flow + + + + + + Reference depth of overland flow [mm], used to compute + overland flow Alpha for kin. wave + + + + + + Percentage [-] used to compute the TotalCrossSectionAreaHalfBankFull in the initialisation of the + total cross-sectional area + default: 0.5 + + + + + + Minimum slope gradient [-] (for kin. wave: slope cannot be 0) + + + + + + Minimum channel gradient [-] (for kin. wave: slope cannot be 0) + + + + + + + + ************************************************************** + PARAMETERS RELATED TO NUMERICS + ************************************************************** + + Important: do not change, default value of 0.4 generally combines + sufficient numerical accuracy within a limited number of sub-steps + + + + + + Minimum value for Courant condition in soil moisture routine. Always less than or equal to 1. + Small values result in improved numerical accuracy, at the expense of increased + computing time (more sub-steps needed). If reported time series of soil moisture contain + large jumps, lowering CourantCrit should fix this + + + + + + + + ************************************************************** + VARIABLES RELATED TO OPTIONS + These all need to have some (real or bogus) value, + even for options that are not actually used! + ************************************************************** + + + + ************************************************************** + RESERVOIR OPTION + ************************************************************** + + + + + Sub time step used for reservoir simulation [s]. Within the model, + the smallest out of DtSecReservoirs and DtSec is used. + + + + + + Initial reservoir fill fraction [-] + Cold start: -9999 sets initial fill to normal storage limit + if you're not using the reservoir option, enter some bogus value + + + + + + + + ************************************************************** + LAKE OPTION + ************************************************************** + + + + + Cold start: -9999 + Estimate of average net inflow into lake (=inflow - evaporation) [cu m / s] + Used to calculated steady-state lake level in case LakeInitialLevelValue + is set to -9999 + + + + + + + + ************************************************************** + POLDER OPTION + ************************************************************** + + + + + Weir constant [-] (Do not change!) + + + + + + Initial water level in polder [m] + + + + + + + + ************************************************************** + DYNAMIC WAVE OPTION + ************************************************************** + + + + + Critical Courant number for dynamic wave + value between 0-1 (smaller values result in greater numerical accuracy, + but also increase computational time) + + + + + + Constant head [m] at most downstream pixel (relative to altitude + at most downstream pixel) + + + + + + + + ************************************************************** + MUSKINGUM-CUNGE-TODINI OPTION + ************************************************************** + + + + + test_chanmct_all + test_chanmct_2 + chanmct_single + Boolean map with value 1 at channel pixels where MCT is + used, and 0 at all other pixels + + + + + + Maximum channel gradient for channels using MCT routing [-] (for MCT wave: slope cannot be 0) + Default: 0.001 + + + + + + + + ************************************************************** + INFLOW HYDROGRAPH (OPTIONAL) + ************************************************************** + + + + + OPTIONAL: nominal map with locations of (measured) + inflow hydrographs [cu m / s] + + + + + + OPTIONAL: observed or simulated input hydrographs as + time series [cu m / s] + Note that identifiers in time series correspond to + InflowPoints map (also optional) + + + + + + + + ************************************************************** + PF REPORTING OPTION + ************************************************************** + + + + + Maximum capillary head [cm]. This value is used if Theta equals residual soil + moisture content (value of HeadMax is arbitrary). Only needed for pF computation, + otherwise doesn't influence model results at all) + + + + + PF MAPS + + + + + Reported pF soil layer 1a, other fraction + + + + + + Reported pF soil layer 1b, other fraction + + + + + + Reported pF soil layer 2, other fraction + + + + + + Reported pF soil layer 1a, forest fraction + + + + + + Reported pF soil layer 1b, forest fraction + + + + + + Reported pF layer 2, forest fraction + + + + + + Reported pF soil layer 1a, irrigation fraction + + + + + + Reported pF soil layer 1b, irrigation fraction + + + + + + Reported pF soil layer 2, irrigation fraction + + + + + + + + + + + + + + + + + This is necessary when using projected coordinates (x,y) + + + + + + + + + + + Clone map + + + + + + netcdf template used to copy metadata information for writing netcdf + + + + + + latitude map to be used for snow/ice modelling + + + + + + + + ************************************************************** + TIMESTEP RELATED PARAMETERS + ************************************************************** + + + + + Calendar convention + + + + + + Calendar day is back! + Calendar day number of 1st day in model run + e.g. 1st of January: 1; 1st of June 151 (or 152 in leap year) + Needed to read out LAI tables correctly + + + + + + timestep [seconds] (60*60*24) + + + + + + Sub time step used for kinematic wave channel routing [seconds] + Within the model,the smallest out of DtSecChannel and DtSec is used + + + + + + Number of first time step in simulation + + + + + + Number of last time step in simulation + + + + + + Number of days used for internal spin-up (fluxes computations during prerun) + + + + + + + + ************************************************************** + PARAMETERS RELATED TO EVAPO(TRANSPI)RATION AND Interception + ************************************************************** + + Suggested parameterisation strategy: + + - leave all these parameters at their default values. + in some very special cases CalEvaporation may be set to some + value other than one + + + + + + Multiplier applied to potential precipitation rates [-] + + + + + + Multiplier applied to potential evapo(transpi)ration rates [-] + + + + + + Time constant for water in interception store [days] + + + + + + Average extinction coefficient [-] for the diffuse radiation flux + varies with crop from 0.4 to 1.1 (Goudriaan (1977)) + + + + + + Critical amount of available water (expressed in [mm/day]!), above which 'Days Since Last Rain' parameter is + set to 1 + + + + + + maximum depression storage for water on impervious surface + which is not immediatly causing surface runoff [mm] + + + + + + + + ************************************************************** + SNOW AND FROST RELATED PARAMETERS + ************************************************************** + + Suggested parameterisation strategy: + + - estimate SnowFactor from prior data (if available), otherwise use 1 + - use SnowMeltCoef as a calibration constant + - leave all other parameters at default + + + + + + Multiplier applied to precipitation that falls as snow + + + + + + Snowmelt coefficient [mm C-1 day-1)] + See also Martinec et al., 1998. + + + + + + range [mm C-1 day-1] of the seasonal variation + SnowMeltCoef is the average value + + + + + + Average temperature [deg C] at which snow melts + + + + + + Average temperature [deg C] below which precipitation is snow + + + + + + Temperature lapse rate with altitude [deg C / m] + + + + + + Daily decay coefficient [day-1], (Handbook of Hydrology, p. 7.28) + + + + + + Snow depth reduction coefficient, [cm-1], (HH, p. 7.28) + + + + + + Snow water equivalent, (based on snow density of 450 kg/m3) (e.g. Tarboton and Luce, 1996) + + + + + + Degree Days Frost Threshold (stops infiltration, percolation and capillary rise) + Molnau and Bissel found a value 56-85 for NW USA. + + + + + + + + ************************************************************** + INFILTRATION PARAMETERS + ************************************************************** + + Suggested parameterisation strategy: + + - use b_Xinanjiang and PowerPrefFlow as calibration constants + + + + + + Power in Xinanjiang distribution function [-] + + + + + + Power that controls increase of proportion of preferential + flow with increased soil moisture storage [-] + + + + + + + + ************************************************************** + GROUNDWATER RELATED PARAMETERS + ************************************************************** + + Suggested parameterisation strategy: + + - leave GwLossFraction at 0 unless prior information show groundwater loss + is important + - use all other parameters as calibration constants + + + + + + Time constant for water in upper zone [days] + + + + + + Time constant for water in lower zone [days] + This is the average time a water 'particle' remains in the reservoir + if we had a stationary system (average inflow=average outflow) + + + + + + Maximum rate of percolation going from the Upper to the Lower + response box [mm/day] + + + + + + Maximum percolation rate from the lower groundwater zone [mm/days]. GWLoss + it’s lost beyond the catchment boundaries or to deep groundwater systems. + A value of 0 (closed lower boundary) is recommended as a starting value. + + + + + + + + ************************************************************** + EVAPORATION FROM OPEN WATER + ************************************************************** + + + + + water use daily maps with a (in this case negative) volume of water [cu m/s] + + + + + + table with days for each water use maps + 1st column: range of days; 2nd column: suffix of wuse map + + + + + + Percentage of maximum extend of water + + + + + + Mask with Lakes from GLWD database + + + + + + maximum number of loops for calculating evaporation + = distance water is taken to satisfy the need of evaporation from open water + + + + + + Reported evaporation from open water [mm] + + + + + + Time series of upstream water evaporation from open water at gauging stations + + + + + + + + ************************************************************** + TRANSMISSION LOSS PARAMETERS + ************************************************************** + + Suggested parameterisation strategy: + + - Use TransSub as calibration constant leave all other parameters at default values + + + + + + PBchange + Transmission loss function parameter + + + + + + PBchange + Transmission loss function parameter + + + + + + PBchange + downstream area taking into account for transmission loss + + + + + + upstream area + + + + + + + + ************************************************************** + ROUTING PARAMETERS + ************************************************************** + + Suggested parameterisation strategy: + + - Use CalChanMan as calibration constant to fine-tune timing of + channel routing, leave all other parameters at default values + + + + + + Multiplier applied to Channel Manning's n + + + + + + Multiplier applied to Channel Manning's n for second routing line + + + + + + Multiplier applied to Channel Manning's n for MCT routing + + + + + + Multiplier applied to average Q to split into a second line of routing + + + + + + Multiplier applied to ChanBottomWidth + + + + + + Multiplier applied to ChanDepthThreshold + + + + + + Multiplier applied to ChanSdXdY + + + + + + kinematic wave parameter: 0.6 is for broad sheet flow + + + + + + Reference depth of overland flow [mm], used to compute + overland flow Alpha for kin. wave + + + + + + Percentage [-] used to compute the TotalCrossSectionAreaHalfBankFull in the initialisation of the + total cross-sectional area + default: 0.5 + + + + + + Minimum slope gradient (for kin. wave: slope cannot be 0) + + + + + + Minimum channel gradient (for kin. wave: slope cannot be 0) + + + + + + + + ************************************************************** + PARAMETERS RELATED TO NUMERICS + ************************************************************** + + Important: do not change, default value of 0.4 generally combines + sufficient numerical accuracy within a limited number of sub-steps + + + + + + Minimum value for Courant condition in soil moisture routine. Always less than or equal to 1. + Small values result in improved numerical accuracy, at the expense of increased + computing time (more sub-steps needed). If reported time series of soil moisture contain + large jumps, lowering CourantCrit should fix this + + + + + + + + ************************************************************** + INITIAL CONDITIONS FOR THE WATER BALANCE MODEL + (can be either maps or single values) + ************************************************************** + + + + + PRERUNDIR/lzavin + Reported map of average percolation rate from upper to + lower groundwater zone (reported for end of simulation) [mm/day] + + + + + + PRERUNDIR/avgdis + CHANNEL split routing in two lines + Average discharge map [m3/s] + + + + + + Reported infiltration from the soil layer 2 to soil layer 3, other land cover fraction, average flux over the simulation period [mm] + + + + + + Reported infiltration from the soil layer 2 to soil layer 3, forest land cover fraction, average flux over the simulation period [mm] + + + + + + Reported infiltration from the soil layer 2 to soil layer 3, irrigated land cover fraction, average flux over the simulation period [mm] + + + + + + if init condition are stored as netCDF with different time steps + this variable indicates which time step to use + Either as date e.g. 1/1/2010 or as number e.g. 5 + + + + + + Initial overland flow storage [m3], direct runoff fraction + + + + + + Initial overland flow storage [m3], other fraction + + + + + + Initial overland flow storage [m3], forest fraction + + + + + + initial snow depth in snow zone A [mm] + + + + + + initial snow depth in snow zone B [mm] + + + + + + initial snow depth in snow zone C [mm] + + + + + + initial Frost Index value [degC/day] + + + + + + cumulative interception [mm] + + + + + + water in groundwater upper store [mm] + + + + + + days since last rainfall + + + + + + + + ************************************************************** + The following variables can also be initialized in the model + internally. if you want this to happen set them to bogus value + of -9999 + ************************************************************** + + + + + water in groundwater lower store [mm] + -9999: use steady-state storage + + + + + + initial cross-sectional area of flow in channel[m2] + -9999: use half bankfull + + + + + + initial soil moisture content [mm3/mm3] layer 1a (superficial layer) + -9999: use field capacity values + + + + + + initial soil moisture content [mm3/mm3] layer 1b (upper layer) + -9999: use field capacity values + + + + + + initial soil moisture content [mm3/mm3] layer 2 (lower layer) + -9999: use field capacity values + + + + + + initial channel cross-section area [m2] for 2nd routing channel + -9999: use 0 + + + + + + initial lateral inflow for 1st line of routing [m2/s] + -9999: use 0 + + + + + + Outflow discharge at the end of previous step (instantaneous) [m3/s] + -9999: use 0 + + + + + + Outflow average discharge on previous routing sub-step (average) [m3/s] + Cold start: -9999 sets initial value to 0 + + + + + + Courant number at previous step for MCT routing + Cold start: -9999 sets initial value to 1 + + + + + + Reynolds number at previous step for MCT routing + Cold start: -9999 sets initial value to 0 + + + + + + + + ************************************************************** + INITIAL CONDITIONS FOREST + (maps or single values) + ************************************************************** + + + + + cumulative interception [mm] + + + + + + water in groundwater upper store [mm] + + + + + + days since last rainfall for forest fraction + + + + + + initial soil moisture content [mm3/mm3] layer 1a (superficial layer) + -9999: use field capacity values + + + + + + initial soil moisture content [mm3/mm3] layer 1b (upper layer) + -9999: use field capacity values + + + + + + initial soil moisture content [mm3/mm3] layer 2 (lower layer) + -9999: use field capacity values + + + + + + cumulative depression storage [mm] + + + + + + + + ************************************************************** + INITIAL CONDITIONS IRRIGATION + (maps or single values) + ************************************************************** + + + + + cumulative interception [mm] + + + + + + water in groundwater upper store [mm] + + + + + + days since last rainfall for irrigation + + + + + + initial soil moisture content [mm3/mm3] layer 1a (superficial layer) + -9999: use field capacity values + + + + + + initial soil moisture content [mm3/mm3] layer 1b (upper layer) + -9999: use field capacity values + + + + + + initial soil moisture content [mm3/mm3] layer 2 (lower layer) + -9999: use field capacity values + + + + + + + + ************************************************************** + INPUT METEOROLOGICAL AND VEGETATION TIMESERIES AS MAPS + ************************************************************** + + + + + precipitation [mm/day] + + + + + + average daily temperature [C] + + + + + + daily reference evaporation (free water) [mm/day] + + + + + + daily reference evaporation (soil) [mm/day] + + + + + + daily reference evapotranspiration (crop) [mm/day] + + + + + + leaf area index [m2/m2] + + + + + + leaf area index [m2/m2] + + + + + + leaf area index [m2/m2] + + + + + + + + ************************************************************** + INPUT WATER USE MAPS AND PARAMETERS + ************************************************************** + + + + + Domestic water abstraction daily maps [mm] + + + + + + Livestock water abstraction daily maps [mm] + + + + + + Energy water abstraction daily maps [mm] + + + + + + Industry water abstraction daily maps [mm] + + + + + + Consumptive Use (1-Recycling ratio) for livestock water use (0-1) + + + + + + Consumptive Use (1-Recycling ratio) for industrial water use (0-1) + + + + + + # Consumptive Use (1-Recycling ratio) for energy water use (0-1) + # Source: Torcellini et al. (2003) "Consumptive Use for US Power Production" + # map advised by Neil Edwards, Energy Industry + # the UK and small French rivers the consumptive use varies between 1:2 and 1:3, so 0.33-0.50 + # For plants along big rivers like Rhine and Danube the 0.025 is ok + EnergyConsumptiveUseFraction=0.025 + + + + + + Consumptive Use (1-Recycling ratio) for domestic water use (0-1) + Source: EEA (2005) State of Environment + + + + + + Fraction of leakage of public water supply (0=no leakage, 1=100% leakage) + + + + + + The water that is lost from leakage (lost) (0-1) + + + + + + Leakage reduction fraction (e.g. 50% = 0.5 as compared to current Leakage) (baseline=0, maximum=1) + + + + + + Water savings fraction (e.g. 10% = 0.1 as compared to current Use (baseline=0, maximum=1) + scenwsav.map + + + + + + Fraction of water re-used in industry (e.g. 50% = 0.5 = half of the water is re-used, used twice (baseline=0, maximum=1 + scenruse.map + + + + + + + Field application irrigation efficiency max 1, ~0.90 drip irrigation, ~0.75 sprinkling + + + + + + conveyance efficiency, around 0.80 for average channel + + + + + + IrrigationType (value between 0 and 1) is used here to distinguish between additional adding water until fieldcapacity (value set to 1) or not (value set to 0) + + + + + + Factor to irrigation water demand + More than the transpiration is added e.g to prevent salinisation + + + + + + Annual amount (m3) of treated wastewater reused for irrigation + + + + + + Number of days over which the annual amount of treated wastewater for irrigation is used + + + + + + Irrigation crop coefficient + + + + + + Irrigation crop group number + + + + + + Population + + + + + + Population + + + + + + Land Use Mask + + + + + + Reported water use [cu m/s], depending on the availability of discharge + + + + + + Time series of upstream water use at gauging stations + + + + + + Number of sub-steps needed for water use + routine + + + + + + maximum number of loops for calculating the use of water + = distance water is taken for water consuption + + + + + + percentage of water which remains in the channel + e.g. 0.2 -> 20 percent of discharge is not taken out + + + + + + + + + + + + + ************************************************************** + RICE IRRIGATION + ************************************************************** + + + + + water amount in mm per day + 10 mm for 10 days (total 10cm water) + + + + + + FAO: percolation for heavy clay soils: PERC = 2 mm/day + + + + + + map with starting day of the year + + + + + + map with starting day of the year + + + + + + map with starting day of the year + + + + + + map with starting day of the year + + + + + + + + ************************************************************** + REPORTED OUTPUT MAPS + ************************************************************** + + + + + Reported discharge [cu m/s] (average over the model timesteps) (AvgDis) + + + + + + Reported Topsoil moisture [%] + + + + + + Reported Topsoil moisture [%] + + + + + + Reported discharge [cu m/s] at the end of a timestep + + + + + + Reported discharge [cu m/s] but cut by a discharge mask map + + + + + + Reported water level [m] % False by default + + + + + + + + STATE VARIABLES AT SELECTED TIME STEPS + ONLY FOR INITIALISATION OF SUCCEEDING RUNS + REPORTING TIME STEPS SET THROUGH "ReportSteps" OPTION + + + + + Reported volumetric soil moisture content for + soil layer 1a (superficial layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for + soil layer 1b (upper layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for + soil layer 2 (lower layer) [V/V] [mm3/mm3] + + + + + + Reported storage in upper response box [mm] + + + + + + Reported storage in lower response box [mm] + + + + + + Reported days since last rain + + + + + + Reported water depth + + + + + + Reported overland flow water volume [m3] for direct fraction on catchment surface + + + + + + Reported overland flow water volume [m3] for other fraction on catchment surface + + + + + + Reported overland flow water volume [m3] for forest fraction on catchment surface + + + + + + Reported chan cross-section area [m2] + + + + + + Reported snow cover in snow zone A [mm] + + + + + + Reported snow cover in snow zone B [mm] + + + + + + Reported snow cover in snow zone C [mm] + + + + + + Reported frost index [degC/day] + + + + + + Reported interception storage [mm] + + + + + + + Reported cross section area 2nd line of routing [m2] + + + + + + Reported channel side flow [m2/s] + + + + + + Reported istantaneous discharge at end of computation step [cu m/s] ChanQ + + + + + + Reported average discharge over last routing sub-step used to initialise lakes [cu m/s] ChanQAvgDt + + + + + + Courant number at previous step for MCT routing + + + + + + Reynolds number at previous step for MCT routing + + + + + + Reported days since last rain + + + + + + Reported interception storage [mm] + + + + + + Reported volumetric soil moisture content for + soil layer 1a (superficial layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for + soil layer 1b (upper layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for + soil layer 2 (lower layer) [V/V] [mm3/mm3] + + + + + + Reported storage in upper response box [mm] + + + + + + cumulative interception [mm] + + + + + + Reported days since last rain + + + + + + Reported interception storage [mm] + + + + + + Reported volumetric soil moisture content for + soil layer 1a (superficial layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for both + soil layer 1b (upper layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for both + soil layer 2 (lowerupper layer) [V/V] [mm3/mm3] + + + + + + Reported storage in upper response box [mm] + + + + + + Reported transpiration maps, other fraction [mm] + + + + + + Reported transpiration maps, forest fraction [mm] + + + + + + Reported transpiration maps, irrigated fraction [mm] + + + + + + Reported transpiration maps, weighted sum over the fractions of each pixel [mm] + + + + + + + + "END" MAPS, AKA REPORTED OUTPUT MAPS CALLED "END" + Same as above, but always at last time step + Support for these "end" maps will most likely be + discontinued some time soon + + + + + Reported volumetric soil moisture content for + soil layer 1a (superficial layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for both + soil layer 1b (upper layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for both + soil layer 2 (lower layer) [V/V] [mm3/mm3] + + + + + + Reported storage in upper response box [mm] + + + + + + Reported storage in lower response box [mm] + + + + + + Reported days since last rain + + + + + + Reported water depth [m] + + + + + + Reported overland flow water volume [m3] for direct fraction on catchment surface + + + + + + Reported overland flow water volume [m3] for other fraction on catchment surface + + + + + + Reported overland flow water volume [m3] for forest fraction on catchment surface + + + + + + Reported chan cross-section area [m2] + + + + + + Reported snow cover in snow zone A [mm] + + + + + + Reported snow cover in snow zone B [mm] + + + + + + Reported snow cover in snow zone C [mm] + + + + + + Reported frost index [degC/day] + + + + + + Reported interception storage [mm] + + + + + + Reported lake level [m] + + + + + + Reported lake inflow at previous routing sub-step (ChanQ(t-1)) [m3/s] + -9999 sets initial value equal to PrevDischarge (ChanQ(t)) + + + + + + Reported lake outflow at previous routing sub-step (ChanQ(t-1)) [m3/s] + -9999 sets initial value + + + + + + Reported lake storage [m3] + + + + + + + Reported reservoir filling [-] + + + + + + Reported cross section area 2nd line of rounting [m2] + + + + + + Reported channel side flow [m2/s] + + + + + + Reported istantaneous discharge at end of computation step [cu m/s] ChanQ + + + + + + Reported average discharge over last routing sub-step used to initialise lakes [cu m/s] ChanQAvgDt + + + + + + Reported average discharge [cu m/s] (average over the model timesteps) (AvgDis) + + + + + + Courant number at previous step for MCT routing + + + + + + Reynolds number at previous step for MCT routing + + + + + + Reported days since last rain + + + + + + Reported interception storage [mm] + + + + + + Reported volumetric soil moisture content for + soil layer 1a (superficial layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for both + soil layer 1b (upper layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for both + soil layer 2 (lower layer) [V/V] [mm3/mm3] + + + + + + Reported storage in upper response box [mm] + + + + + + cumulative interception [mm] + + + + + + + Reported days since last rain + + + + + + Reported interception storage [mm] + + + + + + Reported volumetric soil moisture content for + soil layer 1a (superficial layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for both + soil layer 1b (upper layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for both + soil layer 1c (lower layer) [V/V] [mm3/mm3] + + + + + + Reported storage in upper response box [mm] + + + + + + + + INDIVIDUAL DRIVING METEOROLOGICAL VARIABLES (AT EVERY TIME STEP) + ONLY IF REPORTING OF EACH RESPECTIVE VARIABLE IS + SWITCHED ON (DEFAULT: ALL SWITCHED OFF) + Note reporting is done as a quantity per time step, not as + an intensity (as in meteo input!) + + + + + Precipitation [mm per time step] + + + + + + Average DAILY temperature [degrees C] + + + + + + Potential reference evapotranspiration [mm per time step] + + + + + + Potential evaporation from bare soil surface [mm per time step] + + + + + + Potential evaporation from open water surface [mm per time step] + + + + + + + + INDIVIDUAL STATE VARIABLES (AT EVERY TIME STEP) + ONLY IF REPORTING OF EACH RESPECTIVE VARIABLE IS + SWITCHED ON (DEFAULT: ALL SWITCHED OFF) + + + + + Reported volumetric soil moisture content for + soil layer 1a (superficial layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for + soil layer 1b (upper layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for + soil layer 2 (lower layer) [V/V] [mm3/mm3] + + + + + + Reported storage in upper response box [mm] + + + + + + Reported storage in lower response box [mm] + + + + + + Reported storage in lower response box [mm] + + + + + + Reported storage in lower response box [mm] + + + + + + Reported storage in lower response box [mm] + + + + + + Reported storage in lower response box [mm] + + + + + + Reported total water storage [mm] + + + + + + Reported days since last rain + + + + + + Reported water depth [m] + + + + + + Reported overland flow water volume [m3] for direct runoff fraction on catchment surfac + + + + + + Reported overland flow water volume [m3] for other fraction on catchment surfac + + + + + + Reported overland flow water volume [m3] for forest fraction on catchment surfac + + + + + + Reported channel cross-section area [m2] + + + + + + Reported snow cover [mm] + + + + + + Reported frost index [degC/day] + + + + + + Reported interception storage, other fraction [mm] + + + + + + + Reported days since last rain + + + + + + Reported interception storage, forest fraction [mm] + + + + + + Reported interception storage, irrigation fraction [mm] + + + + + + Reported volumetric soil moisture content for + soil layer 1a (superficial layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for both + soil layer 1b (upper layer) [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for both + soil layer 2 (lower layer) [V/V] [mm3/mm3] + + + + + + Reported storage in upper response box [mm] + + + + + + Reported interception (depression) storage, direct runoff (impervious) fraction [mm] + + + + + + + + INDIVIDUAL RATE VARIABLES (AT EVERY TIME STEP) + ONLY IF REPORTING OF EACH RESPECTIVE VARIABLE IS + SWITCHED ON (DEFAULT: ALL SWITCHED OFF) + + + + + Reported rain (excluding snow)[mm] + + + + + + Reported snow (excluding rain)[mm] + + + + + + Reported snowmelt [mm] + + + + + + Reported interception [mm] + + + + + + Reported transpiration [mm] + + + + + + Reported soil evaporation [mm] + + + + + + Reported evaporation of intercepted water [mm] + + + + + + Reported actual evapotranspiration [mm] + + + + + + Reported leaf drainage [mm] + + + + + + Reported infiltration [mm] + + + + + + Reported preferential flow [mm] + + + + + + Reported percolation from soil layer 1a to soil layer 1b, other fraction [mm] + + + + + + Reported percolation from soil layer 1a to soil layer 1b, forest fraction [mm] + + + + + + Reported percolation from soil layer 1a to soil layer 1b, irrigation fraction [mm] + + + + + + Reported percolation from soil layer 1b to soil layer 2, other fraction [mm] + + + + + + Reported percolation from soil layer 1b to soil layer 2, forest fraction [mm] + + + + + + Reported percolation from soil layer 1b to soil layer 2, irrigation fraction [mm] + + + + + + Reported seepage to groundwater(from soil layer 2 to groundwater), other fraction [mm] + + + + + + Reported seepage to groundwater(from soil layer 2 to groundwater), forest fraction [mm] + + + + + + Reported seepage to groundwater(from soil layer 2 to groundwater), irrigation fraction [mm] + + + + + + Reported seepage to groundwater(from soil layer 2 to groundwater), weighted sum over the fraction of each pixel [mm] + + + + + + Reported available groundwater LZ+ GWLoss [mm] + + + + + + Reported surface runoff [mm] + + + + + + Reported upper zone outflow [mm] + + + + + + Reported lower zone outflow [mm] + + + + + + Reported fast runoff = surface + UZ [mm] + + + + + + Reported GWloss [mm] + + + + + + Reported total runoff [mm] + + + + + + Reported total runoff that enters the channel: groundwater + surface runoff [mm] + + + + + + Reported Direct Runoff [mm] + + + + + + Reported FlowVelocityMSecMaps [m/s] + + + + + + Reported TravelDistance [m] + + + + + + Reported percolation from upper to lower groundwater zone [mm] + + + + + + + Reported evaporation of intercepted water [mm] + + + + + + Reported soil evaporation [mm] + + + + + + Reported leaf drainage Forest[mm] + + + + + + Reported interception forest [mm] + + + + + + Reported infiltration [mm] + + + + + + Reported transpiration forest [mm] + + + + + + Reported preferential flow [mm] + + + + + + Reported percolation from 1st to 2nd soil layer [mm] + + + + + + Reported seepage to groundwater[mm] + + + + + + Reported upper zone outflow [mm] + + + + + + Reported upper zone outflow [mm] + + + + + + Reported percolation from upper to lower zone [mm] + + + + + + Reported loss from lower zone [mm] + + + + + + Reported loss from lower zone [mm] + + + + + + Reported volumetric soil moisture content for + soil layer 1a [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for both + soil layer 1b [V/V] [mm3/mm3] + + + + + + Reported volumetric soil moisture content for both + soil layer 2 [V/V] [mm3/mm3] + + + + + + Reported storage in upper response box [mm] + + + + + + + + MISCELLANEOUS OUTPUT MAPS AND TIME SERIES + + + + + Time series of average percolation rate from upper to + lower groundwater zone (reported at sites) [mm/day] + + + + + + Time series of average percolation rate from upper to + lower groundwater zone (average for upstream area of each gauge) [mm/day] + + + + + + Reported number of days in simulation with soil moisture stress [days] + + + + + + Reported number of days in simulation with soil moisture stress for forest fraction [days] + + + + + + Reported soil transpiration reduction factor [-] for other landuse + values below 1 indicate soil moisture stress + + + + + + Reported soil transpiration reduction factor [-] + values below 1 indicate soil moisture stress + + + + + + + + ************************************************************** + REPORTED OUTPUT TIME SERIES + ************************************************************** + + + + + Reported average discharge over the model time step [cu m/s] + + + + + + Reported instantaneous discharge at the end of routing sub-step [cu m/s] + + + + + + Reported water level [m] + + + + + + + OUTPUT AT SITES: STATE VARIABLES + + + + + Water depth on soil surface [mm] + + + + + + Depth of snow cover on soil surface [mm] + + + + + + Water stored as interception [mm] + + + + + + Soil moisture layer 1a [cu mm / cu mm] + + + + + + Soil moisture layer 1b [cu mm / cu mm] + + + + + + Soil moisture layer 2 [cu mm / cu mm] + + + + + + Soil moisture layer 1a [cu mm / cu mm] + + + + + + Soil moisture layer 1b [cu mm / cu mm] + + + + + + Soil moisture layer 2 [cu mm / cu mm] + + + + + + Storage in upper groundwater zone [mm] + + + + + + Storage in lower groundwater zone [mm] + + + + + + Days since last rain [days] + + + + + + Frost index [degC/day] + + + + + + Days since last rain [days] + + + + + + + + OUTPUT AT SITES: RATE VARIABLES + + + + + Rain (excluding snow) [mm] + + + + + + Snow (excluding rain) [mm] + + + + + + Reported snowmelt [mm] + + + + + + Reported interception [mm] + + + + + + Reported transpiration [mm] + + + + + + Reported soil evaporation [mm] + + + + + + Reported evaporation from interception storage [mm] + + + + + + Reported leaf drainage [mm] + + + + + + Reported infiltration [mm] + + + + + + Reported preferential flow [mm] + + + + + + Reported percolation from 1st to 2nd soil layer [mm] + + + + + + Reported seepage to groundwater[mm] + + + + + + Reported surface runoff [mm] + + + + + + Reported upper zone outflow [mm] + + + + + + Reported lower zone outflow [mm] + + + + + + Reported total runoff [mm] + + + + + + Reported percolation from upper to lower zone [mm] + + + + + + Reported loss from lower zone [mm] + + + + + + + + + + + + + + + + + AVERAGE VALUES OF METEOROLOGICAL FORCING VARIABLES + UPSTREAM OF GAUGES + (only if repMeteoUpsGauges option is activated) + + + + + Precipitation [mm/time step] + + + + + + Average temperature [deg C] + + + + + + Reference evapotranspiration [mm/time step] + + + + + + Potential soil evaporation [mm/time step] + + + + + + Potential open water evaporation [mm/time step] + + + + + + ESActPixel+self.var.TaPixel+self.var.TaInterceptionAll+self.var.EvaAddM3*self.var.M3toMM + + + + + + + + AVERAGE VALUES OF MODEL STATE VARIABLES + UPSTREAM OF GAUGES + (only if repStateUpsGauges option is activated) + + + + + Water depth on soil surface [mm] + + + + + + Depth of snow cover on soil surface [mm] + + + + + + Water stored as interception [mm] + + + + + + Soil moisture upper layer [mm3/mm3] + + + + + + Soil moisture lower layer [mm3/mm3] + + + + + + + + + + Soil moisture lower layer [mm3/mm3] + + + + + + Storage in upper groundwater zone [mm] + + + + + + Storage in lower groundwater zone [mm] + + + + + + Days since last rain [days] + + + + + + Frost index [degC/day] + + + + + + Days since last rain [days] + + + + + + + + AVERAGE VALUES OF MODEL RATE VARIABLES + UPSTREAM OF GAUGES + (only if repRateUpsGauges option is activated) + + + + + Rain (excluding snow) [mm] + + + + + + Snow (excluding rain) [mm] + + + + + + Snow melt [mm] + + + + + + Interception [mm] + + + + + + Actual transpiration [mm] + + + + + + Actual evaporation [mm] + + + + + + Evaporation from interception storage [mm] + + + + + + Leaf drainage [mm] + + + + + + Infiltration [mm] + + + + + + Preferential flow [mm] + + + + + + Percolation upper to lower soil layer [mm] + + + + + + Seepage from lower soil layer to groundwater [mm] + + + + + + Surface runoff [mm] + + + + + + Outflow from upper groundwater zone (to channel) [mm] + + + + + + Outflow from lower groundwater zone (to channel) [mm] + + + + + + Total runoff [mm] + + + + + + Reported percolation from upper to lower groundwater zone [mm] + + + + + + Reported loss from lower zone [mm] + + + + + + + + NUMERICS + + + + + Reported mass balance error at outlet [cu m] + + + + + + Reported mass balance error at outlet (as mm water slice) + + + + + + Reported mass balance error due to the split routing module, for each catchment [m3] + + + + + + Reported discharge error at the outlet as a consequence of the mass balance error within the split routing module, for each catchment [m3/s] + + + + + + Reported ratio between the mass balance error and the water volume storage, for each catchment [m3/m3] + + + + + + Average value of the sum of the fractions within a catchment: this value must be 1.0 in order to avoid mass balace errors! [-] + + + + + + Number of cells with Theta lower than + residual soil moisture content + (should ALWAYS be zero, if not something is + seriously wrong!!!) + TEST ONLY!! REMOVE OR HIDE IN FINAL VERSION!! + + + + + + Number of cells with Theta lower than + residual soil moisture content + (should ALWAYS be zero, if not something is + seriously wrong!!!) + TEST ONLY!! REMOVE OR HIDE IN FINAL VERSION!! + + + + + + Number of sub-steps needed for soil moisture + routine + + + + + + + + ************************************************************** + BASE INPUT MAPS AND TABLES + ************************************************************** + + + + + ************************************************************** + TOPOGRAPHY MAPS + ************************************************************** + + + + + $(PathMaps)/ldd.map + local drain direction map (1-9) + + + + + + slope gradient [-] (0.50 -> tangent=0.5, angle=26.5 degrees) + + + + + + Elevation standard deviation [m], i.e. altitude difference elevation within pixel. + Used for sub-pixel modelling of snow accumulation + and melt + + + + + + outlets.map + Nominal map with gauge locations (i.e cells for which simulated discharge + is written to file(1,2,3 etc) + + + + + + map with monitoring sites (1,2,3 etc) + + + + + + optional map with pixel length [m], only needed in case map attributes + are not in [m] (e.g. lat / lon systems) + + + + + + optional map with pixel area [m2], only needed in case map attributes + are not in [m] (e.g. lat / lon systems) + + + + + + + + ************************************************************** + SOIL PARAMETERS + ************************************************************** + + Suggested parameterisation strategy: + + - use b_Xinanjiang and PowerPrefFlow as calibration constants + + + + + + Soil depth for 1st layer: 1a (superficial layer) + Minimum Soil Depth [mm] for superficial soil layer + For Europe it is 50 mm + For Africa it is 200 mm + + + + + + Soil depth for 2nd layer: 1b (upper layer) + Minimum Soil Depth [mm] for second soil layer + + + + + + Soil depth for 2nd layer: 2 (lower layer) + Minimum Soil Depth [mm] for second soil layer + + + + + + Soil depth for 1st layer: 1a + Minimum Soil Depth [mm] for upper soil layer + For Europe it is 50 mm + For Africa it is 200 mm + + + + + + Soil depth for 2nd layer: 1b + Minimum Soil Depth [mm] for lower soil layer + + + + + + Soil depth for 2nd layer: 2 + Minimum Soil Depth [mm] for lower soil layer 300 + + + + + + + + ************************************************************** + LAND USE RELATED MAPS AND TABLES + ************************************************************** + + + + + $(PathMapsLanduse)/fracsealed + urban area (0-1) + + + + + + stack of Direct Runoff fraction maps (0-1) + + + + + + $(PathMapsLanduse)/fracforest + forest fraction of a pixel (0-1) + + + + + + $(PathMapsLandUseChange)/ + stack of forest fraction maps (0-1) + + + + + + $(PathMapsLanduse)/fracwater + forest fraction of a pixel (0-1) + + + + + + $(PathMapsLandUseChange)/ + stack of water fraction maps (0-1) + + + + + + $(PathMapsLanduse)/fracother + forest fraction of a pixel (0-1) + + + + + + $(PathMapsLandUseChange)/ + stack of other fraction maps (0-1) + + + + + + $(PathMapsLanduse)/fracirrigated + irrigated area fraction of a pixel (0-1) + + + + + + $(PathMapsLandUseChange)/ + stack of Irrigation fraction maps (0-1) + + + + + + $(PathMapsLanduse)/fracDrained.map + drained fraction from irrigated area (0-1) + + + + + + rice fraction of a pixel (0-1) + + + + + + stack of rice fraction maps (0-1) + + + + + + groundwater used fraction of a pixel (0-1) + + + + + + NonConventionalWaterUsed (0-1) + + + + + + lake and reservoir water used, fraction of a pixel (0-1) + + + + + + $(PathMaps)/eflow.map + EFlowThreshold is map with m3/s discharge, e.g. the 10th percentile discharge of the baseline run + + + + + + table with crop coefficient for each land use; values ranging from 0.75 to 1.25; + source: Supit, p.83 CFET + + + + + + table with crop group number; table 6.1 and 6.2 in WOFOST 6.0, Supit, 1994: p. 86 + + + + + + $(PathMapsTables)/manngs_2000_250m.map + table with Manning's roughness [m^(1/3) s^(-1)] for each CORINE landcover class + + + + + + table with crop coefficient for each land use; values ranging from 0.75 to 1.25; + source: Supit, p.83 CFET + + + + + + table with crop group number; table 6.1 and 6.2 in WOFOST 6.0, Supit, 1994: p. 86 + + + + + + $(PathMapsTables)/manngs_2000_250m.map + table with Manning's roughness [m^(1/3) s^(-1)] for each CORINE landcover class + + + + + + + + ************************************************************** + Variable Channel NoSubStepChannel + ************************************************************** + + + + + UpArea do be included in max. celerity + + + + + + variable Number of sub steps for the kinematic wave routing + + + + + ************************************************************** + CHANNEL MAPS + ************************************************************** + + + + + Boolean map with value 1 at channel pixels and 0 at + all other pixels + IMPORTANT: IF NON-CHANNEL PIXELS HAVE MISSING VALUES + THEN THIS MAY RESULT IN INCORRECT RESULTS + + + + + + Channel gradient (fraction, dy/dx) + + + + + + Channel Manning's n [m^(1/3) s^(-1)] + + + + + + Channel length [m] + + + + + + Channel bottom width [m] + + + + + + Channel side slope, expressed as gradient + !! expressed as dx/dy !!! (NOT dy/dx, which would perhaps be more logical) + + + + + + Floodplain Width [m] + + + + + + Bankfull channel depth [m] + + + + + + + + ************************************************************** + TABLES WITH TOPSOIL SOIL PHYSICAL PARAMETERS (HYPRES) + Each parameter is defined for upper (1a and 1b) and + lower (2) soil layers + ************************************************************** + + + + + Soil moisture content at saturation [V/V] [mm3/mm3] for soil layer 1a (superficial soil layer) + + + + + + Soil moisture content at saturation [V/V] [mm3/mm3] for soil layer 1b (upper soil layer) + + + + + + Soil moisture content at saturation [V/V] [mm3/mm3] for soil layer 2 (lower soil layer) + + + + + + Residual soil moisture content [V/V] [mm3/mm3] for soil layer 1a (superficial soil layer) + + + + + + Residual soil moisture content [V/V] [mm3/mm3] for soil layer 1b (upper soil layer) + + + + + + Residual soil moisture content [V/V] [mm3/mm3] for soil layer 2 (lower soil layer) + + + + + + Pore-size index (Van Genuchten m and n are calculated from this) + Lambda is acually 1-n [-] + + + + + + Pore-size index (Van Genuchten m and n are calculated from this) + Lambda is acually 1-n [-] + + + + + + Pore-size index (Van Genuchten m and n are calculated from this) + Lambda is acually 1-n [-] + + + + + + Van Genuchten parameter Alpha [1/cm] for soil layer 1a (superficial soil layer) + + + + + + Van Genuchten parameter Alpha [1/cm] for soil layer 1b (upper soil layer) + + + + + + Van Genuchten parameter Alpha [1/cm] for soil layer 2 (lower soil layer) + + + + + + Saturated conductivity [mm/day] for soil layer 1a (superficial soil layer) + + + + + + Saturated conductivity [mm/day] for soil layer 1b (upper soil layer) + + + + + + Saturated conductivity [mm/day] for soil layer 2 (lower soil layer) + + + + + + + + ************************************************************** + TABLES WITH TOPSOIL SOIL PHYSICAL PARAMETERS (HYPRES) for Forest + Each parameter is defined for 1a and 1b + Normal parameter is taken for the lower soil layer + ************************************************************** + + + + + Soil moisture content at saturation [V/V] [mm3/mm3] for soil layer 1a (superficial soil layer) + + + + + + Soil moisture content at saturation [V/V] [mm3/mm3] + + + + + + Residual soil moisture content [V/V] [mm3/mm3] for soil layer 1a (superficial soil layer) + + + + + + Residual soil moisture content [V/V] [mm3/mm3] for soil layer 1b (upper soil layer) + + + + + + Pore-size index (Van Genuchten m and n are calculated from this) for soil layer 1a (superficial soil layer) + Lambda is acually 1-n [-] for soil layer 1b (upper soil layer) + + + + + + Pore-size index (Van Genuchten m and n are calculated from this) + Lambda is acually 1-n [-] for soil layer 1b (upper soil layer) + + + + + + Van Genuchten parameter Alpha [1/cm] for soil layer 1a (superficial soil layer) + + + + + + Van Genuchten parameter Alpha [1/cm] for soil layer 1b (upper soil layer) + + + + + + Saturated conductivity [mm/day] for soil layer 1a (superficial soil layer) + + + + + + Saturated conductivity [mm/day] for soil layer 1b (upper soil layer) + + + + + + + + ************************************************************** + RESERVOIRS (if used ) + Input maps + ************************************************************** + + + + + Sub time step used for reservoir simulation [s]. Within the model, + the smallest out of DtSecReservoirs and DtSec is used. + + + + + + Map with location of reservoirs (number) + + + + + + Initial reservoir storage (fraction) + + + + + + Input tables + + + + + Total reservoir storage capacity + Units: m³ + + + + + + Reservoir inflow associated with the 100-year return period. + It is modified by a calibration parameter (`ReservoirFloodOutflowFactor`) to + define the inflow above which the reservoir switches to flood control mode + Units: m³/s + + + + + + NReservoir average inflow used to define the normal reservoir release + Units: m³/s + + + + + + Minimum reservoir release: + Units: m³/s + + + + + Output time series + + + + + name of output TSS file with Reservoir Inflow + + + + + + name of output TSS file with Reservoir Outflow + + + + + + name of output TSS file with Reservoir Filling + + + + + + name of output TSS file with Reservoir storage [m3] + + + + + + + name of output map(s) with Reservoir Filling + + + + + + Fraction of the total reservoir storage above which the reservoirs enters + the flood control zone. + + + + + + Factor of the 100-year return inflow that defines a flood event, i.e., the + reservoir routine switches to flood control mode. + + + + + + + + ************************************************************** + LAKES (if used ) + Input maps + ************************************************************** + + + + + Map with location of lakes + + + + + + Initial lake level [m] + -9999 sets initial value to steady-state level + + + + + + Lake inflow at previous routing sub-step (ChanQ(t-1)) [m3/s] + -9999 sets initial value equal to PrevDischarge (ChanQ(t)) + + + + + + Lake outflow at previous routing sub-step (ChanQ(t-1)) [m3/s] + -9999 sets initial value + + + + + + Estimate of average net inflow into lake (=inflow - evaporation) [m3 / s] + Used to calculated steady-state lake level in case LakeInitialLevelValue + is set to -9999 + + + + + Input tables + + + + + Lake surface area [m2] + + + + + + Lake parameter A [m/s] + + + + + + Multiplier applied to the lake parameter A + + + + + Output time series + + + + + Output timeseries file with lake inflow [m3 /s] + + + + + + Output timeseries file with lake outflow [m3 /s] + + + + + + Output timeseries file with lake level [m] + + + + + + Output map(s) with lake level [m] + + + + + + Output map with lake inflow at previous routing sub-step (ChanQ(t-1)) [m3/s] + -9999 sets initial value equal to PrevDischarge (ChanQ(t)) + + + + + + Output map with lake outflow at previous routing sub-step (ChanQ(t-1)) [m3/s] + -9999 sets initial value + + + + + + + + ************************************************************** + POLDERS(if used) + ************************************************************** + + + + + + Weir constant (fixed) [-] + + + + + + Map with polder locations + + + + + + Initial water level in polders [m] + + + + + + Polder maximum storage capacity [cu m] + + + + + + Area of polder [sq m] + + + + + + Width of polder outlet/inlet [m] + + + + + + Polder bottom level, measured from channel bottom [m] + + + + + + Time step at which polder opens in case of regulated polder (use bogus value of -9999 in table in case of unregulated polder) + + + + + + Time step at which water stored in polder is released again(use bogus value of -9999 in table in case of unregulated polder) + + + + + + name of output TSS file with polder flux [cu m / s]. Positive for flow from channel to polder, negative for polder to channel + + + + + + name of output TSS file with polder level [m] + + + + + + name of output map(s) with polder level + + + + + + + + ************************************************************** + INFLOW HYDROGRAPH (if used) + ************************************************************** + + + + + OPTIONAL: nominal map with locations of (measured) + inflow hydrographs + + + + + + Observed or simulated input hydrographs as + time series [m3 / s] + Note that identifiers in time series correspond to + InflowPoints map (also optional) + + + + + + + + ************************************************************** + DYNAMIC WAVE(if used) + ************************************************************** + + + + + Critical Courant number for dynamic wave + value between 0-1 (smaller values result in greater numerical accuracy, + but also increase computational time) + + + + + + Constant head [m] at most downstream pixel (relative to altitude + at most downstream pixel) + + + + + + Boolean map with value 1 at channel pixels where dynamic wave is + used, and 0 at all other pixels + + + + + + Channel bottom level [m] + + + + + + Nominal map with channel cross section IDs + + + + + + Table with cross section parameters (H,A,P) + + + + + + + + ************************************************************** + MUSKINGUM-CUNGE-TODINI OPTION + ************************************************************** + + + + + Boolean map with value 1 at channel pixels where MCT is + used, and 0 at all other pixels + + + + + + Maximum channel gradient for channels using MCT routing [-] (for MCT wave: slope cannot be >0.001) + + + + + + + + ************************************************************** + PF REPORTING (if used) + ************************************************************** + + + + PF PARAMETERS + + + + + Maximum capillary head [cm]. This value is used if Theta equals residual soil + moisture content (value of HeadMax is arbitrary). Only needed for pF computation, + otherwise doesn't influence model results at all) + + + + + PF MAPS + + + + + Reported pF upper soil layer [-] + + + + + + Reported pF lower soil layer [-] + + + + + + Reported pF lower soil layer [-] + + + + + + Reported pF upper soil layer [-] + + + + + + Reported pF lower soil layer [-] + + + + + PF TIMESERIES, VALUES AT SITES + + + + + Reported pF upper soil layer [-] + + + + + + Reported pF lower soil layer [-] + + + + + + + Reported pF upper soil layer [-] + + + + + + Reported pF lower soil layer [-] + + + + + PF TIMESERIES, AVERAGE VALUES UPSTREAM OF GAUGES + + + + + Reported pF upper soil layer [-] + + + + + + Reported pF lower soil layer [-] + + + + + + Reported pF upper soil layer [-] + + + + + + Reported pF lower soil layer [-] + + + + + + + + ************************************************************** + Ad'a addition + ************************************************************** + + + + + threshold value below which there is no outflow to the channel [mm] + + + + + + length of the window used to smooth the LZ zone [number of cells] + + + + + + map of aquifers (0/1), used to smoothen LZ near extraction areas + + + + + + + + ************************************************************** + Water demand output maps + ************************************************************** + + + + + day of the year when the yearly endcalculation is done e.g. 31/10/xxxx = 304 + + + + + + + TotalAbstractionFromGroundwater [mm] + + + + + + TotalAbstractionFromSurfaceWater [mm] + + + + + + TotalAbstractionFromSurfaceWater [mm] summed up for water regions + + + + + + Total Abstraction From SurfaceWater and Groundwater [mm] summed up for water regions, montly values + + + + + + TotalPaddyRiceIrrigationAbstraction [m3] + + + + + + Water Exploitation Index - Consumption; for water regions (this is the official EU WEI+): consumption / internal and external availability + + + + + + Water Exploitation Index - Abstraction; for water regions: abstraction / internal and external availability + + + + + + Water Exploitation Index - Demand; for water regions: demand / internal and external availability + + + + + + Water Exploitation Index - Consumption; for water regions + + + + + + Internal available water + + + + + + External available water + + + + + + Region Water Consumption + + + + + + Region Water Consumption + + + + + + Reservoir and Lake storage in m3 at end of month + + + + + + Reservoir and Lake abstraction in m3 + + + + + + Irrigation water shortage in m3 for month + + + + + + Surface water availability in m3 for potential irrigation for each day + + + + + + Monthly evapotranspiration deficit in mm + + + + + + Monthly evapotranspiration deficit in mm + + + + + + Monthly evapotranspiration deficit in mm + + + + + + Monthly Water Dependency Index (0-1) (De Roo 2015) + WDI = Upstream Inflow Actually Used / Total Water Demand + Values close to 1 give extreme dependency on upstream water + + + + + + Monthly Water Security Index (0-1) (De Roo 2015) + WSI = Upstream Inflow Actually Used / Upstream Inflow Available + Values close to 1 give extreme vulnerability to upstream water + + + + + + Monthly Water Sustainability Index (0-1) (De Roo 2015) + WTI = 1-SurfaceWaterDeficit / TotalWaterDemand + Values of 1 indicate complete sustainable conditions, no water deficit + Values less than 1 indicate that considerable deep groundwater resources or desalinated water is used + + + + + + Monthly Falkenmark 1 Index (tochanm3) + + + + + + Monthly Falkenmark 2 Index (tochanm3+reservoirlakeabstraction) + + + + + + Monthly Falkenmark 3 Index (tochanm3+reservoirlakeabstraction+externalinflow) + + + + + + + Abstraction from groundwater in m3 per timestep + + + + + + Abstraction from surface water in m3 per timestep + + + + + + Region abstraction from surface water in m3 per timestep + + + + + + Region Total Abstraction From Lakes and Reservoirs in m3, per timestep + + + + + + Lake Abstraction per timestep in m3 + + + + + + ReservoirAbstraction per timestep in M3 + + + + + + ReservoirStorage in M3 + + + + + + LakeStorage in M3 + + + + + + AreatotalIrrigationUseM3 + + + + + + FractionAbstractedFromChannels + + + + + + EFlowIndicator (1 on day with ChanQ smaller than EflowThreshold, 0 on normal days) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ************************************************************** + Peter's addition + ************************************************************** + + + + + + [mm] + + + + + + [mm] + + + + + + [mm] + + + + + + + + + + areamap MaskMap; + timer StepStart StepEnd 1; + ReportSteps=$(ReportSteps); + + + + + diff --git a/tests/test_mct_warmstart.py b/tests/test_mct_warmstart.py index b61837b3..ee958c29 100644 --- a/tests/test_mct_warmstart.py +++ b/tests/test_mct_warmstart.py @@ -18,7 +18,7 @@ from __future__ import absolute_import import os import shutil -from datetime import timedelta +from datetime import datetime, timedelta import glob import pytest @@ -37,9 +37,19 @@ class TestWarmStart(): settings_files = { 'cold': os.path.join(case_dir, 'settings', 'mct_cold.xml'), - 'warm': os.path.join(case_dir, 'settings', 'mct_warm.xml') + 'warm': os.path.join(case_dir, 'settings', 'mct_warm.xml'), + 'warm_endmaps': os.path.join(case_dir, 'settings', 'mct_warm_endmaps.xml') } + def test_mct_only_warmstart_daily_using_end_maps(self): + calendar_day_start = '02/01/1990 06:00' + step_start = '02/01/2016 06:00' + step_end = '31/03/2016 06:00' + dt_sec = 86400 + dt_sec_channel = 86400 + report_steps = '9496..9861' + self.run_warmstart_by_dtsec('mct_endmaps', dt_sec, dt_sec_channel, step_end, step_start, calendar_day_start, report_steps=report_steps) + def test_mct_only_warmstart_daily(self): calendar_day_start = '02/01/1990 06:00' step_start = '02/01/2016 06:00' @@ -105,12 +115,20 @@ def run_warmstart_by_dtsec(self, mct_case, dt_sec, dt_sec_channel, step_end, ste if mct_case == 'mct': opts_to_set = ['repStateMaps','TransLoss'] opts_to_unset = ['repMBTs', 'simulateReservoirs', 'simulateLakes'] + warm_settings_file = 'warm' + if mct_case == 'mct_endmaps': + opts_to_set = ['repEndMaps','TransLoss'] + opts_to_unset = ['repMBTs', 'simulateReservoirs', 'simulateLakes'] + warm_settings_file = 'warm_endmaps' + check_every = 0 # check only at the end elif mct_case == 'mct_reservoirs': opts_to_set = ['repStateMaps', 'simulateReservoirs','TransLoss'] - opts_to_unset = ['repMBTs', 'simulateLakes'] + opts_to_unset = ['repEndMaps','repMBTs', 'simulateLakes'] + warm_settings_file = 'warm' elif mct_case == 'mct_lakes': opts_to_set = ['repStateMaps', 'simulateLakes','openwaterevapo','TransLoss'] - opts_to_unset = ['repMBTs', 'simulateReservoirs'] + opts_to_unset = ['repEndMaps','repMBTs', 'simulateReservoirs'] + warm_settings_file = 'warm' settings_longrun = setoptions(self.settings_files['cold'], opts_to_set=opts_to_set, @@ -158,17 +176,21 @@ def run_warmstart_by_dtsec(self, mct_case, dt_sec, dt_sec_channel, step_end, ste # run only 5*13 steps to speed up computation # checking 5 steps every 'check_every' steps # need to run 5*check_every steps in total - step_limit = warm_step_start + 5*check_every*timedelta(seconds=dt_sec) + if check_every > 0: + step_limit = warm_step_start + 5*check_every*timedelta(seconds=dt_sec) + else: + step_limit = settings_longrun.step_end_dt print('running until {}'.format(step_limit)) nc_comparator = NetCDFComparator(settings_longrun.maskpath) tss_comparator = TSSComparator(array_equal=True) + settings_warmstart = None while warm_step_start <= step_limit: run_number += 1 path_init = prev_settings.output_dir self.path_out = (os.path.join(self.case_dir, 'out', 'run{}_{}'.format(dt_sec, run_number))) - settings_warmstart = setoptions(self.settings_files['warm'], + settings_warmstart = setoptions(self.settings_files[warm_settings_file], opts_to_set=opts_to_set, opts_to_unset=opts_to_unset, vars_to_set={'StepStart': warm_step_start.strftime('%d/%m/%Y %H:%M'), @@ -186,7 +208,7 @@ def run_warmstart_by_dtsec(self, mct_case, dt_sec, dt_sec_channel, step_end, ste lisfloodexe(settings_warmstart) # checking values at current timestep (using datetime) - if not (run_number % check_every): + if (check_every > 0) and not (run_number % check_every): # ****** compare ******* # compare every 13 timesteps to speed up test timestep_dt = settings_warmstart.step_end_dt # NetCDFComparator takes datetime.datetime as timestep @@ -200,6 +222,14 @@ def run_warmstart_by_dtsec(self, mct_case, dt_sec, dt_sec_channel, step_end, ste warm_step_end = warm_step_start timestep_init = prev_settings.step_end_dt.strftime('%d/%m/%Y %H:%M') + # check at the end of the whole period on the last path_out when check_every is zero + if check_every == 0: + timestep_dt = settings_warmstart.step_end_dt # NetCDFComparator takes datetime.datetime as timestep + timestep = settings_warmstart.step_end_int + nc_comparator.compare_dirs(self.path_out, self.path_out_reference, timestep=timestep_dt) + tss_comparator.compare_dirs(self.path_out, self.path_out_reference, timestep=timestep) + + def teardown_method(self): print('Cleaning directories') folders_list = glob.glob(os.path.join(os.path.dirname(__file__), self.case_dir, 'out/run*')) + \