Versions Compared

Key

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


...

What

ratingCurves

pi_ratingcurves.xml

Description

Configuration for rating curves at specific locations

schema location

http

https://

fews

fewsdocs.

wldelft

deltares.nl/schemas/version1.0/

ratingCurves

pi-schemas/pi_ratingcurves.xsd

Entry in ModuleDescriptors

<moduleDescriptor id="Transformation">
<description>General transformation Component</description>
<className>nl.wldelft.fews.system.plugin.transformation.TransformationController</className>
</moduleDescriptor>

Rating Curves Module Configuration

The rating curves module is a standard file (i.e. it has a fixed name) which contains all the rating curves used in your system. A rating curve is referenced by the location id. I.e. each location has a specific rating curve for that point in the river. Furthermore a rating curve can have one or more periods for which it is valid. For each location there can be different rating curves that are valid for different times.

When the transformation module needs to use a rating curve for a given location at a given time, then it will search all rating curves for the given location id. From all rating curves with the given location id, it will use the rating curve that is valid for the given time.

It is also possible to have different rating curves with the same location id, the same rating curve type and with overlapping valid periods, as long as they have different rating curve ids. This makes it possible to have rating curves with valid periods that only have a start date (no end date), which are valid until the next rating curve with the next start date becomes valid. In this case, if multiple rating curves are valid for a given time, then the transformation module will use the rating curve that has the most recent start date in its valid period.

The ratings are either "qhrelationtable" or "simpleratingcurve" refer to by the hydroMeteoFunction in the transformation module. An example of the reference from the transformation module is shown below:

Code Block

<hydroMeteoFunction function="qhrelationtable" outputVariableId="Flow" useRatingCurve="true" ratingCurveType="LevelToFlow"/>
or
<hydroMeteoFunction function="simpleratingcurve" outputVariableId="Flow" useRatingCurve="true" ratingCurveType="LevelToFlow"/>
Rating curve

Image Removed
Figure 1: Overview of rating curve config file

location for which the rating is valid should be the same as in the locations.xml
ratingCurveType you can choose from either LevelToFlow or FlowToLevel
reversible if this option is set to "true" then both level to flow and flow to level calculations with be allowed
ValidPeriod allows you to enter a start and end date for which the rating is valid (e.g. a summer and winter rating). The dates and times can be specified with or without a time zone. Use e.g. 2008-06-20T11:33:00+05:00 for a time in time zone GMT+05:00. Use e.g. 2008-06-20T11:33:00Z for a time in GMT, where the Z means GMT. If a time is specified without a time zone, e.g. 2009-12-01T00:00:00, then the time is assumed to be in local time. Note: 2008-06-20 11:33:00 in time zone GMT+5:00 is physically the same time as 2008-06-20 06:33:00 in GMT.
correction see below
ratingCurveTable see below
ratingCurveEquation see below

correction (not yet implemented)

Image Removed
Figure 2: correction complex type

The correction complex type allows the user to specify a correction technique for unsteady flow (jones equation) or backwater (constant fall method or normal fall method).

jonesEquation the user must specify the minimum h for which the method is valid (h_min and the a, b and c parameters - see below)

The Jones Equation is of the form:

Image Removed

where:
Qm = unsteady discharge
Qc = steady discharge
S0 = energy slope for steady flow
vw = wave velocity
dh/dt = rate of charge of water level in time (m/day)

The adjustment factor 1/S0vw (day/m) varies with water level. This factor is fitted by a parabolic function of h:

Image Removed for h>hmin

Twin gauge station fall-discharge methods

Stage-fall-discharge or twin gauge station fall-discharge methods are user to include backwater effects on stage-discharge ratings.

In these methods the fall F between the water level at the discharge measuring site and a downstream station is considered as an additional parameter, to account for the effect of water surface slope on discharge. Both the constant fall method and normal fall method are based on the following equation:

Image Removed

Where:
Qm = backwater affected discharge
Qr = reference discharge
Fm = measured fall
Fr = reference fall
p = power, with 0.4 < p < 0.6

constant fall method

In this method the reference fall Fr is taken as a constant. A special case of the constant-fall method is the unit-fall method, where Fr = 1m is applied. In the computational procedure a value for Fr is assumed. Then a rating curve is fitted to the values:

Image Removed

normal fall method

In this method the reference fall (Fr) is modelled as a function of the water level; Fr = f(h). This function is represented by a parabola:

Image Removed

In Fews you should specify the a, b and c parameters and also a value of hmin, below which the backwater correction is not valid.

Rating Curve Table

ratingCurveTable this allows you to simply enter the pairs of q and h values.

