Skip to main content

WL2021R00_130_9.pdf

Page 1

00_130_9 FHR reports

Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 The WetSpa model for the iFramework

www.flandershydraulicsresearch.be


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

Salvadore, E.; Nossent, J.; Pereira, F.; Mostaert, F.


Cover figure © The Government of Flanders, Department of Mobility and Public Works, Flanders Hydraulics Research Legal notice Flanders Hydraulics Research is of the opinion that the information and positions in this report are substantiated by the available data and knowledge at the time of writing. The positions taken in this report are those of Flanders Hydraulics Research and do not reflect necessarily the opinion of the Government of Flanders or any of its institutions. Flanders Hydraulics Research nor any person or company acting on behalf of Flanders Hydraulics Research is responsible for any loss or damage arising from the use of the information in this report. Copyright and citation © The Government of Flanders, Department of Mobility and Public Works, Flanders Hydraulics Research 2021 D/2021/3241/024 This publication should be cited as follows: Salvadore, E.; Nossent, J.; Pereira, F.; Mostaert, F. (2021). Effect of climate change on the hydrological regime of navigable water courses in Belgium: Sub report 9 – The WetSpa model for the iFramework. Version 1.0. FHR Reports, 00_130_9. Flanders Hydraulics Research: Antwerp Reproduction of and reference to this publication is authorised provided the source is acknowledged correctly. Document identification Customer: Keywords (3-5): Knowledge domains: Text (p.): Confidential: Author(s):

Flanders Hydraulics rzesearch Ref.: WL2021R00_130_9 climate change; hydrological impact analysis; distributed & lumped models; Belgium; model uncertainty Watermanagement > hydrology > numerical modelling 17 ‫ ܈‬No

Appendices (p.): ‫ ܈‬Available online

9

Salvadore, E.

Control Name Reviser(s):

Project leader:

Nossent, J.; Pereira, F.

Pereira, F.

Signature Getekend door:Jiri Nossent (Signature) Getekend op:2022-03-22 09:46:19 +01:0 Reden:Ik keur dit document goed

