Draft

Prepared for: RIZA Arnhem

FEWS- version 1.02

Improvements and adjustments

Report

November 2004

Q3618.00

Prepared for: RIZA Arnhem

FEWS-Rhine version 1.02

Improvements and adjustments

Albrecht Weerts & Hanneke Van de Klis

Report

November, 2004

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

Contents

1 Introduction...... 1—1

2 State Management SOBEK...... 2—1

2.1 Introduction...... 2—1

2.2 State handling FEWS general ...... 2—1

2.3 SOBEK ...... 2—2

3 Implementation of a new SOBEK model...... 3—1

3.1 Introduction...... 3—1

3.2 Important file ...... 3—1

3.3 Implementation new SOBEK model ...... 3—2

3.4 Implementation new SOBEK executable ...... 3—2

3.5 Implementation adapted SOBEK model...... 3—2

3.6 Implementation of an extra SOBEK model...... 3—3

3.7 Addition EKF module to SOBEK model ...... 3—4

3.8 Implementation adapted model with EKF ...... 3—4

3.9 Implementation new SOBEK model with EKF...... 3—4

3.10 References...... 3—4

4 Implementation of Extended Kalman Filter in FEWS Rhine...... 4—1

4.1 Introduction...... 4—1

4.1.1 Background...... 4—1

4.1.2 Problem definition ...... 4—1

4.1.3 Approach ...... 4—1

4.1.4 Outline of the report...... 4—1

4.2 Model description ...... 4—2

WL | Delft Hydraulics i

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

4.2.1 FEWS/SOBEK ...... 4—2

4.2.2 Sample data for assimilation...... 4—2

4.2.3 Data for calibration...... 4—3

4.2.4 Software version used...... 4—3

4.3 Calibration ...... 4—3

4.3.1 Introduction...... 4—3

4.3.2 Calibration of EKF ...... 4—4

4.3.3 Effect of EKF on forecast ...... 4—5

4.4 EKF in FEWS...... 4—10

4.5 Discussion, conclusions and recommendations...... 4—10

4.5.1 Conclusions ...... 4—10

4.5.2 Recommendations...... 4—10

4.6 References...... 4—11

5 AR Error Module for FEWS-Rhine...... 5—1

5.1 Role in FEWS...... 5—1

5.2 Functionality described...... 5—1

5.3 Data Requirements...... 5—2

5.3.1 Input time series data...... 5—2

5.3.2 Output time series data ...... 5—2

5.3.3 Configuration data ...... 5—3

5.3.4 Current configuration...... 5—3

Conditions and Assumptions ...... 5—6

5.3.5 Time series definitions...... 5—6

5.3.6 AR estimation ...... 5—6

5.3.7 Box-Cox transformations...... 5—6

5.3.8 Application of the Module...... 5—7

WL | Delft Hydraulics ii

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

5.4 References...... 5—10

6 Other adjustments ...... 6—1

6.1 Multiple numerical weather prediction (NWP) ...... 6—1

6.2 Adjusted interpolation rainfall forecast ...... 6—2

6.3 Adjusted interpolation rainfall update ...... 6—2

7 Conclusion and Discussion...... 7—1

Appendices: A Listings of .csv files ...... A–1

B Input file Extended Kalman Filter ...... B–1

WL | Delft Hydraulics iii

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

1 Introduction

Through RI-3987, RIZA Arnhem requested WL | Delft Hydraulics to improve and adjust FEWS-Rhine. FEWS-Rhine is a flood forecasting system and must be able to extend the lead time for prediction of the water level at Lobith from 2 to 4 days with a certain accuracy. December 2002, a prototype was developed and finished together with the BfG, BWG, SMHI and WL | Delft Hydraulics. The idea is to perform daily calculations with this prototype. However, some issues need to be solved before this daily routine will be possible. Therefore the nine 9 points below needed to be dealt with

1) State management SOBEK model (see chapter 2) 2) SOBEK manual (see chapter 3) 3) Enable multiple forecasts (see chapter 6.1) 4) Implementation of Kalman Filtering (see chapter 4) 5) Implementation of Error Correction (see chapter 5) 6) Solve database problem (solved) 7) Adjust quantitative precipitation forecast interpolation (see chapter 6.2) 8) Adjust interpolation precipitation update interpolation (see chapter 6.3) 9) Provide a FEWS-Rhine Course for RIZA employees (held December 9 2003)

Seven of the nine points are described in following chapters. The database problem has been solved and the FEWS-Rhine course has been held Friday December 12 2003 at RIZA Arnhem.

We will conclude with a short discussion of issues that may need future attention.

This document has been written by WL | Delft Hydraulics for the client RIZA Arnhem, within the framework of the project ‘Uitvoeren van aanpassingen en verbeteringen in FEWS Rijn’ (Q3618). The contact of RIZA Arnhem is Eric Sprokkereef. The project leader at WL | Delft Hydraulics is Albrecht Weerts. Hanneke van de Klis, Onno van de Akker, Erik de Rooij, Paolo Reggiani and Albrecht Weerts are project team members. Micha Werner is reviewer of the project.

WL | Delft Hydraulics 1—1

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

2 State Management SOBEK

2.1 Introduction

In version 1.0 of FEWS Rhine the SOBEK models have default initial states. However, SOBEK is able to produce restart files which can be used as initial condition for a following run. This option needs to be enabled in the improved version of FEWS-Rhine.

2.2 State handling FEWS general

The implementation is according to the implementation of the state management of the HBV model. Figures 2.1, 2.2 and 2.3 show how it has been implemented.

Cold Start

HBV

Groundwater

SOBEK

T0-Tcs T0-30 T0-8 T0 T0+4 time

Figure 2.1 Cold Start FEWS-Rhine.

Warm Start

HBV Groundwater

SOBEK

T0-30 T0 T0+4 time T0-Tws

Figure 2.2 Warm start FEWS-Rhine

WL | Delft Hydraulics 2—1

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

Procedure

Warm starts

Cold start

time T1-30 T1 T2 T3 T4 T5 T6 T7 T8 T9

Figure 2.3 Procedure

First, a cold start will be necessary (Figure 2.1). This will be followed by a warm start (Figure 2.2), however this is only possible (Figure 2.3) if the initial states for a warm start are available. This means that a number of cold runs are necessary before one switches to a warm start.

2.3 SOBEK

