Reservoirs
For modelling reservoirs, (natural) lakes or other water storage features that can be represented by the available functionality, a reservoir
node is used that can be included as part of the river network.
General settings
By default the reservoirs are not included in the model. To include them put the following lines in the TOML file of the model:
[model]
reservoir__flag = true
Reservoir areas (coverage) and locations (outlet) are required and mapped between external and internal parameter names in the TOML file, with below an example:
[input]
reservoir_area__count = "wflow_reservoirareas"
reservoir_location__count = "wflow_reservoirlocs"
Reservoir modelling
Reservoirs are modelled using a mass balance approach:
where
Most of the variables in this equation are known at the current or previous timestep, apart from
- Come from the interpolation of field data linking volume and reservoir water level,
- Be computed from the simple relationship
.
Rating curves in wflow can either:
- Come from the interpolation of field data linking reservoir outflow and water level
- Be computed from a rating curve of the form
, where is the minimum water level under which the outflow is zero. Usual values for are for a rectangular weir or for a parabolic weir (Bos, 1989). - Be defined by simple reservoir operational parameters.
Modified Puls approach
The Modified Puls approach is solving the reservoir balance using an explicit relationship between storage and outflow. Storage is assumed to be equal to
Inserting this equation in the mass balance gives:
The solution for
where
Reservoir parameters
The following reservoir rating curve types reservoir_water__rating_curve_type_count
are available:
- 1 for
from reservoir data and interpolation - 2 for general
- 3 in the case of Modified Puls approach
- 4 simple reservoir operational parameters
And following reservoir storage curve types reservoir_water__storage_curve_type_count
are available:
- 1 for
- 2 for
from reservoir data and interpolation
Below an example of how the reservoir area, rating curve and storage curve types, required data for all reservoir types, are mapped between external and internal parameter names in the TOML file:
[input.static]
reservoir_surface__area = "reservoir_area"
reservoir_water__rating_curve_type_count = "outflowfunc"
reservoir_water__storage_curve_type_count = "storfunc"
Including reservoir rating and storage curves from data (rating curve type 1 and storage curve type 2) is described here.
For reservoir rating curve types 2 and 3 the following rating curve parameters need to be included in the TOML file, with below an example:
[input.static]
reservoir_water__rating_curve_coefficient = "reservoir_b"
reservoir_water__rating_curve_exponent = "reservoir_e"
reservoir_water_flow_threshold-level__elevation = "reservoir_threshold"
A reservoir with rating curve type 2 can be linked to a downstream reservoir and return flow can be allowed from the downstream to the upstream reservoir. The input parameter reservoir~lower_location__count
(standard name) represents the downstream reservoir location ID of the upstream lake location.
For reservoir rating curve type 4, simple reservoir operational parameters need to included in the TOML file, with below an example:
[input.static]
"reservoir_water_demand~required~downstream__volume_flow_rate" = "ResDemand"
reservoir_water_release-below-spillway__max_volume_flow_rate = "ResMaxRelease"
reservoir_water__max_volume = "ResMaxVolume"
"reservoir_water~full-target__volume_fraction" = "ResTargetFullFrac"
"reservoir_water~min-target__volume_fraction" = "ResTargetMinFrac"
The complete list of reservoir input parameters that can be provided through the TOML file can be found here.
Storage and rating cuves from data
Storage and rating curves from field measurement can be supplied to wflow via CSV files supplied in the same folder of the TOML file. Naming of the files uses the ID of the reservoirs where data are available and is of the form reservoir_sh_1.csv
and reservoir_hq_1.csv
for respectively the storage and rating curves of reservoir with ID 1.
The storage curve is stored in a CSV file with reservoir level H
and corresponding reservoir storage S
:
H, S
392.21, 0
393.21, 430202000
393.71, 649959000
394.21, 869719000
The rating curve uses level and discharge data depending on the Julian day of the year (JDOY). The first line contains H
for the first column. The other lines contain the water level and the corresponding discharges for the different JDOY (1-365), see also the example below, that shows part of a CSV file (first 4 Julian days). The volume above the maximum water level of the rating curve is assumed to flow instantaneously out of the reservoir (overflow).
H
394, 43, 43, 43, 43
394.01, 44.838, 44.838, 44.838, 44.838
394.02, 46.671, 46.671, 46.671, 46.671
394.03, 48.509, 48.509, 48.509, 48.509
394.04, 50.347, 50.347, 50.347, 50.347
394.05, 52.179, 52.179, 52.179, 52.179
Please note that H
in these two examples is defined as meters above sea level. When using option (1) for the storage curve, the level is defined as meters above reservoir bottom. Therefore, please be careful to ensure consistent units when using/combining storage and rating curves from data.
References
- Bos M.G., 1989. Discharge measurement structures. Third revised edition, International Institute for Land Reclamation and Improvement ILRI, Wageningen, The Netherlands.
- Burek P., Van der Knijf J.M., Ad de Roo, 2013. LISFLOOD – Distributed Water Balance and flood Simulation Model – Revised User Manual. DOI: http://dx.doi.org/10.2788/24719.