...
Configuring HEC-HMS adapter
HEC-RAS HMS model adapter follows standard way of integrating external models into the Delft-FEWS system by use of General of General Adapter. For more details about configuration of General Adapter please check 05 General Adapter Module.
A very important part of the configuration is defined under the <exportRunFileActivity> element. It contains path to the HMS project file, location of the HMS binary files and list of variables to be written into the output files.
Example configuration of the HEC-HMS adapter:
Code Block | ||||
---|---|---|---|---|
| ||||
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2009 sp1 (http://www.altova.com) by ICT (Stichting Deltares) -->
<generalAdapterRun xmlns="http://www.wldelft.nl/fews" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews http://fews.wldelft.nl/schemas/version1.0/generalAdapterRun.xsd">
<general>
<rootDir>%REGION_HOME%/Modules/hechms</rootDir>
<workDir>%ROOT_DIR%/bin</workDir>
<exportDir>%ROOT_DIR%/UpperBlueNile/piInputTimeSeries</exportDir>
<exportIdMap>IdExportHECHMS</exportIdMap>
<importDir>%ROOT_DIR%/UpperBlueNile/piOutputTimeSeries</importDir>
<importIdMap>IdImportHECHMS</importIdMap>
<dumpFileDir>$GA_DUMPFILEDIR$</dumpFileDir>
<dumpDir>%ROOT_DIR%/UpperBlueNile</dumpDir>
<diagnosticFile>%ROOT_DIR%/UpperBlueNile/piDiagnostic.xml</diagnosticFile>
<missVal>-901.0</missVal>
<convertDatum>true</convertDatum>
</general>
<activities>
<startUpActivities>
<purgeActivity>
<filter>%ROOT_DIR%/UpperBlueNile/piInputTimeSeries/*.*</filter>
</purgeActivity>
<purgeActivity>
<filter>%ROOT_DIR%/UpperBlueNile/piOutputTimeSeries/*.*</filter>
</purgeActivity>
<purgeActivity>
<filter>%ROOT_DIR%/UpperBlueNile/*.ds*</filter>
</purgeActivity>
</startUpActivities>
<exportActivities>
<!-- Export state (warm state)-->
<exportStateActivity>
<moduleInstanceId>UpperBlueNile_HEC-HMS_historical</moduleInstanceId>
<stateExportDir>%ROOT_DIR%/UpperBlueNile/basinStates</stateExportDir>
<stateConfigFile>%ROOT_DIR%/UpperBlueNile/State.xml</stateConfigFile>
<stateLocations type="file">
<stateLocation>
<readLocation>UpperBlueNile_hist_state.state</readLocation>
<writeLocation>UpperBlueNile_hist_state.state</writeLocation>
</stateLocation>
</stateLocations>
<stateSelection>
<warmState>
<stateSearchPeriod unit="hour" start="-240" end="-1"/>
</warmState>
</stateSelection>
</exportStateActivity>
<!-- Export time series -->
<exportTimeSeriesActivity>
<description>Export rainfall as input for HecHms model</description>
<exportFile>FEWS2DSS.xml</exportFile>
<timeSeriesSets>
<timeSeriesSet>
<moduleInstanceId>Catchments_Aggregate_Precipitation_Historical</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>P.merged</parameterId>
<locationId>UpperBlueNile</locationId>
<timeSeriesType>external historical</timeSeriesType>
<timeStep times="21:00"/>
<relativeViewPeriod unit="day" startOverrulable="true" end="0"/>
<readWriteMode>read only</readWriteMode>
</timeSeriesSet>
</timeSeriesSets>
<checkMissing>true</checkMissing>
</exportTimeSeriesActivity>
</exportActivities>
<executeActivities>
<executeActivity>
<command>
<className>nl.wldelft.fews.adapter.hec.HmsPreAdapter</className>
<binDir>%ROOT_DIR%/binAdapter</binDir>
</command>
<arguments>
<argument>%ROOT_DIR%/work/RunInfo.xml</argument>
</arguments>
<timeOut>120000</timeOut>
</executeActivity>
<executeActivity>
<command>
<executable>%WORK_DIR%/HEC-HMS.cmd</executable>
</command>
<arguments>
<argument>-s</argument>
<argument>%ROOT_DIR%/UpperBlueNile/UpperBlueNile.script </argument>
</arguments>
<timeOut>120000</timeOut>
</executeActivity>
<executeActivity>
<command>
<className>nl.wldelft.fews.adapter.hec.HmsPostAdapter</className>
<binDir>%ROOT_DIR%/binAdapter</binDir>
</command>
<arguments>
<argument>%ROOT_DIR%/work/RunInfo.xml</argument>
</arguments>
<timeOut>120000</timeOut>
</executeActivity>
</executeActivities>
<importActivities>
<!-- Import state -->
<importStateActivity>
<stateConfigFile>%ROOT_DIR%/UpperBlueNile/piOutputState.xml</stateConfigFile>
</importStateActivity>
<!-- Import HMS results-->
<importTimeSeriesActivity>
<description>Import XML file</description>
<importFile>simulation.xml</importFile>
<timeSeriesSets>
<timeSeriesSet>
<moduleInstanceId>UpperBlueNile_HEC-HMS_historical</moduleInstanceId>
<valueType>scalar</valueType>
<parameterId>Q.simulated.historical</parameterId>
<locationId>900012</locationId>
<timeSeriesType>simulated historical</timeSeriesType>
<timeStep times="21:00"/>
<readWriteMode>add originals</readWriteMode>
</timeSeriesSet>
</timeSeriesSets>
</importTimeSeriesActivity>
</importActivities>
</activities>
</generalAdapterRun>
|
The hecras files (.basin, .contol, .gage, .hms, .pdata, .run, .script, .met, .dss etc.)are saved in the /Config/ModuleDataSet directory. These are copied to the /Model/hecras/<model> directory during the exportDataSet activity in the General Adapter file.