After a SOBEK run two files are produced sobekrst.nda en sobekrst.ndf in the de\sobek directory. These to files must be copied to sobekrst.rda and sobekrst.rdf respectively, (See also Appendix E (Restart)of the SOBEK River Manual, in the model1_defaultstates, model2_defaultstates or the modelekf_defaultstates directory. FEWS will search for restart files which are between (warm start-8)-(warm start) days old if there are multiple restart files a box will show (similar to HBV initial states) and the users will need to chose which restart files will be used. The state search can be configured in the models.properties files in the de\sobek directory be changing the statesearchhours.

Listing of the models.properties file

models=model1 model2 model3

model1.title=Andernach-Lobith model1.fnmName=sobekModel1.fnm model1.mdaName=sobekModel1.mda model1.hisName=flowhis.his model1.updateInputDef=update_input_model1.csv model1.updateOutputDef=update_output_model1.csv model1.forecastInputDef=forecast_input_model1.csv model1.forecastOutputDef=forecast_output_model1.csv model1.updateRunTriggerSeriesID=none model1.forecastRunTriggerSeriesID=I-0096-Q.fh

model1.updateInputTransform=update_input_transform_model1.csv model1.updateOutputTransform=update_output_transform_model1.csv model1.forecastInputTransform=forecast_input_transform_model1.csv model1.forecastOutputTransform=forecast_output_transform_model1.csv model1.isStateHandlingEnabled=true model1.defaultStatesDir=de/sobek/model1_defaultstates

WL | Delft Hydraulics 2—2

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

model1.stateSearchHours=192 model1.updateModules=RIVR FLOW model1.forecastModules=RIVR FLOW model1.updateSobekSimName=SobekSim.exe model1.forecastSobekSimName=SobekSim.exe

model2.title=Maxau-Lobith model2.fnmName=sobekModel2.fnm model2.mdaName=sobekModel2.mda model2.hisName=flowhis.his model2.updateInputDef=update_input_model2.csv model2.updateOutputDef=update_output_model2.csv model2.forecastInputDef=forecast_input_model2.csv model2.forecastOutputDef=forecast_output_model2.csv model2.updateRunTriggerSeriesID=none model2.forecastRunTriggerSeriesID=I-0096-Q.fh

model2.updateInputTransform=update_input_transform_model2.csv model2.updateOutputTransform=update_output_transform_model2.csv model2.forecastInputTransform=forecast_input_transform_model2.csv model2.forecastOutputTransform=forecast_output_transform_model2.csv model2.isStateHandlingEnabled=true model2.defaultStatesDir=de/sobek/model2_defaultstates model2.stateSearchHours=192 model2.updateModules=RIVR FLOW model2.forecastModules=RIVR FLOW model2.updateSobekSimName=SobekSim.exe model2.forecastSobekSimName=SobekSim.exe

model3.title=Maxau-Lobith met EKF model3.fnmName=sobekModelEKF.fnm model3.mdaName=sobekModelEKF.mda model3.hisName=flowhis.his model3.updateHisName=kafhmap.his model3.forecastHisName=flowhis.his model3.updateInputDef=update_input_modelEKF.csv model3.updateOutputDef=update_output_modelEKF.csv model3.forecastInputDef=forecast_input_modelEKF.csv model3.forecastOutputDef=forecast_output_model2.csv model3.updateRunTriggerSeriesID=none model3.forecastRunTriggerSeriesID=I-0096-Q.fh

model3.updateInputTransform=update_input_transform_modelEKF.csv model3.updateOutputTransform=update_output_transform_modelEKF.csv model3.forecastInputTransform=forecast_input_transform_modelEKF.csv model3.forecastOutputTransform=forecast_output_transform_model2.csv model3.isStateHandlingEnabled=true model3.defaultStatesDir=de/sobek/modelEKF_defaultstates model3.stateSearchHours=192 model3.updateModules=RIVR FLOW KALM model3.forecastModules=RIVR FLOW model3.updateSobekSimName=SobekSim.exe model3.forecastSobekSimName=SobekSimEKF.exe

WL | Delft Hydraulics 2—3

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

3 Implementation of a new SOBEK model

3.1 Introduction

This chapter describes how a new SOBEK model can be implemented in FEWS Rhine.

3.2 Important file

All files required for a SOBEK simulation within Delft FEWS are located in the directory ..\sobek. Below, we describe the files in this directory that are important in the light of adapting or replacing a SOBEK model. In this, the italic parts of file names stands for the name of the particular SOBEK model (e.g. ‘sobekmodel.fnm’ could be ‘sobekmodel1.fnm’)

File name File content Edit

Sobeksim.exe Executable to actually perform a SOBEK must be simulation. supplied Models.properties Link between required files and FEWS text editor variables, per available model. sobekmodel.fnm List of files required for or produced during text editor SOBEK simulation. sobekmodel.mda/mdf NEFIS files containing schematisation of SOBEK SOBEK model ‘sobekmodel’. modelling environment Forecast_input_model. Definitions of input time series for forecast text editor csv simulation, and boundary locations. See Appendix A for detailed description. Forecast_input_transf Definitions of transformations of input time text editor orm_model.csv series (e.g. scaling) for forecast simulation. Forecast_output_model Definitions of output series resulting from text editor .csv forecast simulation. See Appendix A for detailed description. Forecast_output_trans Definitions of transformations of output text editor form_model.csv series resulting from forecast simulation. Update_input_model.cs Definitions of input time series for update text editor v simulation, and boundary locations. See Appendix A for detailed description. Update_input_transfor Definitions of transformations of input time text editor m_model.csv series (e.g. scaling) for update simulation.

WL | Delft Hydraulics 3—1

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

File name File content Edit Update_output_model.c Definitions of output series resulting from text editor sv update simulation. See Appendix A for detailed description. Update_output_transfo Definitions of transformations of output text editor rm_model.csv series resulting from update simulation.

parsetxt.exe Text parser to add EKF input to the .mda must be and .mdf files of the basic SOBEK model. supplied InputEKF.txt ascii file containing the input required for text editor the EKF module of ‘sobekModelEKF’.

3.3 Implementation new SOBEK model

In this chapter we describe the steps required to implement different types of adaptation to the SOBEK model in FEWS Rhine. In the standard FEWS Rhine system, three SOBEK models are available: the so-called Andernach-Lobith model (‘sobekmodel1’), the Maxau-Lobith model (‘sobekmodel2’) and the Maxau-Lobith model with Extended Kalman Filter (EKF) (‘sobekmodelEKF’).

3.4 Implementation new SOBEK executable

In case a new executable of the SOBEK simulator (sobeksim.exe) has to be implemented in Delft FEWS, do the following: 1. Copy the new sobeksim.exe into the directory ..\sobek. 2. If necessary, update the available SOBEK model(s) to this new version using the SOBEK instrument. 3. Implement the updated SOBEK model(s) into FEWS Rhine following the steps described in section 3.2.

3.5 Implementation adapted SOBEK model

In case a SOBEK model has been adapted which is already available within Delft FEWS, do the following to replace the old model by the adapted version: 1. Use the SOBEK modelling environment to create the .mda and .mdf (NEFIS) files containing the schematisation of the adapted model. In case the EKF model is active, the required information should be added to the new .mda and .mdf files through a text parser (see Chapter 4). In this, note the following: a) The SOBEK wrapper in FEWS writes time series (e.g. of boundary conditions) to the .mda file (Van den Akker and Van Dijk, 2003). The maximum length of this series, however, is determined by the number of time steps defined in the .mda and .mdf files. In other words, for FEWS the maximum number of time steps limits the maximum length of the update period as well as the forecast period. In case of the existing models ‘sobekmodel1’ and ‘sobekmodel2’ this maximum period is 30 days.

WL | Delft Hydraulics 3—2

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

b) The explicit starting date of a simulation defined through the SOBEK modelling environment is not important, since this date is replaced by the SOBEK wrapper in FEWS. c) Within FEWS, data series are used with time steps of one hour. The numerical time step defined within a SOBEK model is not relevant to FEWS, as long as the model output series are defined with time steps of one hour. d) The SOBEK wrapper reads simulation results from the .his file. This implies that the output of the SOBEK model should be the water level and/or the discharge at defined locations at time intervals of one hour. 2. Copy the new .mda and .mdf files into the directory ..\sobek of FEWS Rhine under the appropriate name (e.g. sobekmodel1.mda, sobekmodel1.mdf). 3. If the locations of the model boundaries have been changed: adapt the files forecast_input_modelname.csv and update_input_modelname.csv by replacing the former boundary locations by the new ones and linking these locations to the appropriate time series in the database (see Appendix A). In case time series at new locations are required, which are not yet available in the database, the new locations and appropriate time series have to be added to the database. Van den Akker and Van Dijk (2003) describe the procedure for this adaptation. 4. If other output of the SOBEK simulation is required: adapt the files update_output_modelname.csv and forecast_output_model- name.csv.

3.6 Implementation of an extra SOBEK model

In case a SOBEK model has to be added to the models already available within FEWS Rhine (e.g. sobekmodel3), do the following: 1. Use the SOBEK modelling environment to create the .mda and .mdf (NEFIS) files containing the schematisation of the adapted model (see Section 3.2). 2. Copy the .mda and .mdf files containing the schematisation of the new model into the directory ..\sobek with a distinguishing name (e.g. sobekmodel3.mda and sobekmodel3.mdf). 3. Add the required information about the new SOBEK model to the file models.properties: a) Add the model name to the list ‘models = model1 model2 …’, b) Link the FEWS variables to the appropriate files. The easiest way to do this is by copying the information about an existing model and adapting the model names (e.g. ‘model1.title’ becomes ‘model3.title’). 4. Create a .fnm file for the new SOBEK model (e.g. sobekmodel3.fnm) by copying an existing .fnm file and edit it (adapt the names of the .mda and .mdf files). 5. Create the .csv files by copying existing files (e.g. update_input_model1.csv becomes udate_input_model3.csv). Edit these files according to the schematisation and the requirements of the new model (see Section 3.2).

Now the new model is available to apply in a FEWS simulation. By choosing the newly added model for the hydrodynamic calculations, the output of the SOBEK simulation will become available through the User Interface of FEWS, similar to the existing models.

WL | Delft Hydraulics 3—3

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

3.7 Addition EKF module to SOBEK model

One of the available SOBEK models in FEWS Rhine (i.e. ‘SobekModelEKF’) includes the Extended Kalman Filter module (EKF) of SOBEK River. In this chapter we describe the steps required to implement an adapted version of this model or other models that include EKF.

3.8 Implementation adapted model with EKF

Suppose a SOBEK model with EKF has been adapted, either concerning the basic model or the specific EKF input. In that case, Step 1 of Section 3.2 should be extended as follows: 1. Use the SOBEK modelling environment to create the .mda and .mdf (NEFIS) files containing the schematisation of the basic model, i.e. without the EKF module. See Section 3.2 for the remarks made. 2. Use the text parser (parsetxt.exe) to add the information required by the EKF module to the new .mda and .mdf files (resulting from Substep 1.1) (Command = parsetxt SobekModelBasic InputEKF). This action results in the required SOBEK model including EKF: InputEKF.mda and InputEKF.mdf. Rename these files as desired (e.g. SobekModelEKF.mda and SobekModelEKF.mdf).

Note that the information in InputEKF.txt represents a Kalman Filter calibrated with the Maxau-Lobith model (‘Sobekmodel2’) (Weerts et al., 2004).

3.9 Implementation new SOBEK model with EKF

In case a new SOBEK model (different from the Maxau-Lobith model) has to be equipped with an EKF, the parse parsetxt.exe can be used to add the EKF input to the basic model (as described in Section 3.1). The information required for the EKF module must be supplied by an ASCII file similar to InputEKF.txt. The structure of this file is described by (Kuipers, 2001). Note that InputEKF.txt itself cannot be used for an arbitrary SOBEK model.

3.10 References

Kuipers, J., 2001. SOBEK, addendum for Kalman module to user manual ascii input file. Report S-MI-002.WP. Delft, WL | Delft Hydraulics and Rijkswaterstaat/RIZA. Van den Akker, O. and M.J. van Dijk, 2003. Setting up a FEWS system. Report of WL | Delft Hydraulics.

