You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Next »

For URBS there are two adapters, one made by the developers of the URBS code Don Carroll and one made by Deltares. The URBS adapter developed by Don Carroll takes care of the conversion of the time series files from PI XML format to native URBS files and logging. The URBS adapter developed by Deltares supports the conversion of model parameters from standard Delft-FEWS PI-format to URBS ini files.

The model adapters activities for URBS are therefore split in two adapter documents:

  • URBS parameter adapter from Deltares (this wiki), responsible for:
    • Conversion of the Delft-FEWS PI Parameter XML file to the *.ini file that will be used by the URBS pre adapter. This parameters file can incorporate location attribute modifiers written by Delft-FEWS 
    • Documentation of this adapter can be found on this page.
  • URBS pre and post adapter from Don Carroll, responsible for:
    • Extraction of the start date, end date and time increment for the data series from the startDate, endDate and timeStep.
    • Conversion of time series files for rainfall, gauging station and inflow data (i.e. the “.r”, “.g” or ‘.i” files) from Delf-FEWS PI XML to native URBS formatted files.
    • Creation of the modelAdapter.bat file, to start the URBS model
    • Conversion of the URBS output files to a single Delft-FEWS PI XML time series file
    • Conversion of log messages from both the model run and the pre- and post adapter to Delft-FEWS PI XML log files
    • For more info see URBS pre and post adapter

Version control of URBS parameter adapter

  • 2018.02 and up: fews-urbs-parameter-adapter.jar (updated version due to upgraded jre version java 2013)
  • Pre 2018.02: fews-urbs-parameter-adapter.jar
  • Deprecated: UrbsIniAdapter.jar




exportActivities

exportTimeSeriesActivity exports

exportTimeSeriesActivity
            <exportTimeSeriesActivity>
                <exportFile>Input.xml</exportFile>
                <timeSeriesSets>
                    <timeSeriesSet>
                       ....
                    </timeSeriesSet>
                </timeSeriesSets>
            </exportTimeSeriesActivity>

exportParameterActivity exports parameter set for the configured module instance.

exportParameterActivity
<exportParameterActivity>
                <fileName>params.xml</fileName>
                <moduleInstanceId>URBS_Parameters</moduleInstanceId>
            </exportParameterActivity>

exportRunFileActivity exports a pi run file in xml format, containing general information about the run. This file is used by the URBS parameter adapter.

exportRunFileActivity
<exportRunFileActivity>
                <exportFile>paramAdapter_runinfo.xml</exportFile>
                <properties>
                    <string key="urbsIniFile" value="%ROOT_DIR%\model\$SUBCATCHMENT$.ini"/>
                    <string key="rdfFile" value="%ROOT_DIR%\model\$SUBCATCHMENT$.rdf"/>
                    <string key="URBS_BIN" value="$MODULES_BIN$\urbs"/>
                </properties>
            </exportRunFileActivity>

Properties URBS parameter adapter

For this adapter, some optional properties can be configured

parameterSeriesFile 

When this property is configured, the adapter will read a pi xml file and will extract the first non missing value for each time series and will replace the values in the .ini file that matches the key of the parameter of that time series.

 For example the value 48.0 will be taken from the next time series file and used to write "URBS_IL=48.0" to the urbs.ini file instead of the value taken from the PiParameters.xml file.

This is only done for the "Initial Dam Volumes and Levels", "Catchment and Channel Routing Parameters" and "Rainfall Runoff Parameters" sections in the .ini file.

Example parameterSeriesFile.xml
<?xml version="1.0" encoding="UTF-8"?>
<TimeSeries xmlns="http://www.wldelft.nl/fews/PI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.wldelft.nl/fews/PI http://fews.wldelft.nl/schemas/version1.0/pi-schemas/pi_timeseries.xsd" version="1.10">
    <timeZone>10.0</timeZone>
    <series>
        <header>
            <type>instantaneous</type>
            <locationId>tweed_uki</locationId>
            <parameterId>URBS_IL</parameterId>
            <ensembleId>IFD</ensembleId>
            <ensembleMemberIndex>0</ensembleMemberIndex>
            <timeStep unit="second" multiplier="86400"/>
            <startDate date="2018-05-21" time="10:00:00"/>
            <endDate date="2018-05-24" time="10:00:00"/>
            <missVal>-99.0</missVal>
            <stationName>tweed_uki</stationName>
            <lat>-28.46995606962717</lat>
            <lon>153.2671548515222</lon>
            <x>153.2671548515222</x>
            <y>-28.46995606962717</y>
            <z>0.0</z>
            <units>mm</units>
        </header>
        <event date="2018-05-21" time="10:00:00" value="-99.0" flag="8"/>
        <event date="2018-05-22" time="10:00:00" value="48" flag="0"/>
        <event date="2018-05-23" time="10:00:00" value="40" flag="0"/>
        <event date="2018-05-24" time="10:00:00" value="-99.0" flag="8"/>
    </series>
