Introduction
The conceptual solution for the interface between HEC-RAS and FEWS has been illustrated in Figure 1. Two modes of working are identified that each support a basic use case. The modes of working are:
- Operational forecasting mode
- Calibration mode
The technical implementations for both modes of working are quite different. For running HEC-RAS in operational forecasting mode from FEWS, a software interface will be required that directly controls the model runs.
Calibration is considered as an activity that should be carried out offline from the forecasting system. This means that no direct control from FEWS will be required but a user will need to be able to migrate model datasets (calibrated schematizations) from the HEC-RAS calibration environment to the forecasting environment.
Operating Forecasting Model
Figure 1 Components used to run forecasts using HEC-RAS model in the FEWS/CHPS system
Operating HEC-RAS Model and FEWS Adapter
The HEC-RAS model provides the compute engine for running a hydraulic model schematization for a section of a river or a part of a river system. The HEC-RAS Adapter forms the interface between the FEWS Forecasting Shell and the HEC-RAS model.
The HEC-RAS compute engine is, as its name suggests, the component that actually performs the HEC-RAS simulation. This simulation is controlled from the FEWS Adapter, and all run time data such as initial and boundary conditions, and parameter settings are passed through the adapter from and to the FEWS Forecasting Shell.
Interface between FEWS and HEC-RAS
The FEWS Adapter for HEC-RAS forms the interface between the FEWS Forecasting Shell and the HEC-RAS model. The adapter accepts the request from the Forecasting Shell to run HEC-RAS, and imports the required data provided by the Forecasting Shell.
This data shall be provided in a standardized XML interface format, the FEWS Published Interface. Once a HEC-RAS run has been completed, relevant results are passed back to the Forecasting Shell in the form of the standardized XML interface format.
A schematic representation of the communication between the Forecasting Shell and the HEC-RAS model via the FEWS Adapter is shown in the diagram below.
Figure 2 Data flows involved during run of HEC-RAS model FEWS adapter
The FEWS Adapter allows running of HEC-RAS by FEWS. The FEWS Adapter should be considered as a thin communication (software) layer on top the existing HEC-RAS engine. The adapter is tightly connected to the model engine. For longer term consistency, a FEWS adapter should therefore preferably be maintained by the owner of the model code, in this case HEC. The FEWS Adapter for HEC-RAS shall be developed by HEC or handed over to HEC upon completion.
Several design options for the FEWS Adapter will be discussed in this section. Red box in the diagram below outlines the components within the adapter itself. The technical options will be discussed in the next section.
The features of the are listed in the tables below.
Preprocessing 01 |
Clean up work and output folder |
Preprocessing 02 |
Create module diagnostics file in Published Interface (PI) format |
Preprocessing 03 |
Read the time series from PI time series |
Preprocessing 04 |
Convert input PI time series into RAS DSS files |
Launcher 01 |
Run HEC-RAS with run period and model alternative |
Postprocessing 01 |
Open/create module diagnostics file in PI format |
Postprocessing 02 |
Read a selection (output-dss-paths.txt) of output time series in the output RAS DSS file |
Postprocessing 03 |
Write the time series to the output.xml |
Postprocessing 04 |
Write the updated PI state file to export folder |
ID Mapping
The location parameters used in FEWS can be coupled to HEC-RAS DSS path names through ID-mapping. The configuration files for ID-mapping should be created separately for each HEC-RAS model.
Directory structure
The data directories and configuration files that are required for operating the FEWS Adapter for HEC-RAS have been shown in the diagram below.
The information HEC-RAS for a normal run requires model directory, (ii) alternative to run, (iii) starting time of simulation, (iv) end time of simulation, (v) look back time, (vi) boundary conditions, and (vii) carryover date (model state) that should be used.
The information that HEC-RAS will feed back to FEWS will generally include model output, (ii) diagnostics, and (iii) saved carryover date (model state) in case of a carryover run.
Communication will strictly follow the FEWS Published Interface format.
Below the list of HEC-RAS mode data files is presented which need to be read or written by the HEC-RAS adapter.
Table 1 List of files to be read and written by adapter
Extension |
Description |
|
|
.prj |
project file |
.p01 |
plan files |
.g01 |
geometry files |
.f01 |
flow files |
.u01 |
unsteady flow files |
.b01 |
unsteady run files |
.x01 |
input file for geometry preprocessor |
.r01 |
steady run file |
.o01 |
binary output file |
.bco |
model log file |
.c01 |
output of geometry preprocessor |
.dss |
input / output files |
.hyd01 |
input file for geometry preprocessor |
Running model from FEWS
The following software components play a role when running a model:
•heclib60.dll - library used to read and write HEC DSS files
•Steady.exe - steady flow model
•Unsteady.exe - unsteady flow model
•nwsras.jar - library allowing for reading and writing model input and output files.
•DSSWriter.exe - generates binary file containing detailed model output
•GeomPreprocessor.exe - converts geometry files from GUI ASCII format to binary
The following command line-based script will be used to run a HEC-RAS model:
echo Running Geometry preprocessor ...
%RAS_HOME%\GeomPreprocessor.exe Combined.x01 runnext=1
echo Running Unsteady.exe ...
%RAS_HOME%\Unsteady.exe Combined.c01 b03 runnext=1
echo Writing DSS ...
%RAS_HOME%\DSSWriter.exe Combined.c01 p03 runnext=1
Note that other command-line arguments will be defined to operate system under Linux.