...


  </ratingCurve>
  <ratingCurve ratingCurveId="TheBigRiver">
    <location>
      <locationId>X1123</locationId>
    </location>
    <ratingCurveType>LevelToFlow</ratingCurveType>
    <reversible>true</reversible>
    <ratingCurveTable>
      <ratingCurveTableRecord flow="0.100" level="0.054"/>
      <ratingCurveTableRecord flow="0.500" level="0.155"/>
      <ratingCurveTableRecord flow="1.000" level="0.244"/>
      <ratingCurveTableRecord flow="1.479" level="0.317"/>
    </ratingCurveTable>
  </ratingCurve>
Rating Curve Equation

A rating curve equation can be defined per section of the rating curve using the lowerLevel and UpperLevel tags. The equation can be in the form of a power equation or a parabola. The form of the equation:

Power equation Image Removed
Parabola Image Removed

In Fews you should configure the appropriate values for a, b and c

Here is an example:

...

Configuration

The transformation stageDischarge/ratingCurve uses rating curves according to the schema pi_ratingcurves.xsd. 

Rating curves can be stored  in the folder RegionConfigFiles  in the file RegionConfig.xml , or  can be imported  in the FEWS database  with  TimeSeriesImport module,  import type “pi_ratingcurves”

Rating Curve schema

The schema of the pi-ratingcurves can be found at: https://fewsdocs.deltares.nl/schemas/version1.0/pi-schemas/pi_ratingcurves.xsd

Image Added

Header

The header element contains the metadata about the rating curve. Below an overview of the available elements.

  • locationId: The location id for which the rating curve is valid
  • qualifierIdThe allows the configurator to add 1 or more qualifier to the definition of the rating curve. This is useful when for 1 location more rating curves are valid. The locationId and the configured qualifiers define the id of the rating curve.
  • startDate: This element defines when the rating curve becomes active.
  • endDate:  This (optional) element defines until when the rating curve is active.
  • longName: Optional descriptive name
  • stationName: Optional station name
  • stageUnit:  Definition of the stage unit
  • dischargeUnit: Definition of the discharge unit
  • comment: This section allows to define a (optional comment) for the rating curve. If a comment is defined the comment will be shown in the TimeSeriesDialog when viewing the rating curve.
  • creationDate: The date on which the rating curve was created.
  • creationTime: The time on which the rating curve was created.
  • region: The description of the region. This is needed when the id of the rating curve is the same in different regions.
  • properties:  Optional properties  of the rating curve

Table

The table contains the actual description of the Table rating curve.

  • InterpolationMethod: Two options are available:linear and logaritmic. When linear is selected the calculation is done by the regular linear method.

The slope will be computed as:

Image Added

The discharge can be calcuted from the stage by using the following equation:

Image Added

When the logartimic option is selected the slope will be calculated by:

Image Added

The discharge can be computed by using the following equation:

Image Added

The stage can be computed by using the following equation:

Image Added

When an offset is defined the stage can be calculated by:

Image Added

minStage

The minimum stage which is allowed for this rating curve. If the minStage is configured as 0.2m and a stage of 0.1m is used as input to calculate a discharge.

than the actual stage used in the calculation will not 0.1m but 0.2m. If the rating curve is used in a discharge to stage calculation and the calculated stage is lower than

the minStage than the calculated stage will be set to the minStage value. If, for example, the minStage is set 0.2m and the calculated stage is equal to 0.1m the

actual calculated stage will be corrected to 0.2m to ensure that no stages lower than minStage are calculated.

This option is usually used to limit the stage value calculated when using extrapolation.

maxStage

The maximum stage which is allowed for this rating curve. 

If the maxStage is configured as 5.2m and a stage of 5.5m is used as input to calculate a discharge,

then the actual stage used in the calculation will not be 5.5m but 5.2m. If the rating curve is used in a discharge to stage calculation and the calculated stage is higher than

the maxStage than the calculated stage will be set to the maxStage value. If, for example, the maxStage is set 5.2m and the calculated stage is equal to 5.5m the

actual calculated stage will be corrected to 5.2m to ensure that no stages higher than maxStage are calculated. It is possible to configure the maxStage as INF which means that the

maxStage is set to infinite. Which is the same as defining no maximum stage

row

The row element can be used to define the rows of the stage-discharge table. Each row has a mandatory stage and discharge element. An optional offset can be added.

If a row doesn't include an offset element then the previous defined offset will be used.

powerEquation (Since 2018.02)

PowerEquation can be used as PI Rating cuve since Delft-FEWS version 2018.02. 


Image Added

The powerEquation uses the following  equations: 

discharge = cr * (stage - alpha)^ beta + Q0

stage = (discharge/cr)^(1/beta) + alpha

where ‘cr’ and ‘beta’ are rating curve constants,  ‘alpha’ is a constant which represents the stage corresponding to zero discharge and Q0 is  optional shifting constant.


To show the stageToDischargePowerEquation rating curves in the TimeSeriesDisplay, a table is generated on the fly from the power equations.
For each equation ten stage values are generated using increment (max stage – min stage) /10 , and for each stage a discharge is computed. Please note that this table is only used in the display and not in TransformationModule computations.