Versions Compared

Key

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

...

  • The values and what type each value is
  • (Optional) Stage/Discharge conversions
  • The timeSeries timeSeriesSet a thresholdValueSet is associated with

...

maxThresholdValues are compared with single values from a timeSeries. But only peak values are considered. A peak value has a previous and next value that are both lower. The threshold is crossed if a peak value is above the maxThresholdValue. If two crossings are within the timeSpan, only the first crossing will actually occur.

Image Removed

Figure 39 Elements of the ThresholdValueSets configuration.

thresholdValueSet

Root element for defining a set of thresholds. For each time series or time series set for which a threshold event is to be tested new element is required.

Attributes;

...

TimeSeriesSet Association

ThresholdValues are associated with all timeSeriesSets that are defined in the same thresholdValueSetSequence (With some extra associations for Stage/Discharge conversions). When the unit of the threshold values do not correspond with the internal unit, the unit element can be used to define the unit of the threshold values.

Stage/Discharge conversions

Rating Curves are used in fews to convert between stage (water level) and discharge (water flow) values. The optional stage and discharge elements in the thresholdValueSet should only and always be used if a rating curve is used in combination with thresholds.

A timeSeriesSet is put in the stage or discharge element based on what parameter is has. So putting a timeSeriesSet in the stage element says that this timeSeriesSet has a stage parameter. Putting the thresholds in the stage element is very similar to the timeSeriesSets in that it shows that these thresholds are a stage threshold. This indirectly shows what unit the threshold values are in.

A rating curve is normally associated to a timeSeriesSet by its locationId. So when leaving out any ratingCurve related config in the thresholdValueSet, ratingCurves are searched for in this way. When a different ratingCurve is needed, it can be specified with use of the ratingCurveLocationId and ratingCurveQualifierId elements.

After all these definitions it is clear:

  • What thresholds are stage and discharge
  • What timeseries are stage and discharge
  • What ratingCurves need to be used and consequently how to convert between stage and discharge values

 

Now the stage thresholds will be converted to discharge thresholds and vice versa after which they are assigned to the timeSeriesSet. So the stage and converted discharge thresholds will be assigned to the timeSeriesSets that were placed in the stage element. And similarly, the discharge and converted stage thresholds will be assigned to the timeSeriesSets in the discharge element.

Schemas

ThresholdValueSet

contains level- and/or rate- and/or max-thresholds set for a given time series

Image Added

...

description

Optional description for the ThresholdValueSet. Used for reference purposes only.

stage

Threshold values and time series that are in units of stage.

discharge

Threshold values and time series that are in units of discharge.

forecastAvailableThresholdValue

If a threshold crossing event is measured for a given observed parameter, then the thresholdEventCrossing module logs whether or not there is a forecast run available for the corresponding forecast parameter, within a given relative time period. This information is used in the ThresholdSkillScoreDisplay.

timeSeriesSet

Define one or more time series sets for which the threshold values in this thresholdValueSet will be used.

ratingCurveLocationId

When specified the rating curve available at this location is used instead of the location from the time series set.

ratingCurveQualifierId

One or more qualifier ids the used rating curve should have all

 

ThresholdValueSetSequence

Image Added

unit

Specify when the unit given for the values is not the same as the (internally stored) unit of the parameter it applies to. When specified it is required to also specify configUnitConversionsId  configUnitConversionsId in Parameters.xml. In those this unit conversions the conversion from the specified unit to the (internal) unit should be available

levelThresholdValue

Definition of Specific values for level thresholds.

aggregationLevelThresholdValues

Specific values for level thresholds. This contains one or more level threshold values for different aggregation periods.

rateThresholdValue

Definition of Specific values for rate thresholds.

...

maxThresholdValue

Definition of values fro peak event thresholds.

forecastAvailableThresholdValue

If a threshold crossing event is measured for a given observed parameter, then the thresholdEventCrossing module logs whether or not there is a forecastrun available for the corresponding forecast parameter, within a given relative time period. This information is used in the ThresholdSkillScoreDisplay

timeSeriesSet

Definition of the time series set for which the thresholds are to be tested.

ratingCurve

Convert this threshold level value to a discharge level threshold value using the ratingcurve defined here

Defining level thresholds

Image Removed
Figure 40 Elements of the Level Threshold configuration of the ThresholdValueSets configuration

levelThresholdId

Id of the level threshold. This Id must refer to a threshold type defined in the Thresholds definition (see previous paragraph).

value

Value of the threshold.

valueFunction

Function alternatives may also be used instead of the value itself (see: Location and attributes defined in Shape-DBF files).

upActionLogEventTypeId