WL | Delft Hydraulics 3—4

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

4 Implementation of Extended Kalman Filter in FEWS Rhine

4.1 Introduction

4.1.1 Background

In order to improve the predictions of the water level and discharge at Lobith, RIZA has asked WL | Delft Hydraulics (WL) to apply a Kalman Filter technique to the hydrodynamic model within the flood forecasting system FEWS Rhine (RI-3987). Kalman Filter is a well- known data-assimilation technique to improve model results by adapting the modelled river state at several locations to measured river states (Weerts and Van der Klis, 2003).

Based on the experience with Kalman Filter applied to FEWS Rhine within the context of R&D research (Weerts and Van der Klis, 2003), we expect a significant improvement of the forecasted river state at Lobith within the first four forecasted days.

4.1.2 Problem definition

The purpose of this project is to apply the Extended Kalman Filter Module (EKF) of SOBEK River to the hydrodynamic SOBEK model in FEWS Rhine, such that the prediction of the water level and the discharge of the Rhine at Lobith is improved. This implies the calibration of the Extended Kalman Filter of SOBEK River to the concerning model.

The data that can be used to feed the Kalman Filter are the data received by RIZA from the BfG. Sample locations have been chosen in consultation with RIZA.

4.1.3 Approach

In this project, we use the final results of the R&D research Data assimilation methods for Delft FEWS (Weerts and Van der Klis, 2003). In this research, we applied EKF to a slightly adapted version of the SOBEK model in FEWS Rhine. The adaptations required for the current project concern the extension of the EKF to the complete reach of the river Rhine between Maxau and Lobith. Furthermore, where we used discharge samples to feed the EKF in the preceding R&D work, in this project we directly use the water level samples, as received by RIZA from the BfG.

4.1.4 Outline of the report

In Chapter 4.2, we give some necessary information about the SOBEK model, the EKF application and the data used.

WL | Delft Hydraulics 4—1

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

In Chapter 4.3 we present the results of the calibration procedure of the EKF. For a more detailed description we refer to (Weerts and Van der Klis, 2003). In this chapter we also illustrate the improvement of the forecasts at Lobith achieved by the EKF. The implementation of the SOBEK model including the EKF module in FEWS Rhine is described in Chapter 4.4. Finally, in Chapter 4.5 we give our conclusions and recommendations for further application of the Extended Kalman Filter, as well as the required procedure in updating an existing SOBEK model with Extended Kalman Filtering functionality.

Appendix B contains an example of the ascii input file containing the required information for the calibrated EKF.

4.2 Model description

4.2.1 FEWS/SOBEK

The Kalman Filter interacts with the hydrodynamic model within FEWS Rhine: the SOBEK-River model ‘Maxau-Lobith’. This model runs from Maxau as the upstream boundary to Werkendam, Krimpen a/d Lek and Het Ketelmeer at the downstream Rhine branches within the Netherlands. The most important location concerning the flood forecasting is Lobith.

Most tributaries to the river Rhine have been schematised as lateral discharge series. To quantify these lateral discharges within the FEWS system, one can choose between available measurements and the results of the rainfall-runoff model used in FEWS Rhine (i.e. the HBV model). The only exception is the river Mosel, which is also schematised within the SOBEK model, with the upstream boundary at Cochem.

The Maxau-Lobith model consists of 1515 grid points, where the German part of the river contains approximately one grid point per kilometre, and the Dutch part of the river one grid point per 500 m. The time step in the model is one hour.

4.2.2 Sample data for assimilation

We used 7 locations along the main river Rhine to update the modelled river state (i.e. the discharge and the water levels) by filtering available water level measurements. These are the following locations, which correspond with existing measurement stations in : • Speyer • Worms • Kaub • Andernach • Köln • Wesel • Lobith

From each of these stations RIZA receives hourly water level measurements.

WL | Delft Hydraulics 4—2

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

4.2.3 Data for calibration

To calibrate the Extended Kalman Filter module of SOBEK-River, we used water level measurements of the 7 sample locations (Section 4.2.2), from 15 December 2000 to 9 July 2004. We received these data from RIZA. In earlier R&D work on this subject, we used similar water level measurements of the flood event of 1995 (Weerts and Van der Klis, 2003).

To feed the EKF the water level samples are used. For comparison with the modelled discharges we translated the water levels in to discharges through the concerning rating curves.

4.2.4 Software version used

The EKF has been applied to the hydraulic model within FEWS Rhine 1.02. This FEWS version contains SOBEK-River version 2.221. This SOBEK version supports the application of EKF to models up to 1600 grid points.

4.3 Calibration

4.3.1 Introduction

The Kalman Filter improves the estimate of the river state throughout the model by combining the model results with measurements. In this, the uncertainty both in the measurements and the modelled state is used. The uncertainty in the modelled river state at a certain moment in time is estimated by the Kalman Filter module, based on user defined uncertainties in the model (e.g. in the parameters, the boundary conditions, the model equation). For a more detailed description of the Kalman Filter we refer to (Weerts and Van der Klis, 2003).

The definition of uncertainties in the model is usually difficult and more or less subjective. Therefore, the EKF must be calibrated before it can be used. This implies that the uncertainties in the model must be defined such that the resulting uncertainty in the model state is reasonable. The calibration of the EKF is an iterative process, based on rather rough knowledge of the uncertainties in model parameters, boundary conditions, etc. and of the uncertainty in the modelled river state. The calibration results are shown in Section 4.3.2.

After calibrating the EKF it can be applied to improve the forecasted water level and discharge at Lobith. In Section 4.3.3 we illustrate this improvement by applying the EKF to two historical flood events.

WL | Delft Hydraulics 4—3

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

4.3.2 Calibration of EKF

We start the calibration of the model uncertainty in this project with the results of the preceding R&D work Data assimilation method for Delft FEWS (Weerts and Van der Klis, 2003). In this R&D work, we applied EKF to a reduced version of the Maxau-Lobith model, with sample locations between Andernach and Lobith. Therefore, the additional work done within this project consists of adapting the selection of sample locations and smoothing the influence of each of these locations over the entire model reach.

In the preceding R&D work we used data of the 1995 flood event to calibrate the EKF. In order to broaden the base of the calibration, we continued the calibration process with data of the flood season February 2002.

Figures 4.1 and 4.2 show the results of the calibration. We notice the following: • The estimated uncertainty bounds of the modelled water level enclose the measured water levels and also the measurement uncertainty, • The estimated uncertainty bounds of the discharge enclose the discharge samples (derived from the measured water levels) and they are of the same magnitude as the uncertainty around the discharge samples.

Based on these observations we conclude that the estimated model uncertainty is acceptable. In the following section we illustrate the effect of this calibrated EKF on the forecasts.

The uncertainty bounds around the model results should be interpreted as a ‘parameter’ for the Kalman Filter, not as a considered representation of the actual model noise. To examine and describe the actual model noise, other techniques are required (e.g. Weerts, 2003).

16

15

14

13

12 water level at Lobith [m]

11

modelled H model uncertainty high 10 model uncertainty low data data uncertainty high data uncertainty low

9 10 12 14 16 18 20 22 24 26 28 30 day in February 2002 Figure 4.1: Model uncertainty versus measurement uncertainty of the water level at Lobith, after calibration of EKF for the flood event of 2002. The uncertainty bounds are defined as twice the standard deviations. Note: in this simulation the river state has not been updated using the measurements.

WL | Delft Hydraulics 4—4

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

9000

8000

7000 /s] 3

6000

5000 discharge at Lobith [m

4000

modelled Q model uncertainty high 3000 model uncertainty low data data uncertainty high data uncertainty low 2000 10 12 14 16 18 20 22 24 26 28 30 day in February 2002 Figure 4.2: Model uncertainty versus measurement uncertainty of the discharge at Lobith, after calibration of EKF for the flood event of 2002. Note: in this simulation the river state has not been filtered by the measurements. The discharge samples have been derived from the water level samples.

4.3.3 Effect of EKF on forecast

Now the EKF module has been calibrated, it can be applied to improve the forecast of the river state. The figures below show the influence of the EKF at Lobith for some forecast periods in 2004 and 2001. The vertical lines in the figures represent the start of the forecast periods. The figures show one sample per day (from the hourly series available) for comparison.

We notice the following: • In the update period the filtered water levels follow the samples closely. The difference between the filtered discharge and the discharge samples is slightly larger. This is explained by the fact that the EKF is fed by water level samples, indirectly resulting in an improvement of the modelled discharge. • In the forecast period the filtered water level and discharge are closer to the samples, suggesting an improvement of the results. This improvement disappears after 4-5 days. Note that in the forecast period the samples are only shown for comparison. Obviously, they have not been used by the model. • The magnitude of the effect of EKF varies in time, depending on the accuracy of the SOBEK model itself.

WL | Delft Hydraulics 4—5

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

15 filtered H non−filtered H samples 14

13

12

11

10 water level at Lobith [m]

9

8

7 5 10 15 20 25 days in January Figure 4.3: Effect of EKF on water level (H) in update and forecast period (divided by vertical line), January 2004.

8000

7000

6000 /s] 3

5000