Getekend door:Fernando Pereira (Signat Getekend op:2022-03-22 08:49:20 +01:0 Reden:Ik keur dit document goed

Getekend door:Fernando Pereira (Signat Getekend op:2022-03-22 08:50:04 +01:0 Reden:Ik keur dit document goed

Approval Mostaert, F. Head of Division:

F-WL-PP-16.03.01-02 Valid as from 6/11/2021

For the Head of Division, absent Patrik Peeters, Engineer, in charge with leading the Division Flanders Hydraulics Research

Digitaal ondertekend Patrik Peeters Patrik Peeters door (Signature) (Signature) Datum: 2021.09.08 08:17:18 +02'00'


Effect of climate change on the hydrological regime of navigable water courses in Belgium - Sub report 9 – The WetSpa model for the iFramework

Abstract The assessment of climate change impact on the hydrological system is becoming more and more a key issue for establishing best management practices for the limited water resources. Climate change impact analysis requires state of the art hydrological models to perform simulations of different climate scenarios. The study of these scenarios is however not sufficient to compensate for the high uncertainty of future forecasting. With the purpose of including model structure uncertainty, the iFramework was developed (Pannemans et al., 2014). This Python-based framework is a powerful platform for managing and creating flexible hydrological models. Within the iFramework, three well known lumped hydrological models can be used: NAM, PDM and VHM. The available tools have however a lumped model structure which can be a limiting factor for complex hydrological applications. To overcome this limitation, we extended the library of hydrological tools by including the spatially-distributed model WetSpa in the iFramework toolbox. This report describes the development of a iFramework-compatible WetSpa model, and its implementation and testing by means of theoretical and real case study. The WetSpa model (Water and energy transfer between Soil plant and atmosphere) is a well established GIS-based, spatially-distributed rainfall-runoff model for hydrological simulations at the catchment scale. Recently a process-based Python version of the model has been developed (Salvadore, E. et al., 2012, 2014), this new version is based on a different Python framework (Schmitz, et al. 2013a, 2013b) but facilitates the integration with the iFramework. To perform the integration, we carried out an in-depth comparison of the two framework paradigms to identify the appropriate strategy to bridge the gaps between the two frameworks. Afterwards, we developed new Python codes for the WetSpa model in the iFramework and we modified some parts of the iFramework to allow the integration of the WetSpa model in the toolbox. In this phase, we decided to develop two versions of the WetSpa model: a spatially-distributed and a lumped version. Distributed and lumped WetSpa models share the same Python codes, the main difference is the flow routing approach. Finally, these two versions were verified by means of a theoretical and a real case study. We compared the results generated by the two model versions with the original WetSpa-Python model. In both validation tests, the spatially-distributed model produced nearly identical results to the original model, with only negligible rounding errors. In the lumped model, all the inputs and parameters were averaged over the all catchment. The validation of the lumped model is less straightforward as model parameters partially lose their physical meaning and cannot be directly compared with the distributed ones. However, by modifying a number of parameters we were able to achieve a good match between the lumped model and the original spatially-distributed model, which ensure the correct implementation of the model code. Further tests on the lumped model are however required for a better understanding of the behavior of the model parameters.

Final version

WL2021R00_130_9

III


F-WL-PP-16.03.01-02 Valid as from 6/11/2021


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

Contents Abstract ............................................................................................................................................................ III Contents ............................................................................................................................................................ V List of tables...................................................................................................................................................... VI List of figures ................................................................................................................................................... VII 1

Introduction and Report Structure ............................................................................................................ 1

2

The WetSpa model .................................................................................................................................... 2

3

2.1

The original WetSpa model ............................................................................................................... 2

2.2

The WetSpa-Python model................................................................................................................ 3

The WetSpa model for the iFramework .................................................................................................... 4 3.1

The iFramework and the WetSpa framework ................................................................................... 4

3.2

Technical Implementation ................................................................................................................. 6

3.3

Model Validation: application to case studies .................................................................................. 8

3.3.1

Fully distributed model.............................................................................................................. 9

3.3.2

Lumped model ......................................................................................................................... 11

Conclusions and Recommendations ............................................................................................................... 16 References ....................................................................................................................................................... 17 Appendix A: Step-by-Step User Manual .......................................................................................................... A1 Appendix B: iFramework modifications .......................................................................................................... A9

Final version

WL2021R00_130_9

V


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

List of tables Table 1 – Comparison between the iFramework and available models, and the WetSpa-Python model and its framework. ........................................................................................................................................................ 4 Table 2 – Comparison between the WetSpa-Python component names and the WetSpa components in the iFramework........................................................................................................................................................ 6 Table 3 – Maximum absolute error in the water balance [m] between the developed spatially-distributed WetSpa model for the iFramework and the original WetSpa-Python model code. ....................................... 11 Table 4 – Default soil type classification of the WetSpa model ...................................................................... A2 Table 5 – Default land use classification of the WetSpa model ...................................................................... A3 Table 6 – Default parameters characterizing soil textural classes in the WetSpa model ............................... A3 Table 7 – Default parameters characterizing land use classes of the WetSpa model .................................... A4 Table 9 – WetSpa state variables .................................................................................................................... A7

VI

WL2021R00_130_9

Final version


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

List of figures Figure 1 – At every time step, the WetSpa model performs a water balance at cell level, the main considered processes are here illustrated. .......................................................................................................................... 2 Figure 2 - The structure of the WetSpa-Python model is process-based, the model components interact with each other at run time and variable exchanges are managed at a higher level by the Python modelling framework. Grey boxes represent the main WetSpa-Python components and arrows represent the main links within components. ........................................................................................................................................... 3 Figure 3 – The WetSpa-Python model generates (a) spatially-distributed response functions of instantaneous precipitation or (b) the total catchment response function ............................................................................. 7 Figure 4 – Theoretical case study: spatial inputs............................................................................................... 8 Figure 5 – Theoretical case study: average precipitation time series ............................................................... 8 Figure 6– Kleine Nete case study: spatial inputs and average precipitation time series .................................. 9 Figure 7 – The developed code for the spatially-distributed WetSpa model and the original WetSpa-Python code produce identical results for the theoretical case study. Results refer to the catchment outlet. ......... 10 Figure 8 – The developed code for the spatially-distributed WetSpa model and the original WetSpa-Python code produce identical results for the Kleine Nete catchment. Results refer to the catchment outlet......... 10 Figure 9 – The lumped WetSpa model seems to correctly predict the evolution of soil moisture content and the general trends of other water balance components before saturation. During saturation infiltration is overestimated by 1 [mm] due to and overestimation of percolation (groundwater recharge). .................... 12 Figure 10 – The results of the lumped WetSpa model for surface runoff, infiltration and percolation, matches very well the predictions of the distributed WetSpa model when a constant map of hydraulic conductivity is used in the latter. The soil moisture content is however affected by this parameter modification. ............. 12 Figure 11 – The results of the lumped WetSpa model perfectly matches the predictions of the distributed WetSpa model when constant parameter maps are used in the latter. ......................................................... 13 Figure 12 – The routing components of the lumped model produce similar results to the spatially-distributed model, the only exception is the groundwater discharge. .............................................................................. 14 Figure 13 – The lumped WetSpa model seems to correctly predict the evolution of soil moisture content and the general trends of other water balance components before saturation. During saturation surface runoff is significantly underestimated due to and overestimation of depression storage. .......................................... 15 Figure 14 – The routing components of the lumped model produce generally good results compared to the spatially-distributed model, particularly for interflow and the total flow. However overland flow is significantly underestimated due to the incorrect calculation of the surface runoff component as well as the groundwater discharge. .................................................................................................................................. 15 Figure 15 – iFramework folders structure ....................................................................................................... A2

Final version

WL2021R00_130_9

VII


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

1 Introduction and Report Structure The iFramework is a powerful platform for managing and creating flexible hydrological models (Pannemans et al., 2014). Within the iFramework, three well known lumped hydrological models can be used: NAM, PDM and VHM. This approach allows the study of climate change with an ensemble of model structures, in view of uncertainty reduction. However, all the available tools have a lumped model structure and this can be a limitation for complex applications. To overcome this limitation, we included the spatially-distributed model WetSpa in the iFramework toolbox. The main objective of this project is the development of a WetSpa model version which is compatible with the requirements of the iFramework and to test this implementation by means of a theoretical and a real case study. This report is divided into three chapters and two appendices. Chapter 1 introduces the original spatially-distributed hydrological model WetSpa and its Python version. Chapter 2 deals with the implementation of the WetSpa model in the iFramework: Section 2.1 compares the iFramework with the Python framework used by the WetSpa model and identifies the necessary modifications to achieve the objective; Section 2.2 gives details of the technical implementation; Section 3.3 presents the results of the model validation. Chapter 3 summarizes the conclusion of this project and provides the ‘lessons learned’. Appendix A is the step-by-step user guide for running the WetSpa-Python for the iFramework. Appendix B reports all the modifications we made to the iFramework in order to include the WetSpa model in the list of available tools.

Final version

WL2021R00_130_9

1


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

2 The WetSpa model This chapter introduces the main characteristics and modeling concepts of the WetSpa model. Section 1.1 gives a short introduction of the original WetSpa model and section 1.2 describes the new Python version of the WetSpa model.

2.1 The original WetSpa model The WetSpa model is a GIS-based, spatially-distributed rainfall-runoff model for hydrological simulations at the catchment scale. WetSpa stands for “Water and energy transfer between Soil, plant and atmosphere”. The model has a relatively long history dating back to 1996 (Wang et al. 1996) and it has been used and modified ever since for a wide range of applications (Liu et al., 2006; Chormanski et al., 2008; Berezowski et al., 2012; Verbeiren et al., 2013; Tavakoli et al., 2013). Moreover, the WetSpa model code was recently tested in the Distributed Model Intercomparison Project (Safari et al., 2012). The model calculates the water balance at the raster cell level and simulates several physical processes with a cascade approach (Figure 1). Liu and De Smedt (2005) describe the main physically-based equations solved by the model, of which hereafter only a short summary is given. Surface runoff is produced using a modified runoff coefficient method. Based on the geomorphological characteristic of each raster cell, the runoff is then routed as overland and channel flow with the linear diffusive wave approximation and the geomorphological instantaneous unit hydrograph concept (G-IUH). Based on Darcy’s law and the kinematic approximation, the model calculates interflow as a function of the effective hydraulic conductivity and the hydraulic gradient, while groundwater flow is estimated with the linear reservoir method on small sub-catchment scale as a function of groundwater storage and a recession coefficient. Time step resolution of inputs and outputs ranges from one hour to days, months and years.

Rainfall Evapotranspiration

Interception

River Flow

Net Rainfall Depression Unsaturated soil

Runoff

Infiltration Interflow Deep percolation

Saturated soil

Groundwater flow and discharge

Figure 1 – At every time step, the WetSpa model performs a water balance at cell level, the main considered processes are here illustrated.

The WetSpa model is composed of three components: two pre-processing components and the main simulation code. The two pre-processing components are: (a) the GIS-based parameter maps estimator and (b) the G-IUH routine. The inputs of the model are: (a) precipitation, potential evapotranspiration and

2

WL2021R00_130_9

Final version


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

temperature time series, which are distributed over the catchment with the Thiessen polygons method; and (b) spatially distributed parameters, which are derived on basis of three maps: topography, soil texture and land use. Typical outputs are: flow hydrographs at catchment and sub-catchment outlets, and maps of major water fluxes for each time step. Calibration can be manually or automatically performed by modifying the 11 global calibration parameters. Automatic calibration is performed with the model independent Parameter ESTimator (PEST) software (Liu et al. 2005). Recently, Shafii and de Smedt (2009) also tested multi-objective calibration with a genetic algorithm.

2.2 The WetSpa-Python model The WetSpa-Python model (Salvadore, E. et al., 2012, Salvadore, E. et al., 2015) is essentially a reimplementation of the original WetSpa model according to the Python modelling framework standards developed by Schmitz, et al. (2013a, 2013b). However, both the model structure and the programming language are sensibly different from the original model, while the main semi-physical equations are preserved. The new model structure is modular and process-based. Every hydrological process is coded in a separate module and modules exchange data during running time through the Python modelling framework prototype (Figure 2). The framework allows model components to run with independent time steps. In other words, hydrological processes in the WetSpa-Python model can be simulated at different time resolution according to data availability and physical scale of the hydrological process. Moreover, the simulation time step is no longer limited to 1 hour. Spatial resolution is purely a function of the input data: the finer the data the more detailed the model. The two pre-process components of the original WetSpa model are integrated in the new system as static components of the framework and they run automatically at the start of the simulation. Calibration parameters Spatially-distributed data & Parameters

Rain

IUH

PET

Atmosphere

Interception Surface

Flow Routing (Surface & Interflow)

Surface Runoff & Infiltration

Depression Losses

Interflow

Soil Evaporation

Groundwater Routing Total Discharge

Groundwater Recharge

Soil Moisture Content

Catchment Water Balance

GIS pre-process

Time series

Unsaturated zone Saturated zone

Outputs Modelling framework

Figure 2 - The structure of the WetSpa-Python model is process-based, the model components interact with each other at run time and variable exchanges are managed at a higher level by the Python modelling framework. Grey boxes represent the main WetSpa-Python components and arrows represent the main links within components.

Final version

WL2021R00_130_9

3


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

3 The WetSpa model for the iFramework This chapter deals with the main objective of this project: the implementation of the spatially-distributed hydrological model WetSpa in the iFramework. We refer the reader to (Pannemans et al., 2014) for a detailed description of the iFramework, which is out of the scope of the present report. Section 2.1 compares the iFramework concept with the Python framework used by the WetSpa model, and identifies the necessary modifications. Section 2.2 gives a technical description of the implementation of the WetSpa model in the iFramework and finally Section 2.3 provides a series of example applications.

3.1 The iFramework and the WetSpa framework The iFramework and the WetSpa framework sensibly differ (Table 1). Therefore both the WetSpa-Python and the iFramework codes required adaptations to achieve the objective. The main needed adaptations relate to: - computer language versions  we decided to use the most recent Python and PCRaster versions (the ones used by the iFramework); - variable names  when possible, we modified the variable names to be as consistent as possible with the standards of the iFramework (e.g. surface runoff “qs” in WetSpa-Python becomes “OF” in the WetSpa model for the iFramework); - variable types  calculations are performed using PCRaster maps wherever possible, as it is done by the other models in the iFramework. For complex WetSpa model calculations (i.e. surface flow routing) NumPy arrays are used. - static components of the WetSpa-Python model cannot be implemented in a straightforward way in the iFramework  we coded the static components as stand-alone Python files (not according to the iFramework standards); - lumped and distributed models share the same code in the iFramework, while only a distributed version of the WetSpa model exists  we developed two versions of the WetSpa model (a) fully-distributed, and (b) lumped. These two versions share the same code for the six process-based components, however we developed new codes for the routing of overland flow and groundwater; - iFramework code requires modifications to accommodate the WetSpa model  we kept these modifications to the minimum, a full list is provided in Appendix B.

Table 1 – Comparison between the iFramework and available models, and the WetSpa-Python model and its framework.

iFramework & models

WetSpa-Python and its framework

Global variables are stored in DM (Dynamic Local variables are used in every model Model object). component. → Variables have the same name in every → Different names can be used in different component. components.

4

WL2021R00_130_9

Final version


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

→ The iFramework does not exchange variables → The framework exchanges variables between between components. components at run time DM

Submodel 1

A  A1

A1 = f(A)

A Submodel 1

A1 A1

A1

Submodel 2

B

B1 = f(A1,B)

B1

Submodel 2

B  B1

B1 = f(A1,B)

→ Components are not fully independent and → Components are fully independent and links between components are explicit. there are no explicit links between them. All sub-modules must have the same temporal Model components can have different spatial and and spatial discretization temporal discretization Language and GIS software: Python 2.7 and Language and GIS software: Python 2.5.4 and PCRaster 4.0 PCRaster 3.0 Sub-modules can be add at run time

Model components cannot be added at run time

Manual parameter-maps preprocess

Automated parameter-maps preprocess

Models in the framework can be run in lumped or Only a distributed code exists for the WetSpadistributed mode without code modification Python model. The user needs to modify the iFramework in The user does not need to modify the framework to add a new model component. order to add a new sub-module Many functions are available for evaluation and automatic calibration

model No code is available for model evaluation and automatic calibration

Parameters (and variables) are global and they Parameters are local and they are declared within are stored in the object pBox the particular model component Variables are overwritten at every time step

Variables can be overwritten or can be stored over time

State variables are “single value” (lumped State variables are of the type NumPy masked models) or arrays (distributed models) array. Sub-modules are Python classes included in the Model components are Python classes and are main model script. stored in separate scripts and folders. The order of calculation of the different sub- The order of calculation of the model modules is selected by the user. components is selected by the framework according to the dependences between components.

Final version

WL2021R00_130_9

5


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

3.2 Technical Implementation The WetSpa model for the iFramework consists of three Python files: WetSpaGIS.py, WetSpaIUH.py, and myWetSpaModel.py. The first two files are independent from the iFramework and can be considered as model pre-processing, while the third represents the real model and all the process-based components are coded in this file as Python classes. For those familiar with the WetSpa-Python model structure, Table 2 provides a comparison of file names. Table 2 – Comparison between the WetSpa-Python component names and the WetSpa components in the iFramework.

WetSpa-Python model components (Python files) static_preproc.py dynamic_preproc.py

WetSpa for the iFramework: independent codes, Python classes in myWetSpamModel.py, or modification of other Python files WetSpaGIS.py (independent from the iFramework)

iuh_standard.py

WetSpaIUH.py (independent from the iFramework)

Rain.py PET.py

Modification of iFramework.py and configuration.txt

Interception.py

WetSpaInterception (Python class)

RainExcess_Infiltration.py

WetSpaRainExc_Infil (Python class)

Depression_Overlandflow.py

WetSpaDepression (Python class)

Interflow.py

WetSpaInterflow (Python class)

Evapotranspiration_soil.py

WetSpaSoilEvaporation (Python class)

Groundwater_recharge.py

WetSpaPercolation (Python class)

Balance.py

WetSpaBalance (Python class)

output.py

WetSpaBalanceOutput (Python class)

Flow_routing.py

WetSpaUZRouting (Python class) WetSpaUZRoutingL (Python class) lumped

Linear_reservoirs.py

WetSpaBZRouting (Python class) WetSpaBZRoutingL (Python class) lumped

Two types of WetSpa-Python components could not be converted into iFramework sub-modules: (1) static components, and (2) components dealing with meteorological inputs. (1) Static components are not supported by the iFramework as all the sub-modules of a dynamic model must share the same temporal

6

WL2021R00_130_9

Final version


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

resolution. We therefore created two stand-alone pre-processing files: WetSpaGIS.py and WetSpaIUH.py. The first file generates all the necessary parameter maps (or a single value in the lumped mode) for the WetSpa model. The second file generates a stack of maps (or a time series in the lumped mode) of instantaneous response functions (Figure 3) which are used in the routing process. (2) Components dealing with meteorological inputs do not exist in the iFramework as the iFramework internally manipulates these inputs. We therefore used the existing iFramework functionalities for input manipulation. There are three possible ways for loading meteorological data (method loadMeteoData_initial() in iFramework.py), none of these approaches however allows the distribution of precipitation (and/or potential evapotranspiration) time series according to a Thiessen polygon map (default approach in the WetSpa model). We therefore modified the loadMeteoData_initial() method of the iFramework, by adding this option. Consequently a new directive was added to the configuration.txt with the name METEODATA_THIESSEN.

(a) Spatially-distributed model

(b) Lumped model Combined catchment response Q

z

time

y x

Figure 3 – The WetSpa-Python model generates (a) spatially-distributed response functions of instantaneous precipitation or (b) the total catchment response function

The file myWetSpaModel.py contains the WetSpa model code. Following the examples of the NAM, PDM and VHM models we divided the WetSpa model code into 14 classes. Two classes represent the distributed and the lumped models, respectively WetSpaModel and WetSpaModelLumped. In these two model classes 10 sub-modules, the model constants and parameters, and the model variables are listed. The two classes are composed of two methods: intial and dynamic. In the intial method, variables and parameters are initialized. In the dynamic method, the dynamic methods of all the sub-modules are called and the total flow is calculated as the sum of surface flow, interflow and groundwater flow. Distributed and lumped WetSpa models share 6 sub-modules, the two routing models are different for the two model versions and catchment averages are not calculated in the lumped model.

Final version

WL2021R00_130_9

7


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

3.3 Model Validation: application to case studies We validated the spatially-distributed and the lumped WetSpa models by means of two case studies: a theoretical case and a real case. The theoretical catchment has a square shape and covers an area of 625 km2, input data has a spatial resolution of 5X5 km. The catchment has a very simple topography (Figure 4 (a)) ranging from 0 to 3 m and a very diverse land cover and soil texture (Figure 4 (b), (c)).

Figure 4 – Theoretical case study: spatial inputs

The simulation time step is 1 [h] and the total length of the simulation is 150 [h]. Precipitation has either gradual (1 [mm/h]) or sharp (10 [mm/h]) increases/decreases as shown in Figure 5. Precipitation [mm] 12 10 8 6 4 2 0

0

30

60

90

120

150 Time [h]

Figure 5 – Theoretical case study: average precipitation time series

The real case is the 581 km2 Kleine Nete catchment, Belgium. The basin is relatively flat, with topography ranging from 3 to 48 [m] and an average slope of 0.36% (Figure 6 (a)). The land use is dominated by grassland and agriculture (total of 49%), while 23% of the catchment is urbanized and the remaining area is covered by forests (Figure 6(b)). The most diffuse soil types are sand, loamy-sand and sandy-loam, followed by sandyclay loam and silt and clay (Figure 6 (c)). The spatial resolution of the input maps is 50 [m]. The simulated period is nearly 1 month with a daily time step (Figure 6 (d)).

8

WL2021R00_130_9

Final version


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

(a) Topography [m]

(b) Land use

(c) Soil types

(d) Precipitation [mm]

48.5

5.5

30

20

10

0

0

10

20

30

40

50 Time [d]

Figure 6– Kleine Nete case study: spatial inputs and average precipitation time series

3.3.1

Fully distributed model

Model results of the spatially-distributed WetSpa model for the iFramework are compared with results generated by the original WetSpa-Python model. For both models, no calibration has been performed. At this stage, we intend to prove the correctness of the developed code for the iFramework and not its predictive performances. The developed code and the original WetSpa-Python code produce identical results for both the theoretical and the real case study. In Figure 7 (theoretical case) and Figure 8 (real case) in fact, the curves representing overland flow, interflow, groundwater discharge and total flow at the catchment outlet perfectly overlay. Rounding effects produce only negligible errors in the catchment average water balance (Table 3).

Final version

WL2021R00_130_9

9


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

Overland flow [m3/s]

Interflow [m3/s]

40

0.03

30

0.02

20 0.01

10 0

0

30

60

90

120

0 0

150 Time [h]

40

1.2

30

0.8

20

0.4

10 30

60

90

120

90

120

150

Total discharge [m3/s]

1.6

0

60

Time [h]

Groundwater discharge [m3/s]

0

30

0

150 Time [h]

0

30

60

90

120

150 Time [h]

Figure 7 – The developed code for the spatially-distributed WetSpa model and the original WetSpa-Python code produce identical results for the theoretical case study. Results refer to the catchment outlet.

Overland Flow [m3/s]

Interflow [m3/s] 30

20

10

0

10

20

30

40

50 Time [d]

0 10

0

20

30

40

50 Time [d]

40

50 Time [d]

Total discharge [m3/s]

Groundwater Discharge [m3/s] 50

20

40

15

30 10 20 5 0

10 0

10

20

30

40

50 Time [d]

0

0

10

20

30

Figure 8 – The developed code for the spatially-distributed WetSpa model and the original WetSpa-Python code produce identical results for the Kleine Nete catchment. Results refer to the catchment outlet.

10

WL2021R00_130_9

Final version


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework Table 3 – Maximum absolute error in the water balance [m] between the developed spatially-distributed WetSpa model for the iFramework and the original WetSpa-Python model code.

Catchment averages

3.3.2

Theoretical case

Kleine Nete case

Precipitation

0.000

0.000

PET

0.000

0.000

Depression

0.0001

1E-06

Interception

0.00029

0.000

Soil Moisture

0.05

0.005

Infiltration

0.0002

0.000

Evaporation from Interception Storage

0.0003

0.000

Evaporation from Unsaturated Soil

0.001

0.0001

Evaporation from Depression Storage

0.0003

1E-06

Evaporation from Saturated Soil

0.000

0.0001

Percolation

0.000

0.001

Surface Runoff

0.001

0.000

Interflow

1E-06

0.001

Groundwater Flow

1E-05

0.001

Lumped model

The lumped version of the WetSpa model solves the same semi-physical equations for calculating the water balance. It however calculates this balance at the catchment level and not for every grid cell. Distributed inputs and parameters are therefore averaged in the preprocessing phase. To evaluate the developed lumped WetSpa model, we first compare the calculated components of the water balance with the ones produced by the distributed model (Figure 9). Even if the lumped model considers the catchment as one grid cell of 25X25 km, it seems to correctly predict the soil moisture content and the general trends of other water balance components before saturation occurs (first 40 minutes of the simulation). However during saturation, surface runoff is underestimated and infiltration is overestimated by about 1 mm. At saturation the system is in quasi steady state condition and the error is due to an incorrect estimation of percolation (groundwater recharge), which allows a higher infiltration. In the WetSpa model, percolation is mainly governed by the vertical hydraulic conductivity, which in turn is dependent on soil characteristics. In this particular theoretical case, soil texture significantly varies, i.e. clay and sandy soils. The hydraulic conductivity of these two soil classes differs a factor 103 (Table 6 in Appendix A). To verify the hypothesis that the spatial distribution of the hydraulic conductivity is responsible for the differences in the water balance results, we compared the lumped results with a distributed WetSpa model that uses an average constant map of hydraulic conductivity (Figure 10). The results of the lumped WetSpa model for surface runoff, infiltration and percolation, matches very well the predictions of the distributed WetSpa model when a constant map of hydraulic conductivity is used in the latter. The soil moisture content is however affected by this parameter modification. The spatial distribution of parameter values has a great influence on model results. This conclusion is justifiable as parameters in the lumped model partially lose their physical meaning. To the best knowledge of the authors, there is no simple and generally accepted relation to convert distributed parameters into lumped parameters. Therefore, the simple choice of using parameter averages

Final version

WL2021R00_130_9

11


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

might generate significant errors in the model predictions. Parameters in the lumped models need recalibration to correctly estimate the water balance. Very likely, standard calibration techniques, used for the spatially-distributed model, cannot be directly applied to the lumped model, more tests are therefore required to establish a proper technique for model calibration. Soil Moisture [mm]

Surface Runoff [mm]

230 6 200

4

170

140

2

0

30

60

90

120

150 Time [h]

0

0

Infiltration [mm]

30

60

90

120

150 Time [h]

90

120

150 Time [h]

Percolation [mm] Lumped

6

6

Distributed 4

4

2

2

0

0

30

60

90

120

150 Time [h]

0

0

30

60

Figure 9 – The lumped WetSpa model seems to correctly predict the evolution of soil moisture content and the general trends of other water balance components before saturation. During saturation infiltration is overestimated by 1 [mm] due to and overestimation of percolation (groundwater recharge).

Soil Moisture [mm]

Surface Runoff [mm]

230 6 200

4

170

140 0

2

30

60

90

120

150 Time [h]

0

0

Infiltration [mm]

30

60

90

120

150 Time [h]

90

120

150 Time [h]

Percolation [mm] Lumped

6

6

Distributed 4

4

2

2

0

0

30

60

90

120

150 Time [h]

0

0

30

60

Figure 10 – The results of the lumped WetSpa model for surface runoff, infiltration and percolation, matches very well the predictions of the distributed WetSpa model when a constant map of hydraulic conductivity is used in the latter. The soil moisture content is however affected by this parameter modification.

12

WL2021R00_130_9

Final version


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

As a final verification of the water balance calculation, we compared the results of the lumped model with the ones produced by the distributed model using constant maps for all the parameters (Figure 11). A perfect match is achieved for every component of the water balance. Since the instantaneous values of the water balance components are identical for the distributed and the lumped models, we can independently test the implementation of the flow routing component (Figure 12). Surprisingly, also in this case the lumped model is able to reproduce accurately the results of the distributed model for the overland flow and the interflow components. The modified G-IUH calculation for the lumped model is therefore able to accurately mimic the distributed routing for this simple theoretical case. The groundwater discharge is the routing component that is mostly affected by the simplified lumped approach. Groundwater discharge is calculated at the subcatchment level with the linear reservoirs method as a function of groundwater storage and a recession coefficient. In the lumped approach no sub-catchment can be identified, therefore the catchment responds as one large reservoir. The recession coefficient therefore needs recalibration.

Soil Moisture [mm]

Surface Runoff [mm]

230 6 200

4

170

2

140

0

30

60

90

120

150 Time [h]

0

0

Infiltration [mm]

30

60

90

120

150 Time [h]

90

120

150 Time [h]

Percolation [mm] Lumped

6

6

Distributed 4

4

2

2

0

0

30

60

90

120

150 Time [h]

0

0

30

60

Figure 11 – The results of the lumped WetSpa model perfectly matches the predictions of the distributed WetSpa model when constant parameter maps are used in the latter.

Final version

WL2021R00_130_9

13


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

Overland flow [m3/s]

Interflow [m3/s]

30

0.04 0.03

20

0.02 10 0

0.01 0

30

60

90

120

150 Time [h]

0

0

60

90

120

150 Time [h]

Total discharge [m3/s]

Groundwater discharge [m3/s] 30

2

Lumped

1

0

30

Distributed

0

30

60

90

120

150 Time [h]

20 10 0

0

30

60

90

120

150 Time [h]

Figure 12 – The routing components of the lumped model produce similar results to the spatially-distributed model, the only exception is the groundwater discharge.

The lumped model applied to the Kleine Nete case generates similar results (Figure13). As in the theoretical case, the soil moisture seems very well estimated, infiltration is also correctly predicted. Surface runoff is significantly underestimated due to the effect of spatial distributed parameters regulating the calculation of depression storage. The underestimation of surface runoff produces an underestimation of overland flow, while the correct estimation of the soil moisture content produces very good results for the interflow calculation. The general trend of groundwater discharge is also well captured although the absolute values differ 1 to 3 m3/s (Figure 14).

14

WL2021R00_130_9

Final version


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

75

Soil Moisture [mm]

Surface Runoff [mm]

1.6 1.2

65

0.8 55

45

0.4 0

10

20

30

0

40 50 Time [d]

Infiltration [mm]

Lumped

1

Distributed

20

0

10

20

30

40 50 Time [d]

30

40 50 Time [d]

Depression [mm]

0.8 0.6

10

0.4 0.2

0

0

10

20

30

0

40 50 Time [d]

0

10

20

Figure 13 – The lumped WetSpa model seems to correctly predict the evolution of soil moisture content and the general trends of other water balance components before saturation. During saturation surface runoff is significantly underestimated due to and overestimation of depression storage.

8

Overland flow [m3/s]

Interflow [m3/s] 30

6 20

4

10

2 0 0

10

20

30

40

0 0

50

10

20

30

40

Time [d]

20

Time [d]

Lumped

Groundwater discharge [m3/s]

Distributed 60

0

15

50

Total discharge [m3/s]

5

40

10 0

20

5 0 0 0

10

20

30

40

0 0

50 Time [d]

10

20

30

40

50 Time [d]

Figure 14 – The routing components of the lumped model produce generally good results compared to the spatially-distributed model, particularly for interflow and the total flow. However overland flow is significantly underestimated due to the incorrect calculation of the surface runoff component as well as the groundwater discharge.

Final version

WL2021R00_130_9

15


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

Conclusions and Recommendations Climate change impact analysis is greatly affected by uncertainty. Future predictions of climate variables are generally produced as an ensemble of possible scenarios to reduce the uncertainty generated by the model inputs. A similar approach should be considered to deal with model structure uncertainty. The iFramework is a PCRaster-Python toolbox that allows multi-model simulations. The hydrological models available in the iFramework toolbox have however a lumped model structure. The main objective of the project was to extend the library of hydrological tools of the iFramework, by including the spatially-distributed model WetSpa. Starting from the Python version of the WetSpa model, (1) we compared the iFramework concepts with the Python framework used by WetSpa-Python model in detail; (2) we selected appropriate strategies to bridge the gaps between the two frameworks; (3) we developped new codes for the WetSpa model in the iFramework and we modified some parts of the iFramework to allow the integration of the WetSpa model in the toolbox; and finally (4) we tested the correctness of the developed codes by mean of theoretical and real case studies. (1) The iFramework and the Python framework used by the WetSpa model are different but comparable with respect to the general concepts of modularity and flexibility. Model components of the WetSpa-Python model are fully independent and can be easily replaced with newly developed model components or with existing models without modification of the framework code. Furthermore, model components can have different spatial and temporal resolution and the framework takes care of the correct order of calculation. These characteristics are only partially included in the iFramework options. However, the iFramework has other important options such as an extended library of automated calibration algorithms, three lumped models are included in the toolbox and scripts for input and output manipulation are available. (2) We adapted as much as possible the WetSpa-Python code to fulfill the requirements of the iFramework, limiting to a minimum the modification of the iFramework itself. Computer language, variable names, variable types were changed to the iFramework standards. Static WetSpa components were re-coded as stand-alone Python files. We moreover decided to develop two version of the WetSpa model: a spatiallydistributed and a lumped version to take full advantage of the iFramework concept. (3) Starting from the WetSpa-Python code we developed three new Python scripts: two for pre-processing and the myWetSpaModel.py. Pre-processing scripts create parameter maps (or single values in the lumped mode) and calculate the G-IUH (geomorphologic instantaneous unit hydrograph). The model code of WetSpa follows the example of the existing NAM, PDM and VHM model for the iFramework. The myWetSpaModel.py file contains 14 classes: two model classes, 10 process-based components and two classes dealing with the water balance. Distributed and lumped WetSpa models share 6 sub-modules, while they differ for the routing approach and the lumped model does not need to calculate catchment averages. (4) We tested the lumped and the spatially-distributed models by means of two examples: a theoretical case and a real case. We compared the results generated by the two model versions with the original WetSpaPython model. In both validation tests, the spatially-distributed model produced nearly identical results to the original model, with only negligible rounding errors. In the lumped model, all the inputs and parameters were averaged over the all catchment. The validation of the lumped model is less straightforward as model parameters partially lose their physical meaning and cannot be directly compared with the distributed ones. However, by modifying a number of parameters we were able to achieve a good match between the lumped model and the original spatially-distributed model. Further tests on the lumped model are however required for a better understanding of the behavior of the model parameters.

16

WL2021R00_130_9

Final version


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

References Berezowski, T., Chormanski, J., Batelaan, O., Canters, F., Van de Voorde, T., 2012. Impact of remotely sensed land-cover proportions on urban runoff prediction. International Journal of Applied Earth Observation and Geoinformation, 16, pp. 54-65. Chormanski, J., Van de Voorde, T., De Roeck, T., Batelaan, O., Canters, F., 2008. Improving distributed runoff prediction in urbanized catchments with remote sensing based estimates of impervious surface cover. Sensors, 8(2), pp. 910-932. Liu, Y. B., De Smedt, F., 2005. Flood Modeling for Complex Terrain Using GIS and Remote Sensed Information. Water Resource Management, 19, pp. 605-624. Liu, Y. B., Gebremeskel, S., De Smedt, F., Hoffman, L., Pfister, L., 2006. Predicting storm runoff from different land-use classes using a geographical information system-based distributed model. Hydrological Processes, 20(3), pp. 533-548. Pannemans, B., 2014. Deelopdracht 1: hydrologische neerslagfvoermodellen. Next-generation tools m.b.t. hydrometrie, hydrologie en hydraulic in het operationele waterbeheer – fase 1: analyse. Vlaamse Milieumaatschappij – Afdeling Operationeel Waterbeheer, International Marine & Dredging Consultants, Antwerp, Belgium. Document: K:\PROJECTS\11\11432 – Next-generation tools\10Rap\RA14097_NextGen_DO1_hydrologisch_model_v0.6.docx. Salvadore, E., Bronders, J., Batelaan, O., 2012. Enhanced model flexibility and coupling opportunities: the WetSpa model case. iEMSs 2012, Leipzig, Germany, 01-05/07/2012. Salvadore, E., Bronders, J., Schmitz, O., van der Kwast, J., Batelaan, O, 2015. Process-based hydrological modeling: the WetSpa-Python model, to be submitted in environmental Modeling and Software. Safari, A., De Smedt, F. & Moreda, F., 2012. WetSpa model application in the Distributed Model Intercomparison Project (DMIP2). Journal of Hydrology, 418, pp. 78-89. Schmitz, O., Karssenberg, D., de Joong, K., de Kok, J. L., de Jong, S. M., 2013a. Map algebra and model algebra for integrated model building. Environmental Modelling & Software, 48, pp. 113-128. Schmitz, O., Salvadore E., Poelmans, L., van der Kwast, J, Karddenberg, D., 2013b. A framework to resolve spatio-temporal misalignment in component-based modeling. Journal of Hydroinformatics, in press. DOI: 10.2166/hydro.2013.180 Shafii, M., De Smedt, F., 2009. Multi-objective calibration of a distributed hydrological model (WetSpa) using a genetic algorithm. Hydrology and Earth System Sciences, 13(11), pp. 2137-2149. Tavakoli, M., De Smedt, F., 2013. Validation of soil moisture simulation with a distributed hydrological model (WetSpa). Environmental Earth Sciences, 69(3), pp. 739-747. Verbeiren, B., Van de Voorde, T., Canters, F., Binard, M., Cornet, Y., Batelaan, O., 2013. Assessing urbanization on rainfall-runoff using a remote sensing supported modelling strategy. International Journal of Applied Earth Observation and Goeinformation, 21, pp.92-102.

Final version

WL2021R00_130_9

17


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

Appendix A: Step-by-Step User Manual In this section we list all the necessary steps to perform simulations with the WetSpa model for the iFramework. For a detailed reference manual of the WetSpa model and the model parameters please refer to http://www.vub.ac.be/WetSpa/. Note: pay particular attention to file and folder names, Python is case sensitive! Folder structure and file names The iFramework folder structure is fixed and model code refers to particular folder names where inputs, outputs and configuration files are stored (Figure 15). Folders names cannot be modified, the only exception is the folder “project name” in Figure 15 that can be named after the simulated catchment. In the “bin” folder all the model codes and the iFramework codes are stored. The codes of interest for the WetSpa model are: myWetSpaModel.py, WetSpaGIS.py, WetSpaIUH.py, myFramework.py, iFramework.py, iFramework_operators.py, iFramework_plots.py, ParameterHandling.py, configuration.py, and DataFiles.py. In the “catchment” folder all files belonging to the analyses catchment are stored. This folder contains five folders and nine files. The nine files contained in the “catchment” folders are: (1) confighost.txt (2) configparametersets.txt: calibration parameters iFramework configuration and log files

(3) configparams.txt: all parameters (4) configuration.txt (5) logfile.log (6) routingConfiguration.py (7) UserInputs.py (8) runWetSpaPreprocess.bat (9) runFramework.bat

WetSpa configuration files Batch files

The “meteo” folder contains the meteorological inputs: precipitation, evapotranspiration and temperature time series (tss format). The “parammaps” folder contains parameter maps, in the case of the WetSpa model these parameter maps a generated by the GIS pre-processing module (PCRaster format). The “staticmaps” folder contains other maps, in the case of the WetSpa model these maps are the inputs of the GIS pre-processing module (PCRaster format). The “tables” folder contains tables, in the case of the WetSpa model these tables are used by the GIS preprocessing module. In the folder “output”, outputs are stored, for the WetSpa model according to the user request, these outputs are: maps, balance.txt and time series of overlandflow, interflow, base flow and total discharge at the outlet.

Final version

WL2021R00_130_9

A1


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

project name bin

catchment meteo parammaps staticmaps tables output

Figure 15 – iFramework folders structure

Pre-processing Input: parameter maps The GIS pre-process of the WetSpa model requires three input maps and two clone maps (PCRaster), for both the spatially distributed and the lumped versions. Clone maps provide information regarding the geographical and cartographical location attributes of all the other maps (for more information refer to the PCRaster manual). For running the WetSpa model two clone maps are necessary, they only differ for the variable type they store: one should be Nominal values (classes) and the other Scalar (for real numbers). for the lumped model one more clone maps needs to be available: CloneScalarLumped.map which is composed by only one cell. Input maps are: topography, soil type and land use. These maps are in raster format with exactly the same cell size and spatial extent. They can be created with any GIS software but they need to be converted to PCRaster format before being stored in the “staticmaps” folder. The names of the input maps must be: elevation_start.map, landuse_start.map, soil_start.map, CloneScalar.map and CloneNominal.map Soil and land use classification should be made according to Table 4 and 5. If your catchment is not correctly described by these classes, you can define your own classes as long as all the necessary parameters are known (Table 6 and 7). If you decide to do so, the parameter tables in the “tables” folder need to be adapted accordingly. Table 4 – Default soil type classification of the WetSpa model

ID

1 2 3 4 5 6 7 8 9 10 11 12

A2

Texture Classes Sand Loamy sand Sandy loam Silt loam Silt Loam Sandy clay loam Silt clay loam Clay loam Sandy clay Silt Clay Clay

WL2021R00_130_9

Final version


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework Table 5 – Default land use classification of the WetSpa model

ID 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

Land use Classes Evergreen needleleaf forest Evergreen broadleaf forest Deciduous needleleaf forest Deciduous broadleaf forest Mixed forest Closed Scrubland Open Scrubland Woody Savannah Savannah Grassland Permanent wetland Cropland Urban and build-up Cropland/ Natural vegetation mosaic Snow and ice Barren or sparsely vegetated Water body

Table 6 – Default parameters characterizing soil textural classes in the WetSpa model

Texture Classes

Hydraulic conductivity [mm/h]

Sand

208.8

0.437

0.062

0.024

0.020

3.39

Loamy sand

61.20

0.437

0.105

0.047

0.035

3.86

Sandy loam

25.92

0.453

0.190

0.085

0.041

4.50

Silt loam

13.32

0.501

0.284

0.135

0.015

4.98

Silt

6.84

0.482

0.258

0.126

0.015

3.71

Loam

5.58

0.463

0.232

0.116

0.027

5.77

Sandy clay loam

4.32

0.398

0.244

0.136

0.068

7.20

Silt clay loam

2.30

0.471

0.342

0.210

0.040

8.32

Clay loam

1.51

0.464

0.310

0.187

0.075

8.32

Sandy clay

1.19

0.430

0.321

0.221

0.109

9.59

Silt Clay

0.90

0.479

0.371

0.251

0.056

10.38

Clay

0.60

0.475

0.378

0.251

0.090

12.13

Final version

Porosity [m3/m3]

Field capacity [m3/m3]

WL2021R00_130_9

Wilting point [m3/m3]

Residual moisture [m3/m3]

Pore size distribution index [-]

A3


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework Table 7 – Default parameters characterizing land use classes of the WetSpa model

Land use Classes 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

Interception capacity [mm] Max

Min

Root depth [m]

2 3 2 3 3 3 2 3 2 2 1 2 0 2 0 1 0

0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.5 0.0 0.5 0.0 0.2 0.0

1.0 1.0 1.0 1.0 1.0 0.8 0.8 1.0 0.8 0.8 0.5 0.8 0.5 0.8 0.1 0.5 0.1

Manning’ s coefficien t 0.40 0.60 0.40 0.80 0.55 0.40 0.40 0.50 0.40 0.30 0.50 0.35 0.05 0.35 0.05 0.10 0.05

Thresholds and configuration options The WetSpa GIS pre-process involves the use of several GIS function (PCRaster functions), many of them require the use of case-specific parameters and thresholds. To automatically perform the calculation, all these thresholds and options have to be selected before the start of the simulation. The user can do so by modifying the UserInput.py file in the “catchment folder”. For more information on parameters and thresholds stored in the UserInput.py file refer to the original WetSpa manual and to the PCRaster manual. Pre-process run and outputs After the inputs and the threshold selection, it is very easy to run the preprocessing: double click on runWetSpaPreprocess.bat. This action will call sequentially the GIS pre-processing and the IUH script. The GIS-preprocessing creates all the necessary maps for running the WetSpa model. All these maps are stored in the “parammaps” folder in PCRaster format. These maps can be visualized with PCRaster commands or with Aguila (http://pcraster.geo.uu.nl/projects/developments/aguila/). Outputs maps should be carefully checked before the model run, and parameters and/or thresholds should be modified whenever needed. The G-IUH script generates a stack of maps in the “parammaps” folder with prefix “iuh” (distributed mode) or iuh_watershed.txt in the “tables” folder (lumped mode). The script also overwrites the maximum length of the iuh (maxt) in the routingConfiguration.py file in the “catchment” folder. The stack of maps can be visualized with the function --timesteps of Aguila.

WetSpa model A4

WL2021R00_130_9

Final version


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

Input 1: meteorological time series The WetSpa model requires meteorological data (precipitation and potential evapotranspiration) for dynamic simulation in the form of PCRaster time series or as a stack of PCRaster maps. Meteorological data are expressed in [mm] and are stored in the “meteo” folder. Time series (.tss files) have a minimum of fourline header followed by the data organized in columns. The first column represents the time step in the simulation and the other columns are the values in every meteorological station (Figure 16). Recognized file names for meteorological inputs are: N.tss (time series), N0000000.001, N0000000.002, ... (map stack) for precipitation e.tss (time series), e0000000.001, e0000000.002, ... (map stack) for evapotranspiration ta.tss (time series), ta000000.001, ta000000.002, ... (map stack) for temperature. WetSpa model does not require temperature inputs, the iFramework however cannot run without this input. Fictitious time series or maps need therefore to be created. "Precipitation, eight series" 9 time station 1 station 2 station 3 1 7.5 10.9 4.6 2 4.4 3.7 0 3 0 0 0 4 0 0 0 5 5.4 3 5.4 6 0 0.4 0 Figure 1 – Example of N.tss

Input 2: global parameters An initial set of global (calibration) parameters needs to be selected according to the study area. To do so modify configparamstes.txt by adding a new line with your set of parameters, as for example: WETSPAclassic.paramset1::{'Kep':1.5,'K_run':1,'P_max':20.0,'Kss':1.0542748,'Ki':50,'g0':50,'g_max':282.461 24,'Kg':0.09782} or WETSPAlumped.paramset3::{'Kep':1.5,'K_run':1,'P_max':20.0,'Kss':1.0542748,'Ki':50,'g0':50,'g_max':282.46 124,'Kg':0.09782} and in configuration.txt: LOAD_PARAMETERSET = 1 PARAMETERSET_ID

Final version

= paramset1 (or paramset3 if lumped in the previous example)

WL2021R00_130_9

A5


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

For more information regarding the physical meaning and the range of values of the global parameters please refer to the WetSpa user manual. Thresholds and configuration options Options to configure in Configuration.txt: CATCHMENT = Kleine Nete (metadata) RUN_LUMPED = 0 or 1 mode

# 1 run the model in lumped mode, 0 run the model in distributed

#LOADMODULE = ...

no extra modules need to be loaded, these lines need to remain as comments (#)

MODELNAME =

WETSPAclassic (distributed) or WETSPAlumped (lumped model)

FLEXYM_BASELINEMODEL = SPAL_OVERLAND = SPAL_RIVER = LOAD_PARAMETERSET = 1 PARAMETERSET_ID =

These options are not used by the WetSpa model, no modifications required.

Needs to be set to 1, because the WetSpa model requires global parameters which are stored in configparametersets.txt

paramset1 or the name that was used to identify the set of parameters in configparametersets.txt

USE_DISTRIBUTED_PARAMS =

1 for the distributed model: the necessary parameter maps are loaded from the “parammaps” folder 0 for the lumped model: parameters are loaded from the configparams.txt file

TIMESTEPS =

length of one time step in seconds

NRTIMESTEPS =

total number of time steps in one simulation

SIMULATION_START_DATE =

dd/mm/yyyy (required by the WetSpa model for the canopy interception calculation

MAXT = length of the IUH, this value can be found in routingConfiguration.py file in the “catchment” folder after running the GIS pre-processing. METEODATA_AS_TSS = 1 time series in the “meteo” folder, 0 stack of maps in the “meteo” folder METEODATA_THIESSEN =

1 to distribute the time series in the “meteo” folder according to the Thiessen maps generated by the WetSpa GIS pre-processing in the “parammaps” folder, 0 otherwise

RUN_CALIBRATION = 0 RUN_FLEXYMVALIDATION = 0 CATCHMENT_AREA =

A6

expressed m2 and only used by the lumped models

WL2021R00_130_9

Final version


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

CREATE_FIGURES = 1 creates figures when the measured outlet discharge is saved in the “catchment” folder as disObs.tss 0 otherwise REPORTINGTIMES =

the time steps in which outputs are required need to be listed here, e.g. 1, 3, 10, 25, 26, 27, 27

OUTPUTSERIE = e.g. OUTPUTMAP = e.g.

variable_name file_name

variable description

TF

Total discharge at the outlet

dis

variable_name file_name

# variable description

v_infil

# Infiltration

infil

In the file_name field the full path can be given. Output files and maps will be saved in the folder identified by file_name, if nothing is specified, outputs will be saved in the “catchment” folder. All WetSpa state variables can be requested as outputs (maps –distributed mode- or timeseries –lumped and distributed mode-). A complete list of these variables can be found in Table 8. Table 8 – WetSpa state variables

Variable name

Unit

Physical meaning

v_pet

mm

potential evapotranspiration

v_interc

mm

intercepted precipitation

v_netp

mm

net precipitation (throughfall)

v_rs

mm

surface runoff

v_infil

mm

infiltration (from the surface to the unsaturated zone)

v_depre

mm

depression losses

v_perco

mm

percolation (groundwater recharge)

v_ri

mm

interflow (lateral flow)

v_rg

mm

groundwater discharge

v_ei

mm

evaporation from interception storage

v_ed

mm

evaporation from depression storage

v_es

mm

evaporation from the unsaturated zone (evapotranspiration)

v_eg

mm

evaporation from the saturated zone, due to capillary rise

s_int

mm

interception storage

s_dep

mm

depression storage

soil_moisture

mm

soil moisture content in the unsaturated zone

OF

m /s

overland flow (at the catchment outlet)

IF

3

m /s

interflow (at the catchment outlet)

BF

m3/s

baseflow (at the catchment outlet)

TF

m /s

total flow (at the catchment outlet)

Final version

3

3

WL2021R00_130_9

A7


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

Model run After the input preparation phase, for single model run double click on runFramework.bat. Outputs can be retrieved in the folder “output” or in the user-specified folder (in the configuration.txt file). For the distributed WetSpa model one extra output is available in the “output” folder: balance.txt. This file provides for every time step the catchment averages of the main water fluxes.

A8

WL2021R00_130_9

Final version


Effect of climate change on the hydrological regime of navigable water courses in Belgium Sub report 9 – The WetSpa model for the iFramework

Appendix B: iFramework modifications Modification of the iFramework code are necessary whenever the library of tools is extended, and code has to be merged with an older version to ensure that the newly develop code will run. Many files of the iFramework were modified to include the WetSpa model in the library of tools for the iFramework. Appendix B lists all these modifications with indication of the code line in the original iFramework code. Code lines are simply an indicative location of the changes as different version of the iFramework might have different line numbers. Modifications in ParameterHandling.py 1) line 65: in the definition of the Python list metaDataParameters, after the definition of BF, this line of code was added: ['TF',

0.0 ,

[0,1000],

'm3/s',

'total flow'],

2) line 71: in the definition of the Python list metaDataParameters, WetSpa parameters were added (extra 100 lines of code). Modifications in iFramework.py 1) line 7: extra functions and libraries imported: report, nominal, cellvalue (from pcraster), generatedNameT (from pcraster.framework), ifthen, areaaverage (from pcraster.operations) 2) line 53: in the availableModules definition, WetSpa modules were added (extra 19 lines of code) 3) line 279: 2 lines of code have been commented out (if a model does not calculate the total flow, these lines are not needed) # outputseries = [{'description':'TotalFlow','filename':'dis','seriename':'TotalFlowFinal'}] # outputmaps = [{'filename':'TF','seriename':'TotalFlowFinal'}]