</TimeSeries>

locationParameterSeriesFile

When this property is configured, the adapter will read a pi xml file and will extract the first non missing value for each time series and will replace the values in the .ini file that matches the key of the location of that time series.

For example the value 48.0 will be taken from the next time series file and used to write "URBS_IL=48.0" to the urbs.ini file instead of the value taken from the PiParameters.xml file.

This is only done for the "Initial Dam Volumes and Levels" section in the .ini file.

vecFile

a vec file can be configured which will get the "URBS_VEC_TAGS" group from the Parameters.xml and will replace the corresponding tags is the specified vec file with the values of the parameter.

When "URBS_ASTERISKS" group is defined in Parameters.xml all %ASTERISK_<x>% tags will be replaced with an * where the <x> corresponds to one of the values in the string value of "URBS_ASTERISKS" parameter, separated by /


Example URBS_VEC_TAGS parameters.xml
<group id="URBS_VEC_TAGS" name="URBS Vec tags" readonly="false">
   <model>Subcatchments</model>
   <parameter id="VEC_B0" name="VEC_B0">
      <description>URBS_VEC_B0</description>
      <stringValue>27.5</stringValue>
   </parameter>
   <parameter id="VEC_BR" name="VEC_BR">
      <description>URBS_VEC_BR</description>
      <stringValue>0.875</stringValue>
   </parameter>
   <parameter id="VEC_BC" name="VEC_BC">
      <description>VEC_BC</description>
      <stringValue>0.23</stringValue>
   </parameter>
   <parameter id="VEC_BM" name="VEC_BM">
      <description>VEC_BM</description>
      <stringValue>1</stringValue>
   </parameter>
</group>
<group id="URBS_ASTERISKS" name="URBS_ASTERISKS">
   <model>Subcatchments</model>
   <parameter id="URBS_ASTERISKS" name="URBS_ASTERISKS">
      <description>URBS_ASTERISKS</description>
      <stringValue>1/3</stringValue>
   </parameter>
</group>

Example VEC with tags
River KNOCKLOFTY
MODEL: SPLIT
{Developed by Terry Malone on 08/10/2009}
USES: L, E*1, U*1, I*0.1
{The default parameters are for information only}
DEFAULT PARAMETERS: alpha = 0.2 m = 0.8 beta = 2.5 n = 1 x = 0
DEFAULT PARAMETERS: K24 = 0.993
CATCHMENT DATA FILE = knocklofty.dat
Factor = 1


INPUT. Newcastle_br
PRINT.Newcastle_br_G: B0=12.5 {12} Br=0.875 {0.825} BC= 0.25  BM = 1.0
STORE.


INPUT. nire
PRINT.Nire_G:B0=5.0  Br=0.875 BC= 0.2 BM = 1.0


GET.

ROUTE THRU #14 L = 2.63 Sc = 0.0005
ADD RAIN #14 L = 2.63 Sc = 0.0005



{PRINT.Ballydonagh: Br=0.9 BC= 0.2 BM = 1.0}

STORE.
RAIN #109 L = 5.84 Sc = 0.0273
GET.
ROUTE THRU #110 L = 1.22 Sc = 0.0019
ADD RAIN #110 L = 1.22 Sc = 0.0019
ROUTE THRU #15 L = 1.58 Sc = 0.0005
ADD RAIN #15 L = 1.58 Sc = 0.0005



PRINT.KNOCKLOFTY*
PRINT.KNOCKLOFTY_G : B0=%VEC_B0% {12} Br=%VEC_BR% {0.85} BC=%VEC_BC% {0.25} BM =%VEC_BM%


end of catchment data file.

4 PLUVIOGRAPHS:


LOCATION. suir014
1 SUBAREAS: 14
LOCATION. suir015
1 SUBAREAS: 15
LOCATION. suir109
1 SUBAREAS: 109
LOCATION. suir110
1 SUBAREAS: 110


END OF PLUVIOGRAPH DATA.

{3 rating station:}
{location. newcastle_br_G*1.1}
{location. nire_G*0.7}
{location. KNOCKLOFTY_G*1.1}
{end of rating stations.}

3 gauging station:
location.  newcastle_br_G%ASTERISK_1%
location.  nire_G%ASTERISK_2%
location.  KNOCKLOFTY_G%ASTERISK_3%
end of gauging station.
  • No labels