Event code to be generated on the up-crossing of the threshold. This event code can be used to initiate for example enhanced forecasting. The event code need not be unique. Multiple threshold crossings may generate the same event code. Note that event codes will only be generated for runs which have an a-priori approved status. This is normally the scheduled forecast run.

downActionLogEventTypeId

Specific values for max thresholds.

 

levelThresholdValue

Image Added

levelThresholdId

ID of the level threshold type, as it is specified in the file thresholds

value

level threshold value

valueFunction

Location dependent threshold value by using a function with location attributes. eg. @FLOOD_WATCH@. When an attribute is missing for a location the threshold value is invisible/ignored for that location.

label

Optional label.

labelFunction

Optional location dependent label that is specified by a function, e.g. "@FLOOD_WATCH@", in which tags between "@" signs refer to location attributes that are defined in the locationSets config file. The tags are replaced by actual attribute values. These attribute values can be different for different locations. If an attribute is missing for a location, then the label is ignored for that location.

warningArea

One or more warnings that correspond to this threshold for the configured timeSeriesSet(s). These warningAreas are e.g. used in the ThresholdOverviewDisplay threshold crossing counts tabs.

upActionLogEventTypeId

ID of the action message (=additional log.message) that must be logged if a threshold value is crossed UP. This id has to contain a dot, because the action event is only visible to the master controller if this id contains a dot, e.g. "Threshold_Name.Up". The event code need not be unique.

downActionLogEventTypeId

ID of the action message (=additional log.message) that must be logged if a threshold value is crossed DOWN. This id has to contain a dot, because the action event is only visible to the master controller if this id contains a dot, e.g. "Threshold_Name.Down". The event code need not be unique.

 

aggregationLevelThresholdValues

Image Added

levelThresholdId

ID of the level threshold type, as it is specified in the file thresholds

timeSpanValue

One or more level threshold values for different aggregation periods. If this threshold value set is used for a time series without an aggregation period, then the timeStep of that time series is used as aggregation period. If a value for the aggregation period of a time series is not configured here, then these threshold values are ignored for that time series.

timeSpanValueFunction

One or more level threshold values for different aggregation periods. If this threshold value set is used for a time series without an aggregation period, then the timeStep of that time series is used as aggregation period. If a value for the aggregation period of a time series is not configured here, then these threshold values are ignored for that time series. Here the value elements can be function expressions, e.g. "@N@ / 1000", in which tags between "@" signs refer to location attributes that are defined in the locationSets config file. The expression is evaluated when the configuration is read, by replacing the tags with actual values. These values can be different for different locations. When an attribute is missing for a location the threshold value is invisible/ignored for that location.

label

Optional label.

labelFunction

Optional location dependent label that is specified by a function, e.g. "@FLOOD_WATCH@", in which tags between "@" signs refer to location attributes that are defined in the locationSets config file. The tags are replaced by actual attribute values. These attribute values can be different for different locations. If an attribute is missing for a location, then the label is ignored for that location.

warningArea

One or more warnings that correspond to this threshold for the configured timeSeriesSet(s). These warningAreas are e.g. used in the ThresholdOverviewDisplay threshold crossing counts tabs.

upActionLogEventTypeId

ID of the action message (=additional log.message) that must be logged if a threshold value is crossed UP. This id has to contain a dot, because the action event is only visible to the master controller if this id contains a dot, e.g. "Threshold_Name.Up"Event code to be generated on the down-crossing of the threshold. This event code can be used to initiate for example enhanced forecasting. The event code need not be unique. Multiple threshold crossings may generate the same event code. Note that event codes will only be generated for runs which have an a-priori approved status. This is normally the scheduled forecast run.

Defining rate thresholds

Image Removed
Figure 41 Elements of the Rate Threshold configuration of the ThresholdValueSets configuration

rateThresholdId

downActionLogEventTypeId

ID of the action message (=additional log.message) that must be logged if a threshold value is crossed DOWN. This id has to contain a dot, because the action event is only visible to the master controller if this id contains a dot, e.g. "Threshold_Name.Down". The event code need not be unique.

 

rateThresholdValue

Image Added

rateThresholdId

ID of the rate threshold type, as it is specified in the file thresholdsId of the rate threshold. This Id must refer to a threshold type defined in the Thresholds definition (see previous paragraph).

value

Value of the rate threshold that must be exceeded in . This is the change within timeSpan where timeSpan is the timeSpan configured below. Rate of change = (change within timeSpan) / timeSpan.

timeSpan

Time span to use to establish the rate.

rainRate