4) line 303, 306, 307: “area.map” becomes “CloneScalar” 5) line 351: 4 lines of code have been commented out #if self.isLumped: #

models

self.TotalFlowFinal = (self.TotalFlow) * self.toCubicFinal # total flow = outflow of lumped

#else: #

self.TotalFlowFinal = self.RiverFlowCubic # after river routing, in cubic

6) line 474: some clean up of the original code is necessary. Most of the statements to load maps in loadStaticMaps method were commented out because they were too case specific and WetSpa does not calculate these maps but others. 7) line 533 and 560: in the methods loadMeteoData_initial() and loadMeteoData new code is available for distributing precipitation and potential evapotranspiration with the Thiessen polygon method. The option is available also for the lumped WetSpa model, in this case after distribution the data is averaged. Modifications in myFramework.py 1) line 291-297: these lines are commented out.

Final version

WL2021R00_130_9

A9


DEPARTMENT MOBILITY & PUBLIC WORKS Flanders hydraulics Research Berchemlei 115, 2140 Antwerp T +32 (0)3 224 60 35 F +32 (0)3 224 60 36 waterbouwkundiglabo@vlaanderen.be www.flandershydraulicsresearch.be


Turn static files into dynamic content formats.

Create a flipbook
WL2021R00_130_9.pdf by Vlaanderen-be - Issuu