4000 discharge at Lobith [m

3000

filtered Q non−filtered Q 2000 samples

1000 5 10 15 20 25 days in January Figure 4.4: Effect of EKF on discharge (Q) in update and forecast period (divided by vertical line), January 2004.

WL | Delft Hydraulics 4—6

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

15

14

13

12

11

10 water level at Lobith [m]

9 filtered H non−filtered H 8 samples

7 5 10 15 20 25 days in January Figure 4.5: Effect of EKF on water level (H) in update and forecast period (divided by vertical line), January 2004.

8000

7000

6000 /s] 3

5000

4000 discharge at Lobith [m

3000

filtered Q non−filtered Q 2000 samples

1000 5 10 15 20 25 days in January Figure 4.6: Effect of EKF on discharge (Q) in update and forecast period (divided by vertical line), January 2004.

WL | Delft Hydraulics 4—7

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

16

15.5

15

14.5

14

13.5 water level at Lobith [m]

13 filtered H non−filtered H 12.5 samples

12 15 20 25 30 35 days in March 2001 Figure 4.7: Effect of EKF on water level (H) in update and forecast period (divided by vertical line), March 2001.

9000

8500

8000

7500 /s] 3 7000

6500

6000 discharge at Lobith [m 5500

5000 filtered Q non−filtered Q 4500 samples

4000 15 20 25 30 35 days in March 2001 Figure 4.8: Effect of EKF on discharge (Q) in update and forecast period (divided by vertical line), March 2001.

WL | Delft Hydraulics 4—8

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

16

15.5

15

14.5

14

13.5 water level at Lobith [m]

13

filtered H non−filtered H 12.5 samples

12 15 20 25 30 35 days in March 2001 Figure 4.9: Effect of EKF on water level (H) in update and forecast period (divided by vertical line), March 2001.

9000

8500

8000

7500 /s] 3 7000

6500

