Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents


Status
colourYellow
titleDocumentation in development

Introduction

The Integrated Reservoir Module is a General Adapter module written in Java, developed by Deltares. The model class is part of the Delft-FEWS code base.

The Reservoir module is developed and designed as a relatively straightforward reservoir routing model, that simulates flow through a reservoir with a level-outflow table defined. Specifically, the model is able to precisely replicate  the uncontrolled outlet reservoir behaviour of the RTC-Tools 1 model, which is no longer developed and supported. Because the model is based on Java, it can run on Windows/Linux systems.

 The module is introduced in the 2021.01 BoM Delft-FEWS version and will be part of the Delft-FEWS code base of Delft-FEWS versions 2023.01 and onwards with in-memory options. 

General Adapter configuration

The General Adapter defines forms the interface between the FEWS system and the Reservoir model. 

The data is provided in a standardized XML interface format, the FEWS Published Interface. For more details about general structure of the General Adapter please check 05 General Adapter Module.

IDmapping

The location/parameters used in Delft-FEWS can be transformed to model variableId locations/parameters by ID-mapping. The configuration files for ID-mapping can be of a general form, as long as the reservoir model have been set up with identical variables for the inputs/outputs. The model will look for the required variables (as configured in the IRM model file) in the parameter field of the PI timeseries. 

Directory structure

The data directories and configuration files that are required for operating the FEWS Reservoir Module Adapter have been shown below.

No Format
FEWS_SA
+---Config
|   +---ColdStateFiles
|   |   |       namoi_keepit_KeepReservoir_Historical_IRM Default.zip........coldState file
|   +---IdMapFiles
|   |       IdExportIRMReservoir.xml
|   |       IdImportIRMReservoir.xml.........................................custom mappings for the IRM variables and locations
|   |         
|   +---ModuleConfigFiles 
|   |   |   Reservoir_1h_Forecast_IRM.xml....................................main configuration file of the adapter
|   |           
|   +---ModuleDataSetFiles
|   |   |   Reservoir_Exe.zip................................................zipped IRM bin files, transported to Modules\reservoir directory
|   |   |   
|   |   |   namoi_IRM_Reservoir_Forecast.zip.................................zipped IRM model files for a specific reservoir, transported to Modules\Reservoir directory
|               
+---Modules
|   +---reservoir
|   |   |       
|   |   +---IRMbin............................................................directory which contains all IRM adapter java files
|   |   |       
|   |   +---Keep_IRM
|   |   |       diag.xml......................................................output FEWS-PI diagnostics file, imported by Delft-FEWS
|   |   |       export.xml....................................................output FEWS-PI time series files, imported by Delft-FEWS
|   |   |       exportState.xml...............................................FEWS-PI state output time series file, imported by Delft-FEWS
|   |   |       import.xml....................................................input FEWS-PI time series files, exported by Delft-FEWS
|   |   |       importState.xml...............................................FEWS-PI state input time series file, exported by Delft-FEWS
|   |   |       IntegratedReservoirModel.xml..................................IRM model file
|   |   |       run_info.xml..................................................a file generated by FEWS containing paths, run options
|   |   |       statePI.xml...................................................PI State file (definition)
|   |   |  


Configuring the Integrated Reservoir Module Adapter file


Image Added

general

pi-version 1.8 required for diagnostics


exportStateActivity


    <exportStateActivity>


exportTimeSeriesActivity

       
    <exportTimeSeriesActivity>
        Export data (inflows and outflows)</description>
        <exportFile>import.xml</exportFile>

    <exportTimeSeriesActivity>
        <description>Export state data (levels and volumes)</description>
        <exportFile>importState.xml</exportFile>
        
    <exportDataSetActivity>
        <moduleInstanceId>$CATCHMENT$_IRM_Reservoir_Forecast</moduleInstanceId>
    </exportDataSetActivity>
   

exportRunFileActivity


        <exportFile>run_info.xml</exportFile>
        <properties>
            <string key="model" value="IntegratedReservoirModel.xml"/>
        </properties>
    </exportRunFileActivity>


executeActivity


        <description>Run Reservoir module</description>
        <command>
            <className>nl.deltares.fews.reservoirmodel.ReservoirModelAdapter</className>
            <binDir>$REGION_HOME$/Modules/reservoir/IRMbin</binDir>
        </command>
        <arguments>
            <argument>%ROOT_DIR%/run_info.xml</argument>
        </arguments>
        <timeOut>100000</timeOut>
        <ignoreDiagnostics>true</ignoreDiagnostics>
    </executeActivity>


importActivities


    <importTimeSeriesActivity>
        <description>Import IRM reservoir management results</description>
        <importFile>export.xml</importFile>
        

Model

The model definition for the reservoir is configured in file that follows the Integrated Reservoir Model schema. The model options are described below. An example Integrated Reservoir Model file is attached.

Schema

Image Added

general

reservoir

general

interpolationMethod

ReservoirRouting Method

Tables

strictly increasing, same number of elements

storageCharacteristics

uncontrolled outlet

input / output

importState.xml Either storage, or level

import.xml Inflow, potential outflow

Model specifics

First timestep


Ensembles

Model is able to run in parallel, where a "static"

In-Memory execution

(2023.01 onwards)