Boolean indicator to identify thresholds in rain rates where the threshold is defined as the average rainRate over the timeSpan exceeding the threshold, and a rate in for example a level where the rate is determined as the value divided by the time span.

upActionLogEventTypeId

valueFunction

Location dependent threshold value by using a function with location attributes. eg. @FLOOD_WATCH@. When an attribute is missing for a location the threshold value is invisible/ignored for that location

label

Optional label.

labelFunction

Optional location dependent label that is specified by a function, e.g. "@FLOOD_WATCH@", in which tags between "@" signs refer to location attributes that are defined in the locationSets config file. The tags are replaced by actual attribute values. These attribute values can be different for different locations. If an attribute is missing for a location, then the label is ignored for that location.

upActionLogEventTypeId

ID of the action message (=additional log.message) that must be logged if threshold value is crossed UP. This id has to contain a dot, because the action event is only visible to the master controller if this id contains a dot, e.g. "Threshold_Name.Up"Event code to be generated on the up-crossing of the threshold. This event code can be used to initiate for example enhanced forecasting. The event code need not be unique. Multiple threshold crossings may generate the same event code. Note that event codes will only be generated for runs which have an a-priori approved status. This is normally the scheduled forecast run.

downActionLogEventTypeId

downEventTypeId

ID of the action message (=additional log.message) that must be logged if threshold value is crossed DOWN. This id has to contain a dot, because the action event is only visible to the master controller if this id contains a dot, e.g. "Threshold_Name.Down"Event code to be generated on the down-crossing of the threshold. This event code can be used to initiate for example enhanced forecasting. The event code need not be unique. Multiple threshold crossings may generate the same event code. Note that event codes will only be generated for runs which have an a-priori approved status. This is normally the scheduled forecast run.

Defining peak event thresholds

Image Removed
Figure 42 Elements of the maxThreshold configuration of the ThresholdValueSets configuration

maxThresholdId

Id of the max threshold. This Id must refer to a threshold type defined in the Thresholds definition (see previous paragraph).

value

The value item is used here as a selection of peaks. The peak must exceed this value to be deemed significant (peaks over threshold)..

timeSpan

The timeSpan is used to establish independence of peaks. Peaks within timeSpan of each other are considered as being of the same event as a message will only be issued for the highest.

actionLogEventTypeId

timeSpan

This time span will be used in the computation of the rate of change. Rate of change = (change within timeSpan) / timeSpan.

rainRate

If rainRate is true, then the input time series is accumulated before the rate of change is computed.

 

maxThresholdValue

Image Added

maxThresholdId

ID of the max threshold type, as it is specified in the file thresholds

value

max threshold value

valueFunction

Location dependent threshold value by using a function with location attributes. eg. @FLOOD_WATCH@. When an attribute is missing for a location the threshold value is invisible/ignored for that location

label

Optional label.

labelFunction

Optional location dependent label that is specified by a function, e.g. "@FLOOD_WATCH@", in which tags between "@" signs refer to location attributes that are defined in the locationSets config file. The tags are replaced by actual attribute values. These attribute values can be different for different locations. If an attribute is missing for a location, then the label is ignored for that location.

actionLogEventTypeId

ID of the action message (=additional log.message) that must be logged if threshold value is exceeded. This id has to contain a dot, because the action event is only visible to the master controller if this id contains a dot, e.g. "Threshold_Name.Max"Event code to be generated on the threshold occurring. This event code can be used to initiate for example enhanced forecasting. The event code need not be unique. Multiple threshold crossings may generate the same event code. Note that event codes will only be generated for runs which have an a-priori approved status. This is normally the scheduled forecast run..

timeSpan

If two peaks fall have a distance that is less then the defined timeSpan, only the first peak will be reported.

 

forecastAvailableThresholdValue

is used to log the info that the related forecast run was available within a certain time window when the observed threshold has been crossed.

Image Added

 

deprecatedConversionChoice

Image Added

stageDischargeConversion

since 2010.01, for NEW style rating curve types. Used when stages are specified for the threshold levels and there are discharges in (some of) the specified time series sets.

dischargeParameterId

Discharge parameters for which the threshold values should be converted from stage to discharge.

dischargeStageConversion

since 2010.01, for NEW style rating curve types. Used when discharges are specified for the threshold levels and there are stages in (some of) the specified time series sets.

stageParameterId

Stage parameters for which the threshold values should be converted from discharge to stage

ratingCurve

For OLD style rating curve types. Convert the threshold levels from stage to discharge or vice versa using the rating curve defined here.

id

Rating curve id to use for threshold mapping.

ratingCurveType

Type of rating curve

parameterId

Parameter ids of the time series sets for which the conversion should take place.