6000 discharge at Lobith [m 5500

5000 filtered Q non−filtered Q samples 4500

4000 15 20 25 30 35 days in March 2001 Figure 4.10: Effect of EKF on discharge (Q) in update and forecast period (divided by vertical line), March 2001.

WL | Delft Hydraulics 4—9

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

4.4 EKF in FEWS

To implement the EKF in FEWS, we added a third SOBEK model to FEWS Rhine: SOBEKModelEKF, i.e. the Maxau-Lobith model including the EKF as calibrated in this project. In order to be able to run a simulation with this model we replaced the sobeksim.exe by the adapted version (Section 4.2.4).

Chapter 3 contains more information concerning the implementation of EKF in FEWS Rhine.

4.5 Discussion, conclusions and recommendations

4.5.1 Conclusions

In this project, we calibrated the EKF model in SOBEK River to the Maxau-Lobith model in the flood forecasting system FEWS Rhine. The resulting Maxau-Lobith model with EKF has been implemented into FEWS Rhine.

We conclude the following: • The EKF results in an improvement of the modelled river state at Lobith within the first 4-5 forecasted days. • The magnitude of this improvement varies in time.

4.5.2 Recommendations

To further improve the forecasts of the river state at Lobith, we recommend exploring possibilities to combine EKF with other data assimilation techniques, such as input- and output correction (Weerts and Van der Klis, 2003).

The EKF causes a significant increase of the simulation time of the Maxau-Lobith model. This can be compensated by, for example, restricting the update period of the simulation or reducing the number of grid points in the model in the Dutch Rhine branches.

We recommend to change, in due time, from Extended Kalman Filter to Ensemble Kalman Filter. This will simplify the maintenance of the model. Comparisons between the two Kalman Filter techniques, based on the Maxau-Lobith model, have already been made (El Serafy, 2003).

WL | Delft Hydraulics 4—10

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

4.6 References

Buiteveld, H. and Sprokkereef, E., 2003. Opdrachomschrijving: Uitvoeren van aanpassingen en verbeteringen in FEWS Rijn. Rijkswaterstaat, RIZA. 25 september 2003. El Serafy, G.Y., 2003. Comparison of EKF and EnKF in SOBEK River. WL | Delft Hydraulics, R&D report X0281.30. Kuipers, J., 2001. SOBEK, addendum for Kalman module to user manual ascii input file. Report S-MI-002.WP. Delft, WL | Delft Hydraulics and Rijkswaterstaat/RIZA. Van der Klis, Hanneke, 2004. Implementation SOBEK model in FEWS Rhine. WL | Delft Hydraulics, project Q3618. Weerts, A.H., 2003. Confronting uncertainty in Flood Forecast Model Quantities. WL | Delft Hydraulics. R&D report Q3436. Weerts, Albrecht and Van der Klis, Hanneke, 2003. Data assimilation methods for Delft FEWS. WL | Delft Hydraulics, R&D report Q3450.

WL | Delft Hydraulics 4—11

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

5 AR Error Module for FEWS-Rhine

The internal error correction of the HBV model is not working correctly. WL | Delft Hydraulics investigated error correction applied to the HBV model in FEWS-Rhine. An error correction method as investigated by WL | Delft Hydraulics needs to be implemented in the improved FEWS-Rhine version.

The quality of the flood forecasts will, in general, depend on the quality of the simulation model, the accuracy of the precipitation and boundary forecasts, and the efficiency of the data assimilation procedure (Madsen, et al. 2000). Until now, no data assimilation methods were available in FEWS-Rhine. This chapter describes the AR error module that can be used for error correction/ updating of the HBV model results in FEWS-Rhine.

5.1 Role in FEWS

The error modelling module is a generic forecasting module. The module is used to improve the reliability of forecast by attempting to identify the structure of the error a forecasting module makes during the modelling phase where both the simulated and observed values are available, and then applying this structure to the forecast values. This is under the assumption that the structure of the error remains unchanged.

Because of the structure of the forecasting system where models are first run over a historic period and then over a forecast period the error modelling module runs in two phases, (i) during the historic period where the structure of the error model is determined, and (ii) during the forecast phase where the error model is applied in correcting the forecast time series.

The module applies an AR model of the error. The order of the statistical model may either be selected by the user (through configuration), or derived automatically. In this second mode the user must indicate the maximum order of each of these parts.

To stabilise the identification of the error model, transformations to the model residuals may be applied before identifying the model:

1. no transformation 2. transforming the series by subtracting the mean 3. Box-Cox transformation, in this case the user must also identify the lambda parameter to be used. A lambda of zero indicates a natural logarithm transformation

5.2 Functionality described

This utility is applied to improve model time series predictions through combining modelled series and observed series. It uses as input an output series from a forecasting module (typically discharge from a routing or rainfall-runoff module) and the observed series at the same location. An updated series for the module output is again returned by the module.

WL | Delft Hydraulics 5—1

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

Updating is applied through application of an error model to the residuals between module output and observed series. This error model is applied also to the forecast data from this module to allow correction of errors in the forecast.

5.3 Data Requirements

5.3.1 Input time series data

To apply the error modelling module, time series data are required for both the simulated historical and the measured historical period at a given location, as well as the forecast time series at this location. Under normal configuration, these time series will be of the same parameter.

Time series Parameter (example) View period Simulated values Q.simulated.historic Historic period (e.g. -2000 hours to start of forecast) Observed values Q.obs Historic period (e.g. -2000 hours to start of forecast) Forecast values Q.simulated.forecast Forecast period (e.g. start of forecast to +48-240 hours)*

* Note: The length of the forecast period may be zero. If this is the case, then the error modeling module will consider only the historic period.

5.3.2 Output time series data

The error modelling module returns two time series, an update time series for the historic period, and an updated time series for the forecast period. In principal the updated time series over the historic period is almost identical to the observed time series.

Time series Parameter (example) View period Updated values (historic) Q.updated.historic Historic period (e.g. -2000 hours to start of forecast) Updated values (forecast) Q.updated.forecast Forecast period (e.g. start of forecast to +48-240 hours)*

WL | Delft Hydraulics 5—2

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

5.3.3 Configuration data

The configuration of the error modelling module is used to determine its behaviour in establishing the statistical model of the error and how this is applied to derive the updated series

Configuration items • Order_AR (maximum) order of the AR component; • Order_MA 0; • Order_Sel Option to determine if the orders are to be derived automatically (with the maxima as defined above) or as given; • Transform Option to apply a transformation to residuals. This may either be “none”, “mean” or “boxcox”; • Lambda A required parameter for the “boxcox” transformation option.

5.3.4 Current configuration

Below the listing of the current configuration.

Listing of the ErrorModel.ini file in the de\errormodel directory [General] NrErrorModelSets=10

[ErrorModelSet1] HistoricSimulatedId=H-0659-Q.uh ForecastSimulatedId=H-0659-Q.fh MeasuredId=H-0659-Q.m HistoricUpdatedId=H-0659-Q.uah ForecastUpdatedId=H-0659-Q.fah OrderSelection=0 Order_AR=2 Order_ARMA=0 SubtractMean=1 BoxCoxTransformation=-1 Lambda=0.5

[ErrorModelSet2] HistoricSimulatedId=H-0888-Q.uh ForecastSimulatedId=H-0888-Q.fh MeasuredId=H-0888-Q.m HistoricUpdatedId=H-0888-Q.uah ForecastUpdatedId=H-0888-Q.fah OrderSelection=0 Order_AR=2 Order_ARMA=0 SubtractMean=1 BoxCoxTransformation=-1 Lambda=0.5

[ErrorModelSet3] HistoricSimulatedId=H-0913-Q.uh ForecastSimulatedId=H-0913-Q.fh MeasuredId=H-0913-Q.m

WL | Delft Hydraulics 5—3

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

HistoricUpdatedId=H-0913-Q.uah ForecastUpdatedId=H-0913-Q.fah OrderSelection=0 Order_AR=2 Order_ARMA=0 SubtractMean=1 BoxCoxTransformation=-1 Lambda=0.5

[ErrorModelSet4] HistoricSimulatedId=H-0900-Q.uh ForecastSimulatedId=H-0900-Q.fh MeasuredId=H-0900-Q.m HistoricUpdatedId=H-0900-Q.uah ForecastUpdatedId=H-0900-Q.fah OrderSelection=0 Order_AR=2 Order_ARMA=0 SubtractMean=1 BoxCoxTransformation=-1 Lambda=0.5

[ErrorModelSet5] HistoricSimulatedId=H-0957-Q.uh ForecastSimulatedId=H-0957-Q.fh MeasuredId=H-0957-Q.m HistoricUpdatedId=H-0957-Q.uah ForecastUpdatedId=H-0957-Q.fah OrderSelection=0 Order_AR=2 Order_ARMA=0 SubtractMean=1 BoxCoxTransformation=-1 Lambda=0.5

[ErrorModelSet6] HistoricSimulatedId=H-0984-Q.uh ForecastSimulatedId=H-0984-Q.fh MeasuredId=H-0984-Q.m HistoricUpdatedId=H-0984-Q.uah ForecastUpdatedId=H-0984-Q.fah OrderSelection=0 Order_AR=2 Order_ARMA=0 SubtractMean=1 BoxCoxTransformation=-1 Lambda=0.5

[ErrorModelSet7] HistoricSimulatedId=H-0908-Q.uh ForecastSimulatedId=H-0908-Q.fh MeasuredId=H-0908-Q.m HistoricUpdatedId=H-0908-Q.uah ForecastUpdatedId=H-0908-Q.fah OrderSelection=0 Order_AR=2 Order_ARMA=0 SubtractMean=1 BoxCoxTransformation=-1 Lambda=0.5

WL | Delft Hydraulics 5—4

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

[ErrorModelSet8] HistoricSimulatedId=H-1025-Q.uh ForecastSimulatedId=H-1025-Q.fh MeasuredId=H-1025-Q.m HistoricUpdatedId=H-1025-Q.uah ForecastUpdatedId=H-1025-Q.fah OrderSelection=0 Order_AR=2 Order_ARMA=0 SubtractMean=1 BoxCoxTransformation=-1 Lambda=0.5

[ErrorModelSet9] HistoricSimulatedId=H-1027-Q.uh ForecastSimulatedId=H-1027-Q.fh MeasuredId=H-1027-Q.m HistoricUpdatedId=H-1027-Q.uah ForecastUpdatedId=H-1027-Q.fah OrderSelection=0 Order_AR=2 Order_ARMA=0 SubtractMean=1 BoxCoxTransformation=-1 Lambda=0.5

[ErrorModelSet10] HistoricSimulatedId=H-0689-Q.uh ForecastSimulatedId=H-0689-Q.fh MeasuredId=H-0689-Q.m HistoricUpdatedId=H-0689-Q.uah ForecastUpdatedId=H-0689-Q.fah OrderSelection=0 Order_AR=2 Order_ARMA=0 SubtractMean=1 BoxCoxTransformation=-1 Lambda=0.5

WL | Delft Hydraulics 5—5

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

Conditions and Assumptions

Below find a short summary of the paper by Broersen (2002). The algorithms were extracted from ARMASA a Matlab Toolbox (Broersen, Online) and are implemented in FEWS Rhine.

5.3.5 Time series definitions

Three types of time series models can be distinguished, autoregressive or Ar, moving average or MA and the combined ARMA type. An ARMA(p,q) process can be written as (Priestley, 1981)

xann++11x−−...+apxnp=ε n+b11εn−+...+bqεn−q (2.1)

where εn is a purely random process, thus a sequence of independent identically distributed 2 stochastic variables with zero mean and variance σε . This process is purely AR for q=0 and MA for p=0. Any stationary stochastic process can be written as a unique AR(∞) or MA(∞) process The roots of

−1 −p A(za) =+1 1z+...+ap z (2.2)

are denoted as the poles of the ARMA(p,q) process, and the roots of

−1 −q Bz()=+1 b1z +...+bq z (2.3)

are the zeros. Processes and models are called stationary if all poles are strictly within the unit circle, and they are invertible if all zeros are within the unit circle.

5.3.6 AR estimation

This model type is the backbone of time series analysis in practise. Burg’s method, also denoted as maximum entropy, estimates the reflection coefficients (Burg, 1967;Kay and Marple, 1981), thus making sure that the model will be stationary, with all roots of A(z) within the unit circle. Asymptotic AR order selection criteria can give wrong orders if candidate order are higher than 0.1N (N is the signal length). The finite sample criterion CIC(p) is used for model selection (see Broersen, 2000). The model with the smallest value of CIC(p) is selected. CIC uses a compromise between the finite sample estimator for the Kullbach-Leibler information (Broersen and Wensink, 1998) and the optimal asymptotic penalty factor 3 (Broersen, 2000, Broersen and Wensink, 1996).

5.3.7 Box-Cox transformations

The Box Cox transformation (Box and Cox, 1964) can be applied in the order selection and estimation of the coefficients. The object in doing so is usually to make the residuals more homoskedastic and closer to a normal distribution:

WL | Delft Hydraulics 5—6

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

Ty()=−(yλ 1)/λ (2.4)

for λ not equal to zero, when λ=0 T(y)=log(y).

5.3.8 Application of the Module

The implemented algorithm computes AR(p) models with p=0,1,…,N/2 and selects a single best AR model with CIC. However, one can choose to provide the order one wants to use. Usually the mean of the signal will be extracted from the signal to obtain the model and coefficients, but this option can be switched off. It is recommended to use the subtraction of the mean. Figure 5.1 shows an example of using the implemented error module on the Moesel river basin at Cochem, Germany.

Figure 5.1. Application of AR module with subtraction of mean to the Moesel basin at Cochem, Germany. Blue is the measured discharge (Q), red is the updated model update and forecast, green is the model simulation. The forecasts starts at t=401 hours.

Optionally, one can choose to use the Box-Cox transformation. In the update the algorithm will provide an updated model update. During the forecast the selected model and coefficients are used for predicting the model error and are added with the model forecast to obtain an updated model forecast.

WL | Delft Hydraulics 5—7

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

Figure 5.2. Application of AR module to the Moesel basin using Box Cox transformation and subtraction of mean. Blue is the measured discharge (Q), red is the updated model update and forecast, green is the model simulation. Forecasts starts at t=401 hours.

Figure 5.2 shows the effect of additionally applying a Box Cox transformation (λ=0.3). It gives slightly better predictions than without (Figure 1).

Figure 5.3. Application of AR module to the Moesel basin using subtraction of mean. Blue is the measured discharge (Q), red is the updated model update and forecast, green is the model simulation. Forecasts starts at t=250 hours.

WL | Delft Hydraulics 5—8

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

Figure 5.4. Application of AR module to the Moesel basin using subtraction of mean. Blue is the measured discharge (Q), red is the updated model update and forecast, green is the model simulation. Forecasts starts at t=500 hours.

Figure 5.3 and 5.4 show two applications (forecast starts at t=250 hours and at t=500 hours) of the algorithm with subtraction of mean but without Box-Cox transformation.

WL | Delft Hydraulics 5—9

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

5.4 References

Box, G.E.P and D.R. Cox, 1964. An analysis of transformations. J. Royal Statistical Soc. (series B), vol 26, pp 211-252.

Broersen, P.M.T., 2000. Finite sample criteria for Autoregressive order selection. IEEE Trans. Signal Processing, vol 48, pp 3550-3558.

Broersen, P.M.T. Automatic spectral analysis with time series models. IEEE Instr. Meas., vol 51, pp 211-216.

Broersen, P.M.T. Matlab toolbox ARMASA (online) Available: http://www.tn.tudelft.nl/mmr.

Broersen, P.M.T. and H.E. Wensink, 1996. On the penalty factor for autoregressive order selection in finite samples, vol 44, pp 748-752.

Broersen, P.M.T. and H.E. Wensink, 1998. Autoregressive model order selection by a finite sample estimator for the Kullbach-Leibler discrepancy. IEEE Trans. Signal Processing, vol 46, pp 2058-2061.

Burg, J.P., 1967. Maximum entropy spectral analysis. Proc. 37th Meeting Soc. Exploration Geophys., Oklahoma City, OK, pp 1-6.

Kay, S.M. and S.L. Marple, 1981. Spectrum analysis-A modern perspective. Proc IEEE, vol 69, pp 1380-1419.

Madsen, H., M.B. Butts, S.T. Khu, S.Y. Liong, 2000. Data assimilation in rainfall-runoff forecasting. Hydroinformatics 2000, 4th Inter. Conference on Hydroinformatics, Cedar Rapids, Iowa, USA, 23-27 July 2000, 9p.

Priestely, M.B., 1981. Spectral analysis and time series. New York:Academic.

WL | Delft Hydraulics 5—10

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

6 Other adjustments

6.1 Multiple numerical weather prediction (NWP)

In the EU project EFFS multiple NWP could be used to predict the discharge at Lobith. This option needs to be implemented in FEWS-Rhine.

It is now possible to use KNMI Hirlam, DWD LM, DWD GME, ECMWF deterministic and ECMWF perturbed ensembles for calculation.

To select and change between the forecasts one has to adapt the file alternatives.txt in the de\settings directory. Multiple examples of this file are present in the de\setting directory. Below we give a listing of the file which enables all forecasts mentioned.

In the EU project EFFS calculations started at Rheinfelden instead of Maxau, this is currently also the procedure in FEWS-Rhine version 1.02. The user has to provide the forecast for Rheinfelden in the directory de\import data\external forecast\rhei_h_o.txt. Note that the data are expressed in meters instead of centimetres.

Added is also a button export which enables to export all the results of the multiple forecast to files in the directory de\import data\external forecast\. The files will have the names used in the file alternatives.txt.

Both the import of the data of Rheinfelden and the export of the results can be configured through the files import.ini and export.iniin de directory de\GeneralWrapper.

Listing of the file alternatives.txt #this file is use by the AlternativeCreator.class to #create alternatives automatically gme_forecast lm_forecast knmi_forecast ecmwf_forecast ecmwf_new_ensemble_01 ecmwf_new_ensemble_02 ecmwf_new_ensemble_03 ecmwf_new_ensemble_04 ecmwf_new_ensemble_05 ecmwf_new_ensemble_06 ecmwf_new_ensemble_07 ecmwf_new_ensemble_08 ecmwf_new_ensemble_09 ecmwf_new_ensemble_10 ecmwf_new_ensemble_11 ecmwf_new_ensemble_12 ecmwf_new_ensemble_13 ecmwf_new_ensemble_14 ecmwf_new_ensemble_15 ecmwf_new_ensemble_16

WL | Delft Hydraulics 6—1

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

ecmwf_new_ensemble_17 ecmwf_new_ensemble_18 ecmwf_new_ensemble_19 ecmwf_new_ensemble_20 ecmwf_new_ensemble_21 ecmwf_new_ensemble_22 ecmwf_new_ensemble_23 ecmwf_new_ensemble_24 ecmwf_new_ensemble_25 ecmwf_new_ensemble_26 ecmwf_new_ensemble_27 ecmwf_new_ensemble_28 ecmwf_new_ensemble_29 ecmwf_new_ensemble_30 ecmwf_new_ensemble_31 ecmwf_new_ensemble_32 ecmwf_new_ensemble_33 ecmwf_new_ensemble_34 ecmwf_new_ensemble_35 ecmwf_new_ensemble_36 ecmwf_new_ensemble_37 ecmwf_new_ensemble_38 ecmwf_new_ensemble_39 ecmwf_new_ensemble_40 ecmwf_new_ensemble_41 ecmwf_new_ensemble_42 ecmwf_new_ensemble_43 ecmwf_new_ensemble_44 ecmwf_new_ensemble_45 ecmwf_new_ensemble_46 ecmwf_new_ensemble_47 ecmwf_new_ensemble_48 ecmwf_new_ensemble_49 ecmwf_new_ensemble_50

6.2 Adjusted interpolation rainfall forecast

In the old version nine surrounding points of the DWD LM grid were used for interpolation. This must be adapted according to what is being used at the BWG.. For each subbasin it will be determined which grid cells belong to that subbasin. This information will then be used to interpolate the rainfall inside the subbasin.

This option has been enabled. The ASCII file (dwd_lm_cells.dat) with the information is present in the de\setting directory.

6.3 Adjusted interpolation rainfall update

In the project Q3558 it was found that artificial measurements were created before interpolating to the HBV subbasins, which is a rather dubious procedure. Therefore, this needs to be changed, and rainfall measurements need to be interpolated directly to the HBV subbasins.

This option has been implemented.

WL | Delft Hydraulics 6—2

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

7 Conclusion and Discussion

The improved version is ready. However, there are still some points that may need attention. These points will be listed below and are provided to stimulate discussion between RIZA and WL | Delft Hydraulics:

• Configuration is necessary to be able to select and deselect NWP's, a more user friendly way should be developed; • The effect of combined error correction and EKF has not been investigated; • State Management of SOBEK has been implemented however the question remains if it is well suited for daily calculations given the current configuration. • The external forecast for Rheinfelden has to be provided by the users manually, RIZA may want to automate this; • During the last test it was noticed that the water level measurements where not as accurate as used to calibrate the EKF. This led to strange results in the forecasts. This issue may be resolved by an improved validation program or a recalibration of the EKF.

WL | Delft Hydraulics 7—1

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

A Listings of .csv files

A.1 forecast_input_model.csv and update- _input_model.csv

The files forecast_input_model.csv and update_input_model.csv contain information of the model boundaries (upstream, downstream and lateral) concerning the forecast period and the update period, respectively. An example of these files is listed below.

#forecast_input_model2.csv # #H = H Boundary,,,,,,, #Q = Q Boundary,,,,,,, #L = Lateral discharge,,,,,,, #sobek name,type,title,adaptable,SeriesID1,SourceLabel1,SeriesID2 ,SourceLabel2

Maxau,Q,Maxau,FALSE,H-0689-Q.fx,MAXAU

Alb,L,,FALSE,,,H-0036-Q.fh,HBV ,L,Pfinz,FALSE,,,H-0038-Q.fh,HBV ,L,Queich,FALSE,,,H-0028-Q.fh,HBV ,L,Speyerbach,FALSE,,,H-0031-Q.fh,HBV ZWE Maxau-Speyer,L,ZWE Maxau-Speyer,FALSE,,,H-0627-Q.fh,HBV ZWE Speyer-47616,L,ZWE Speyer-47616,FALSE,,,H-0646-Q.fh,HBV ZWE 47616-,L,ZWE 47616-Neckar,FALSE,,,H-0651-Q.fh,HBV Neckar,L,Neckar,FALSE,,,H-0659-Q.fah,HBV ZWE Neckar-Worms,L,ZWE Neckar-Worms,FALSE,,,H-0668-Q.fh,HBV ,L,Weschnitz,FALSE,,,H-0024-Q.fh,HBV ,L,Modau,FALSE,,,H-0039-Q.fh,HBV ZWE L Worms-Main,L,ZWE L Worms-Main,FALSE,,,H-0700-Q.fh,HBV ZWE R Worms-Main,L,ZWE R Worms-Main,FALSE,,,H-0700-Q.fh,HBV Main,L,Main,FALSE,,,H-1027-Q.fah,HBV

Selz,L,,FALSE,,,H-0029-Q.fh,HBV ZWE_Mainz_Nahe,L,ZWE_Mainz_Nahe,FALSE,,,I-0087-Q.fh,HBV ,L,Nahe,FALSE,,,H-0913-Q.fah,HBV ,L,Wisper,FALSE,,,H-0026-Q.fh,HBV ZWE_Nahe_Kaub,L,ZWE_Nahe_Kaub,FALSE,,,I-0087-Q.fh,HBV ZWE_Kaub_Lahn,L,ZWE_Kaub_Lahn,FALSE,,,I-0088-Q.fh,HBV ,L,Lahn,FALSE,,,H-0888-Q.fah,HBV

Saynbach,L,Saynbach,FALSE,,,I-0089-Q.fh,HBV ,L,Nette,FALSE,,,H-0052-Q.fh,HBV ,L,Wied,FALSE,,,H-0053-Q.fh,HBV ZWE_Mosel_Andernach,L,ZWE_Mosel_Andernach,FALSE,,,I-0089-Q.fh,HBV

#Andernach,Q,Andernach ,FALSE,H-0947-Q.fx,Andernach ,, ,L,Schembeck (Lippe),FALSE,,,H-0900-Q.fah,HBV ,L,Konigsstrasse (Emscher),FALSE,,,H-1026-Q.fh,HBV ,L,Altenahr (Ahr),FALSE,,,H-0808-Q.fh,HBV ZWE_Ande_Bonn,L,ZWE_Ande_Bonn,FALSE,,,I-0093-Q.fh,HBV ,L,Menden (Sieg),FALSE,,,H-0984-Q.fah,HBV ZWE_Bonn_Koel,L,ZWE_Bonn_Koel,FALSE,,,I-0094-Q.fh,HBV ,L,Opladen (Wupper),FALSE,,,H-1025-Q.fah,HBV ,L,Neubruck (Erft),FALSE,,,H-0847-Q.fh,HBV ZWE_Koel_Dues,L,ZWE_Koel_Dues,FALSE,,,I-0096-Q.fh,HBV ,L,Ruhr,FALSE,,,H-0957-Q.fah,HBV

WL | Delft Hydraulics A–1

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

ZWE_Dues_Ruhr,L,ZWE_Dues_Ruhr,FALSE,,,I-0097-Q.fh,HBV ZWE_Ruhr_Wese,L,Hattingen (Ruhr),FALSE,,,I-0099-Q.fh,HBV ZWE_Wese_Rees,L,ZWE_Wese_Rees,FALSE,,,I-0099-Q.fh,HBV ZWE_Rees_Lobi,L,ZWE_Rees_Lobi,FALSE,,,I-0100-Q.fh,HBV ABgrw,L,ABgrw,FALSE,GWM-ANDBON-LQ.fgwm,,,GWM BKgrw,L,BKgrw,FALSE,GWM-BONKEU-LQ.fgwm,,,GWM KDgrw,L,KDgrw,FALSE,GWM-KEUDUS-LQ.fgwm,,,GWM DRgrw,L,DRgrw,FALSE,GWM-DUSRUH-LQ.fgwm,,,GWM RWgrw,L,RWgrw,FALSE,GWM-RUHWES-LQ.fgwm,,,GWM WRgrw,L,WRgrw,FALSE,GWM-WESREE-LQ.fgwm,,,GWM RLgrw,L,RLgrw,FALSE,GWM-REELOB-LQ.fgwm,,,GWM

ZWE_Cochem-Muendung,L,ZWE_Cochem-Muendung,FALSE,,,I-0063-Q.fh,HBV Cochem,Q,Cochem,FALSE,,,H-0908-Q.fah,HBV

#The folowing boundary time series are unchanged,,,,,,, WerkenMSW, Q,,,,,, KrilekMSW, Q eindketdi, Q eindkatdi, Q

#The folowing lateral time series are unchanged, GruWa Neuwied,L WAAL_1,L WAAL_2,L PANKAN,L NEDR_1,L NEDR_2,L LINGE1,L NEDR_3,L LEK__1,L LEK__2,L YSSEL1,L YSSEL2,L OUDEYS,L YSSEL3,L YSSEL4,L TWENTK,L YSSEL5,L YSSEL6,L YSSEL7,L YSSEL8,L Kortsl Rhederlaag1,L kortsl Rhederlaag2,L

A.2 Forecast_output_model.csv and update_output_model.csv

The files Forecast_output_model.csv and update_output_model.csv define which output of the SOBEK simulations must be copied to the database. An example of these files is listed below.

#forecast_output_model2 # #id,type,title,adaptable,SeriesID1,SourceLabel1

Maxau-Neckar_.00,Discharge Total,Maxau,FALSE,H-0689-Q.fs,SOBEK Worms-Main_.00,Discharge Total,Worms,FALSE,H-0693-Q.fs,SOBEK Mainz-Nahe_.00,Discharge Total,Mainz,FALSE,H-0695-Q.fs,SOBEK Kaub-Lahn_.00,Discharge Total,Kaub,FALSE,H-0943-Q.fs,SOBEK ANDERNACH-BONN_.00,Discharge Total,Andernach,FALSE,H-0947-Q.fs,SOBEK

WL | Delft Hydraulics A–2

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

BONN-K?LN_.00,Discharge Total,Bonn,FALSE,H-0949-Q.fs,SOBEK K?LN-D?SSELDORF_.00,Discharge Total,Koeln,FALSE,H-0950-Q.fs,SOBEK D?SSELDORF-RUHRORT_.,Discharge Total,Duesseldorf,FALSE,H-0951-Q.fs,SOBEK RUHRORT-WESEL_.00,Discharge Total,Ruhrort,FALSE,H-0952-Q.fs,SOBEK WESEL-REES_.00,Discharge Total,Wesel,FALSE,H-0953-Q.fs,SOBEK REES-LOBITH_.00,Discharge Total,Rees,FALSE,H-0954-Q.fs,SOBEK REES-LOBITH_14600.00,Discharge Total,Emmerich,FALSE,H-0955-Q.fs,SOBEK REES-LOBITH_24800.00,Discharge Total,Lobith,FALSE,H-0001-Q.fs,SOBEK

Maxau-Neckar_.00,Water level,Maxau,FALSE,H-0689-H.fs,SOBEK Worms-Main_.00,Water level,Worms,FALSE,H-0693-H.fs,SOBEK Mainz-Nahe_.00,Water level,Mainz,FALSE,H-0695-H.fs,SOBEK Kaub-Lahn_.00,Water level,Kaub,FALSE,H-0943-H.fs,SOBEK ANDERNACH-BONN_.00,Water level,Andernach,FALSE,H-0947-H.fs,SOBEK BONN-K?LN_.00,Water level,Bonn,FALSE,H-0949-H.fs,SOBEK K?LN-D?SSELDORF_.00,Water level,Koeln,FALSE,H-0950-H.fs,SOBEK D?SSELDORF-RUHRORT_.,Water level,Duesseldorf,FALSE,H-0951-H.fs,SOBEK RUHRORT-WESEL_.00,Water level,Ruhrort,FALSE,H-0952-H.fs,SOBEK WESEL-REES_.00,Water level,Wesel,FALSE,H-0953-H.fs,SOBEK REES-LOBITH_.00,Water level,Rees,FALSE,H-0954-H.fs,SOBEK REES-LOBITH_14600.00,Water level,Emmerich,FALSE,H-0955-H.fs,SOBEK REES-LOBITH_24800.00,Water level,Lobith,FALSE,H-0001-H.fs,SOBEK

WL | Delft Hydraulics A–3

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

B Input file Extended Kalman Filter

B.1 Introduction

The required information for the Extended Kalman Filter is added to an existing SOBEK River model through an ascii file. The mda/mdf files of the SOBEK model are updated with the EKF information through a parser (parsetxt.exe). The EKF input file is described by (Kuipers, 2001).

The EKF input file used for the implementation in FEWS Rhine is listed in the next section.

B.2 Listing input file

!************************************************************* ! Name File: KFinvoer.txt ! Date 12-11-2002 ! Author Hanneke van der Klis ! Copyright Delft Hydraulics ! Version 1.0 ! Description File for Kalman filter FEWS Rhine ! Last update june 2003 !************************************************************* ! KALMAN filter ! ! System noise continuity ! This represents noise in the continuity equation ! Data Required (SOBEK Defaults are Used) ! $CONNOIS BRANCH FROM TO ! ! 1. the CONNOIS to represent the uncertainty wrt. the continuity equation ! RELATIVE: keyword for scaling of CONNOIS process by net discharge in the area between the from and to ! coordinates. The standard deviation is the net discharge * the specified standard deviation ! $CONNOIS BRANCH 2 FROM 0 TO 10000 0.00 0.0003 RELATIVE TIMECOR 0.0 !instroom Neckar $CONNOIS BRANCH 4 FROM 0 TO 1802 0.00 0.0003 RELATIVE TIMECOR 0.0 !instroom Main $CONNOIS BRANCH 7 FROM 10 TO 10000 0.00 0.0003 RELATIVE TIMECOR 0.0 !instroom Nahe $CONNOIS BRANCH 9 FROM 10 TO 6489 0.00 0.0003 RELATIVE TIMECOR 0.0 !instroom Lahn $CONNOIS BRANCH 11 FROM 4501 TO 14000 0.00 0.0003 RELATIVE TIMECOR 0.0 !Onzekerheid door instroom Sieg $CONNOIS BRANCH 13 FROM 52201 TO 56200 0.00 0.0003 RELATIVE TIMECOR 0.0 !instroom Erft $CONNOIS BRANCH 14 FROM 35901 TO 36600

WL | Delft Hydraulics B–1

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

0.00 0.0003 RELATIVE TIMECOR 0.0 !Onzekerheid door instroom Ruhr $CONNOIS BRANCH 16 FROM 401 TO 9600 0.00 0.0003 RELATIVE TIMECOR 0.0 !instroom Lippe ! ! System noise momentum ! This represents noise in the momentum equation ! Data Required (SOBEK defaults are used) ! 2. the MOMNOIS to represent the uncertainty wrt. the momentum equation ! $MOMNOIS BRANCH 1 FROM 0 TO 65784 BRANCH 2 FROM 0 TO 14877 BRANCH 3 FROM 0 TO 53520 0.00 0.4 TIMECOR 0.0 $MOMNOIS BRANCH 4 FROM 0 TO 1802 BRANCH 6 FROM 0 TO 31120 BRANCH 7 FROM 0 TO 16583 0.00 0.4 TIMECOR 0.0 $MOMNOIS BRANCH 5 FROM 0 TO 52024 0.00 0.4 TIMECOR 0.0 $MOMNOIS BRANCH 8 FROM 0 TO 39312 BRANCH 9 FROM 0 TO 6489 BRANCH 10 FROM 0 TO 21623 0.00 0.4 TIMECOR 0.0 $MOMNOIS BRANCH 11 FROM 0 TO 33200 BRANCH 12 FROM 0 TO 41000 BRANCH 13 FROM 0 TO 56200 0.00 0.4 TIMECOR 0.0 $MOMNOIS BRANCH 14 FROM 0 TO 36600 BRANCH 15 FROM 0 TO 33200 BRANCH 16 FROM 0 TO 23400 BRANCH 17 FROM 0 TO 24800 0.00 0.4 TIMECOR 0.0 $MOMNOIS BRANCH 18 FROM 0 TO 4814 BRANCH 19 FROM 0 TO 45719 BRANCH 20 FROM 0 TO 46761 BRANCH 21 FROM 0 TO 11347 BRANCH 22 FROM 0 TO 48494 BRANCH 23 FROM 0 TO 18279 BRANCH 24 FROM 0 TO 40639 BRANCH 25 FROM 0 TO 69191 BRANCH 26 FROM 0 TO 44296 BRANCH 27 FROM 0 TO 4531 BRANCH 28 FROM 0 TO 882 0.00 0.4 TIMECOR 0.0 ! ! ! Noise in QH-relation for structures ! $STRNOIS STRUCTURE 1 0.0 0.0 RELATIVE TIMECOR timecor ! ! System noise for External nodes ! ! Input Required ! ! $NODNOIS NODE

WL | Delft Hydraulics B–2

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

! $NODNOIS NODE 1 0.0 0.2 RELATIVE TIMECOR 0.0 !discharge at andernach $NODNOIS NODE 6 0.0 0.2 RELATIVE TIMECOR 0.0 !discharge at cochem ! ! ! ! Bed Friction Noise. This block must be included ! even if there is no noise in the bed friction ! ! Data required ! $BFRINOIS BRANCH FROM TO ! ! $BFRINOIS BRANCH 1 FROM 0 TO 65784 0.00 0.00 $BFRINOIS BRANCH 2 FROM 0 TO 14877 0.00 0.00 $BFRINOIS BRANCH 3 FROM 0 TO 53520 0.00 0.00 $BFRINOIS BRANCH 4 FROM 0 TO 1802 0.00 0.00 $BFRINOIS BRANCH 5 FROM 0 TO 52024 0.00 0.00 $BFRINOIS BRANCH 6 FROM 0 TO 31120 0.00 0.00 $BFRINOIS BRANCH 7 FROM 0 TO 16583 0.00 0.00 $BFRINOIS BRANCH 8 FROM 0 TO 39312 0.00 0.00 $BFRINOIS BRANCH 9 FROM 0 TO 6489 0.00 0.00 $BFRINOIS BRANCH 10 FROM 0 TO 21623 0.00 0.00 $BFRINOIS BRANCH 11 FROM 0 TO 33200 0.00 0.00 !bonn-koln $BFRINOIS BRANCH 12 FROM 0 TO 41000 0.00 0.00 !andernach-bonn $BFRINOIS BRANCH 13 FROM 0 TO 56200 0.00 0.00 !koln-dusseldorf $BFRINOIS BRANCH 14 FROM 0 TO 36600 0.00 0.00 !dusseldorf-ruhrort $BFRINOIS BRANCH 15 FROM 0 TO 33200 0.00 0.00 !ruhrort-wesel $BFRINOIS BRANCH 16 FROM 0 TO 23400 0.00 0.00 !wesel-rees $BFRINOIS BRANCH 17 FROM 0 TO 24800 0.00 0.00 !rees-lobith $BFRINOIS BRANCH 18 FROM 0 TO 4814 0.00 0.00 $BFRINOIS BRANCH 19 FROM 0 TO 45719 0.00 0.00 $BFRINOIS BRANCH 20 FROM 0 TO 46761 0.00 0.00 $BFRINOIS BRANCH 21 FROM 0 TO 11347 0.00 0.00 $BFRINOIS BRANCH 22 FROM 0 TO 48494 0.00 0.00 $BFRINOIS BRANCH 23 FROM 0 TO 18279 0.00 0.00 $BFRINOIS BRANCH 24 FROM 0 TO 40639 0.00 0.00 $BFRINOIS BRANCH 25 FROM 0 TO 69191 0.00 0.00 $BFRINOIS BRANCH 26 FROM 0 TO 44296 0.00 0.00 $BFRINOIS BRANCH 27 FROM 0 TO 4531 0.00 0.00 $BFRINOIS BRANCH 28 FROM 0 TO 882 0.00 0.00 ! ! ! Measurement Stations. These are the stations where the water level samples are taken ! SAMNOIS gives the mean and deviation of the noise at measurement locations ! $SAMNOIS H BRANCH 1 AT 37826 0.0 0.05 !Speyer $SAMNOIS H BRANCH 3 AT 0 0.0 0.05 !Worms $SAMNOIS H BRANCH 8 AT 0 0.0 0.05 !Kaub $SAMNOIS H BRANCH 12 AT 0 0.0 0.05 !Andernach $SAMNOIS H BRANCH 13 AT 0 0.0 0.05 !Koeln $SAMNOIS H BRANCH 16 AT 0 0.0 0.05 !Wesel $SAMNOIS H BRANCH 17 AT 24800 0.0 0.05 !Lobith !

WL | Delft Hydraulics B–3

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

! ! $SAMPLES ! Samples taken at the above locations are input in columns below ! locations read from left to right, time steps from top to bottom ! !****Make sure that there are enough lines to accommodate all filter steps ! !Speyer Worms Kaub Andernach Koeln Wesel Lobith !updates tot 15-01-2004: 90.83 84.86 68.57 52.79 36.83 13.75 8.48 90.83 84.86 68.58 52.78 36.83 13.74 8.48 90.82 84.87 68.56 52.78 36.82 13.73 8.47 90.83 84.87 68.56 52.78 36.82 13.73 8.46 90.82 84.89 68.56 52.78 36.82 13.72 8.46 … 95.73 89.86 72.64 58.1 41.8 18.16 12.01 95.78 89.9 72.68 58.13 41.83 18.21 12.05 95.82 89.92 72.72 58.16 41.87 18.25 12.1 -999.999 -999.999 -999.999 -999.999 -999.999 -999.999 -999.999 -999.999 -999.999 -999.999 -999.999 -999.999 -999.999 -999.999 ! ! ! Initial conditions for Kalman Filter. These are the covariances ! of the initial condition ! Data Required ! $PINITQH BRANCH FROM TO ! $PINITQH BRANCH 1 FROM 0 TO 65784 0.00 0.00 $PINITQH BRANCH 2 FROM 0 TO 14877 0.00 0.00 $PINITQH BRANCH 3 FROM 0 TO 53520 0.00 0.00 $PINITQH BRANCH 4 FROM 0 TO 1802 0.00 0.00 $PINITQH BRANCH 5 FROM 0 TO 52024 0.00 0.00 $PINITQH BRANCH 6 FROM 0 TO 31120 0.00 0.00 $PINITQH BRANCH 7 FROM 0 TO 16583 0.00 0.00 $PINITQH BRANCH 8 FROM 0 TO 39312 0.00 0.00 $PINITQH BRANCH 9 FROM 0 TO 6489 0.00 0.00 $PINITQH BRANCH 10 FROM 0 TO 21623 0.00 0.00 $PINITQH BRANCH 11 FROM 0 TO 33200 0.00 0.00 $PINITQH BRANCH 12 FROM 0 TO 41000 0.00 0.00 $PINITQH BRANCH 13 FROM 0 TO 56200 0.00 0.00 $PINITQH BRANCH 14 FROM 0 TO 36600 0.00 0.00 $PINITQH BRANCH 15 FROM 0 TO 33200 0.00 0.00 $PINITQH BRANCH 16 FROM 0 TO 23400 0.00 0.00 $PINITQH BRANCH 17 FROM 0 TO 24800 0.00 0.00 $PINITQH BRANCH 18 FROM 0 TO 4814 0.00 0.00 $PINITQH BRANCH 19 FROM 0 TO 45719 0.00 0.00 $PINITQH BRANCH 20 FROM 0 TO 46761 0.00 0.00 $PINITQH BRANCH 21 FROM 0 TO 11347 0.00 0.00 $PINITQH BRANCH 22 FROM 0 TO 48494 0.00 0.00 $PINITQH BRANCH 23 FROM 0 TO 18279 0.00 0.00 $PINITQH BRANCH 24 FROM 0 TO 40639 0.00 0.00 $PINITQH BRANCH 25 FROM 0 TO 69191 0.00 0.00 $PINITQH BRANCH 26 FROM 0 TO 44296 0.00 0.00

WL | Delft Hydraulics B–4

FEWS-Rhine version 1.02 Q3618.00 November 2004 Improvements and adjustments

$PINITQH BRANCH 27 FROM 0 TO 4531 0.00 0.00 $PINITQH BRANCH 28 FROM 0 TO 882 0.00 0.00 ! ! ! Initial conditions for bed friction. The variance is set to zero ! $PINITFRI ALL 1.00 0.00 ! $APPL RIVER FLOW KALM ! AUTO ! !Parameters describing the kalman filter: !PREDIN: Prediction interval, i.e. number of prediction steps ! before a filter step will be carried out ! (predin=-1 in case of prediction only) !TIMEDEP: Switch selects time dependent filtering !TIMEUNDEP: Switch selects time undependent filtering !NU: Smoothing parameter for smoothing of kalman gain !MAXDEVH: maximum deviation of water levels allowed in filter !MAXDEVQ: maximum deviation of discharges allowed in filter ! $KALPAR PREDIN = 1 TIMEDEP NU = 0.25 MAXDEVH = 2.0 MAXDEVQ = 2000.00 ! ! ! Output for the Kalman Filter. The output is in Time histories ! for the locations used in the Kalman filter ! $OUTPUT MAP KPHYD 0 720 1 hcp qcp $OUTPUT MAP KFHYD 0 720 1 hf qf hcf qcf $OUTPUT MAP KFRES 0 720 1 rs sr rc $OUTPUT MAP KFGAN 0 720 1 Kg $OUTPUT MAP KFCPM 0 720 1 Cpm ! ! ! End of Definition of Output

WL | Delft Hydraulics B–5