...
What | ModifierTypes.xml |
---|---|
Required | no |
Description | Definition of modifiers in an IFD environment |
schema location | httphttps://fewsfewsdocs.wldelftdeltares.nl/schemas/version1.0/modifierTypes.xsd |
Contents
Table of Contents |
---|
...
Modifier | Type | Description |
---|---|---|
missing value modifier | time series modifier | Set the values of a time series to missing over a certain period of time |
time series modifier | time series modifier | This modifier can be used to modify the values of a time series by defining new time value pairs. It is also possible to define an operation like add 2 or divided by 3 for a certain period. It is also possible to set all the values to missing for a certain period (comparable to the missing value modifier) |
constant value modifier | time series modifier | Set the values of a time series to a fixed value over a certain period of time |
enumeration modifier | time series modifier | The user can select an option from a pre-defined list of options. For each option a value will be defined which will stored in the time series. This modifier is usually applied to an empty time series. |
single value modifier | time series modifier | This modifier can be used to apply a certain value at a certain time to a time series. |
typical profile modifier | time series modifier | This modifier can be used to shift an existing timeseries in time. |
mark unreliable modifier | time series modifier | This modifier can used to set the values of a modifier to unreliable over a certain period of time. |
blending steps modifier | transformation/module parameter module | This modifier can be used to adjust the amount of "blending steps" which will be used in the adjustQ transformation. |
disable adjustment modifier | transformation/module parameter module | With this modifier it is possible to disable the adjustQ transformation |
time shift constant modifier | transformation/module parameter module | With this modifier it is possible to modify the amount of time steps which will be used in the timeShiftConstant transformation |
reverse order modifier | transformation/module parameter module | With this modifier it is possible to reverse the order of the time series in the mergeSimple transformation |
compound modifier | time series modifier | This modifier can be used to define a value at a single date/time for 1 or more time series by using sliders. |
high low surge selection modifier | time series modifier | |
switch option modifier | time series modifier | Modifier which can used to set a value for each time step for a set of time series. It is only possible to define a value for a one of the time series in the entire set. |
option modifier | time series modifier | This modifier can be used to set a single value at a single time for a set of time series. It is only possible to define a value for a one of the time series in the entire set. |
module parameter modifier | module parameter modifier | Generic module parameter modifier panel which can used for all modifiers. |
priority modifiertime series modifier | model parameter modifier | Orders a list of priorities |
multiple model module parameter modifier | module parameter modifier | The module parameter modifier can be used to modify multiple model parameters in a single modifier. |
unit hydrograph modifier | module parameter modifier | The unit hydrograph modifier can be used to modify the area elevation curve of the unit hydrograph model. |
merge weighted modifier | transformation/module parameter modifier | This modifier can be used to modify the parameters of the mergeWeighted function. |
table rating curve modifier | time series modifier | |
shift multiply rating curve modifier | time series modifier | The rating curve can be modified by shifting the entire curve or by multiplying the entire curve with a defined factor. |
location attribute modifier | location attribute modifier | A modifier for modifying location attributes. |
spatial profile modifier | time series modifier | |
spatial copy modifier | time series modifier |
...
Code Block | ||
---|---|---|
| ||
<?xml version="1.0" encoding="UTF-8"?> <parameters xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.wldelft.nl/fews/PI" xsi:schemaLocation="http://www.wldelft.nl/fews/PI httphttps://fewsfewsdocs.wldelftdeltares.nl/schemas/version1.0/pi-schemas/pi_modelparameters.xsd" version="1.5"> <group id="default" readonly="false" modified="false"> <parameter id="UHG_DURATION" name="UHG_DURATION"> <intValue>6</intValue> </parameter> <parameter id="UNIT" name="UNIT"> <stringValue>ENGLISH</stringValue> </parameter> <parameter id="UHG_INTERVAL" name="UHG_INTERVAL"> <intValue>6</intValue> </parameter> <parameter id="DRAINAGE_AREA" name="DRAINAGE_AREA"> <dblValue>3103.0</dblValue> </parameter> <parameter id="CONSTANT_BASE_FLOW" name="CONSTANT_BASE_FLOW"> <dblValue>111.0</dblValue> </parameter> <parameter id="UHG_ORDINATES" name="UHG_ORDINATES"> <table> <columnTypes A="double"/> <row A="7499.0"/> <row A="16872.0"/> <row A="29370.0"/> <row A="39993.0"/> <row A="48116.0"/> <row A="43742.0"/> <row A="38118.0"/> <row A="31869.0"/> <row A="24995.0"/> <row A="18747.0"/> <row A="13123.0"/> <row A="8123.0"/> <row A="5436.0"/> <row A="3874.0"/> <row A="2625.0"/> <row A="1687.0"/> <row A="1000.0"/> <row A="500.0"/> <row A="250.0"/> <row A="62.0"/> <row A="0.0"/> <row A="0.0"/> <row A="0.0"/> <row A="0.0"/> <row A="0.0"/> <row A="0.0"/> <row A="0.0"/> <row A="0.0"/> </table> </parameter> </group> <group id="default" readonly="false" modified="true"> <validPeriod> <timeZone>0.0</timeZone> <startDate date="2012-09-09" time="12:00:00"/> <endDate date="2012-09-27" time="12:00:00"/> </validPeriod> <parameter id="UHG_DURATION" name="UHG_DURATION"> <intValue>6</intValue> </parameter> <parameter id="UNIT" name="UNIT"> <stringValue>ENGLISH</stringValue> </parameter> <parameter id="UHG_INTERVAL" name="UHG_INTERVAL"> <intValue>6</intValue> </parameter> <parameter id="DRAINAGE_AREA" name="DRAINAGE_AREA"> <dblValue>3103.0</dblValue> </parameter> <parameter id="CONSTANT_BASE_FLOW" name="CONSTANT_BASE_FLOW"> <dblValue>0.0</dblValue> </parameter> <parameter id="UHG_ORDINATES" name="UHG_ORDINATES"> <table> <columnTypes A="double"/> <row A="8666.18"/> <row A="19498.05"/> <row A="33941.3"/> <row A="46217.72"/> <row A="24331.23"/> <row A="50550.24"/> <row A="23027.725"/> <row A="36829.26"/> <row A="28885.35"/> <row A="21664.88"/> <row A="15165.53"/> <row A="9387.31"/> <row A="6282.09"/> <row A="4476.97"/> <row A="3033.57"/> <row A="1949.57"/> <row A="1155.65"/> <row A="577.82"/> <row A="288.91"/> <row A="71.65"/> <row A="0.0"/> <row A="0.0"/> <row A="0.0"/> <row A="0.0"/> <row A="0.0"/> <row A="0.0"/> <row A="0.0"/> <row A="0.0"/> </table> </parameter> </group> </parameters> |
...
By default, local modifiers are committed when the user starts a server run in which these modifiers are used. When this option is enabled the modifiers will be committed directly after the moment they are changed.
...
Valid time
The behaviour of the valid time for simulated time series and external historical time series is as follows:
When modifiers are defined in the period before valid time, they will always be valid.
The situation changes when modified values are placed in the future. When the valid time is on or after time zero, all modified values are valid and will be used.
Later, when time has proceeded and valid time is before time zero, the modified values AFTER valid time are not valid anymore.
The behaviour of the valid time for external forecasting time series is as follows:
If a modifier has a valid time then it will only be applied if the external forecast time is the same as the valid time. If a modifier doesn't have a valid time then it will always be valid.
Assigning modifiers to whatifs
By default, modifiers are always applied to the workflow
With the introduction of the new WhatIf Templates/WhatIf Editor functionality in 2021.01, one can configure the system to allow modifiers to be created in the What-If Editor and only to be applied in a whatif.
This behavior is specified in element <whatIfModifierType> available in each modifierType,
...
By default, modifiers are always applied to the workflow
With the introduction of the new WhatIf Templates/WhatIf Editor functionality in 2021.01, one can configure the system to allow modifiers to be created in the What-If Editor and only to be applied in a whatif.
This behavior is specified in element <whatIfModifierType> available in each modifierType, which offers four options:
...
Modifiers can become part of a what-if by referencing the mdoifierType modifierType in the whatifTemplates.
Location attribute modifiers
Visibility of modifiers in the IFD
When a modifier is of a type without a What-if modifier type configured then the modifier is visible when the modifier is used at the selected topology node or what-if node. But when the modifier is of a type with a What-If modifier type configured then different rules apply.
What-If modifier type | Topology Node | What-If Node |
---|---|---|
always apply in workflow (default) | visible when applicable for the selected node | visible when applicable for the selected node |
never apply in what-if workflows | visible when applicable for the selected node | never visible |
apply if referenced in what-if workflow | never visible | visible when applicable for the selected node |
apply according to creation method | visible when applicable for the selected node | never visible |
Location attribute modifiers
Currently there is only one type of modifier, the locationAttributeModifier, available to modify location attributes. This type has however a lot of configuration options so it can be used in a lot of different ways.
...
The element <selection> can be used to predefine the list of options which are available for a certain attribute. The predefined list op of options can be defined by:
- a list of location id's,
- a location set,
- a hard-coded predefined list of options, by using the <predefined> or <predefinedInteger> elements
- a multi-value attribute which contains all the options which are available, by using the optionsControllingLocationAttributeId.
Below an example of a hard-coded list of options.
...
defaultValidTime
If this option is configured than a valid time can be chosen for this modifier. The valid time always default to time zero.
priorityModifier
Modifier by which module parameter type 'table' can be modified. This modifier presently supports reordening of the table rows for the given moduleParameterId. This moduleParameterId refers to the 'table' parameter defined in pi_modelparameters.xml. When a modifier is created, the original table values are filled in by default. It enables the user to re-order the "priorities" in the modifier display.
Transformation module parameter modifiers
...
Code Block | ||
---|---|---|
| ||
<mergeSimpleModifiers> <reverseOrderModifiers id="switchts" name="SWITCHTS"> <defaultStartTime>start run</defaultStartTime> <defaultEndTime>time zero</defaultEndTime> </reverseOrderModifiers> </mergeSimpleModifiers> |
defaultStartTime
The default start time of the modifier. The available options are startrun and time zero. It corresponds to the same field in the modifier display.
...
Code Block |
---|
<parameters xmlns="http://www.wldelft.nl/fews/PI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.5" xsi:schemaLocation="http://www.wldelft.nl/fews/PI httphttps://chps1fewsdocs.deltares.nl/schemas/version1.0/pi-schemas/pi_modelparameters.xsd"> <group id="default"> <parameter id="blendingSteps"> <intValue>1</intValue> </parameter> <parameter id="interpolationType"> <stringValue>difference</stringValue> </parameter> <parameter id="disableAdjustment"> < <boolValue>false</boolValue> </parameter> </group> </parameters> |
...
The picture below shows both the original and the referenced rating curves:
Configuration example
Code Block | ||
---|---|---|
| ||
<ratingCurveModifiers> <tableRatingCurveModifier id="tableRC" name="table RC"> <defaultStartTime>start run</defaultStartTime> <defaultEndTime>end run</defaultEndTime> </tableRatingCurveModifier> </ratingCurveModifiers> |
...
- The time series modifier has always a start- and end date.
- The time series modifier can (Optionally, if configured) have a valid time.
When a valid time is used the behaviour is different for time series types:
- When a modified time series is a simulated forecast timeseries and the valid time is equal to time zero (or later) then the entire modifier will be applied, otherwise the modifier will only be applied up to the valid time. When a modifier is created the valid time will be equal to the system time. In this situation the entire modifier will be applied. When the modifier is still available and used in later runs with a later time zero then the modifier will only be partly applied up to the valid time. This functionality was developed for the following situation. When the data of a simulated time series before time zero is a copy of the observed data this part of the simulation is not likely to change in simulations which are executed at a later time. So the part of the modifier before time zero (valid time) is still valid in later runs. However the part of the modifier after time zero is likely to be invalid because this part of the time series more likely to change in later runs.
- When a modified time series is an external forecast time series, and no valid time is configured, the modifier is valid for all external forecast times.
- When a modified time series is an external forecast time series, and a valid time is configured, the modifier is valid for the valid time only.
The forecaster can modify time series by making changes in table or in the graph. The changes in the graph are made by clicking in the graph.
- When the user clicks from left to right then the values between the points are interpolated.
- When the user clicks from right to left only the newly added or changed points are adjusted but no interpolation will be done between the last two points.
- When more than one time series is shown in the display it is possible to make a selection of which time series should edited when making changes by clicking in the graph.
- The time series which should be changed can be selected by clicking on the legend of that example time series in the graph.
Besides modifying the time series by editing values in the graph or table, processing functions can be selected from the dropdownbox. Available processing functions are:
- add
- subtract
- multiply
- divide
- replace
- missing
- ignore time series
- time series
When one of the options add, subtract, multiply, divide or replace is chosen than a text box in which a value can be entered appears next to the operation type-dropdownbox.
The options add, subtract, multiply, divide or replace are self-explaining. They add, subtract, multiply, divide or replace the timeseries with the specified value over the specified period of time.
The option missing replaces the values in the time series with missing values over the specified period of time, the ignore time series sets the value over the specified period of time to unreliable.
The last option time series is the default option which will be selected after the initial creation of this modifier and this option allows the forecaster to freely edit the timeseries.
An example of the use of the time series modifier is the RRICHNG modifier.
Display
Below a screenshot of the timeseries modifier.
Configuration example
Code Block | ||
---|---|---|
| ||
<timeSeriesModifier id="rrichng" name="rrichng">
<timeSeries>
<moduleInstanceSetId>SNOW17_Forecast</moduleInstanceSetId>
<valueType>scalar</valueType>
<parameterId>RAIM</parameterId>
<locationSetId>Gages_Catchments</locationSetId>
<timeSeriesType>simulated forecasting</timeSeriesType>
<timeStep unit="hour" multiplier="6"/>
</timeSeries>
<defaultStartTime>start run</defaultStartTime>
<defaultEndTime>end run</defaultEndTime>
<defaultValidTime/>
<resolveInWorkflow>true</resolveInWorkflow>
<resolveInPlots>false</resolveInPlots>
<createContinuousModifiers>true</createContinuousModifiers>
</timeSeriesModifier> |
timeSeries
This element can be used to identify to which timeseries this modifier can be applied.
onlyApplyLastModifier
If this option is enabled only the most recent applicable modifier of this type will be applied
mergeUncommittedModifiers
If this option is enabled uncommitted modifiers will be merged into one modifier. This option is limited to modifiers which only modify a single time series
referenceTimeSeries
This option can be used to define a filter for reference time series. The available time series for the selected node in the topology will be filtered by using the defined filter.
Only the reference time series which belong to the same parameter group as the modifiers which are being editted in the display will be displayed.
In addition only the reference time series which have the same location(s) as the time series which are being modified will be shown.
defaultValidTime
Forecast time after which the modifier is no longer valid. If omitted, this value will be default to the year 3000 and the valid time entry box will not be shown in the modifier display. Note that the only way to get the validTime option available, is to add: <defaultValidTime/> (without attributes or content)
offsetValidTime
an offset to the default valid time, compared to the T0 of the run
resolveInWorkflow
In the element timeSeries is a filter defined which defines which timeseries can be modified with this timeseries. If the element resolveInWorkflow is set than the modifier can be applied to all timeseries in the current workflow to which the defined time
series filter applies. In an IFD-environment the current workflow is the workflow which is associated to the selected topology node.
resolveInPlots
This element can only be used in IFD-environments. If this element is enabled than the timeseries-filter is also applied to all timseries in the plots associated with the current selected topology node.
editInPlots
It is possible to create a timeseries modifier in the plot displays. This can be done by selecting a timeseries by selecting a legend. After selection the timeseries can be modified by graphically editing the timeseries or by changing values in the graph. This feature can
be disabled by setting this option to false.
createContinousModifiers
If a modifier is created in the graph by default one modifier will be created. However when the option createContinousModifiers is disabled one modifier will be created for every continuous range of modifications made. For example if the forecaster changes a 6 hours timeseries at 00z and at 12z but not a 0600z than by default this will result in creating a single modifier, but when this option is disabled two modifiers will be created. One for each continuous range of changes. In this case there is a change at 00z and one at 12z therefore two modifiers will be created.
Graphical appointment of modifiers (aka GAM)
In order to make use of the graphical appointment of modifiers menu, it is adviced to configure the TimeSeries Display as PlotsTimeSeriesDialog in Explorer.xml:
Code Block |
---|
<explorerTask name="Data Display">
..
<taskClass>nl.wldelft.fews.gui.plugin.timeseries.PlotsTimeSeriesDialog</taskClass>
..
</explorerTask> |
Then, you need to configure several things in the ModifierTypes.xml
Create a modifier type for the parameter you want to modify (as described on this page), e.g.:
The forecaster can modify time series by making changes in table or in the graph. The changes in the graph are made by clicking in the graph.
- When the user clicks from left to right then the values between the points are interpolated.
- When the user clicks from right to left only the newly added or changed points are adjusted but no interpolation will be done between the last two points.
- When more than one time series is shown in the display it is possible to make a selection of which time series should edited when making changes by clicking in the graph.
- The time series which should be changed can be selected by clicking on the legend of that example time series in the graph.
Besides modifying the time series by editing values in the graph or table, processing functions can be selected from the dropdownbox. Available processing functions are:
- add
- subtract
- multiply
- divide
- replace
- missing
- ignore time series
- time series
When one of the options add, subtract, multiply, divide or replace is chosen than a text box in which a value can be entered appears next to the operation type-dropdownbox.
The options add, subtract, multiply, divide or replace are self-explaining. They add, subtract, multiply, divide or replace the timeseries with the specified value over the specified period of time.
The option missing replaces the values in the time series with missing values over the specified period of time, the ignore time series sets the value over the specified period of time to unreliable.
The last option time series is the default option which will be selected after the initial creation of this modifier and this option allows the forecaster to freely edit the timeseries.
An example of the use of the time series modifier is the RRICHNG modifier.
Display
Below a screenshot of the timeseries modifier.
Configuration example
Code Block | ||
---|---|---|
| ||
<timeSeriesModifier id="rrichng" name="rrichng">
<timeSeries>
<moduleInstanceSetId>SNOW17_Forecast</moduleInstanceSetId>
<valueType>scalar</valueType>
<parameterId>RAIM</parameterId>
<locationSetId>Gages_Catchments</locationSetId>
<timeSeriesType>simulated forecasting</timeSeriesType>
<timeStep unit="hour" multiplier="6"/>
</timeSeries>
<defaultStartTime>start run</defaultStartTime>
<defaultEndTime>end run</defaultEndTime>
<defaultValidTime/>
<resolveInWorkflow>true</resolveInWorkflow>
<resolveInPlots>false</resolveInPlots>
<createContinuousModifiers>true</createContinuousModifiers>
</timeSeriesModifier> |
timeSeries
This element can be used to identify to which timeseries this modifier can be applied.
onlyApplyLastModifier
If this option is enabled only the most recent applicable modifier of this type will be applied
mergeUncommittedModifiers
If this option is enabled uncommitted modifiers will be merged into one modifier. This option is limited to modifiers which only modify a single time series
referenceTimeSeries
This option can be used to define a filter for reference time series. The available time series for the selected node in the topology will be filtered by using the defined filter.
Only the reference time series which belong to the same parameter group as the modifiers which are being editted in the display will be displayed.
In addition only the reference time series which have the same location(s) as the time series which are being modified will be shown.
defaultValidTime
Forecast time after which the modifier is no longer valid. If omitted, this value will be default to the year 3000 and the valid time entry box will not be shown in the modifier display. Note that the only way to get the validTime option available, is to add: <defaultValidTime/> (without attributes or content)
offsetValidTime
an offset to the default valid time, compared to the T0 of the run
resolveInWorkflow
In the element timeSeries is a filter defined which defines which timeseries can be modified with this timeseries. If the element resolveInWorkflow is set than the modifier can be applied to all timeseries in the current workflow to which the defined time
series filter applies. In an IFD-environment the current workflow is the workflow which is associated to the selected topology node.
resolveInPlots
This element can only be used in IFD-environments. If this element is enabled than the timeseries-filter is also applied to all timseries in the plots associated with the current selected topology node.
editInPlots
It is possible to create a timeseries modifier in the plot displays. This can be done by selecting a timeseries by selecting a legend. After selection the timeseries can be modified by graphically editing the timeseries or by changing values in the graph. This feature can
be disabled by setting this option to false.
createContinousModifiers
If a modifier is created in the graph by default one modifier will be created. However when the option createContinousModifiers is disabled one modifier will be created for every continuous range of modifications made. For example if the forecaster changes a 6 hours timeseries at 00z and at 12z but not a 0600z than by default this will result in creating a single modifier, but when this option is disabled two modifiers will be created. One for each continuous range of changes. In this case there is a change at 00z and one at 12z therefore two modifiers will be created.
Graphical appointment of modifiers (aka GAM)
In order to make use of the graphical appointment of modifiers menu, it is adviced to configure the TimeSeries Display as PlotsTimeSeriesDialog in Explorer.xml:
Code Block |
---|
<explorerTask name="Data Display">
..
<taskClass>nl.wldelft.fews.gui.plugin.timeseries.PlotsTimeSeriesDialog</taskClass>
..
</explorerTask> |
Then, you need to configure several things in the ModifierTypes.xml
Create a modifier type for the parameter you want to modify (as described on this page), e.g.:
Code Block | ||
---|---|---|
| ||
<timeSeriesModifier id="timeseries.to.modify" name="GAM.timeseries">
| ||
Code Block | ||
| ||
<timeSeriesModifier id="timeseries.to.modify" name="GAM.timeseries">
<timeSeries> <moduleInstanceId>My.Module.Instance.Id</moduleInstanceId>
<!-- optional --> <parameterId>My.parameter</parameterId> </timeSeries>
<defaultStartTime>start run</defaultStartTime>
<defaultEndTime>end run</defaultEndTime>
<resolveInWorkflow>true</resolveInWorkflow>
<resolveInPlots>true</resolveInPlots>
</timeSeriesModifier> |
...
An example of the missing value modifier is shown below.
Configuration example
Code Block | ||
---|---|---|
| ||
<missingValueModifier id="setmsng" name="setmsng"> <timeSeries> <moduleInstanceId>ImportIHFSDB</moduleInstanceId> <valueType>scalar</valueType> <parameterId>STG</parameterId> <locationSetId>Gages_AK</locationSetId> <timeSeriesType>external historical</timeSeriesType> <timeStep unit="hour" multiplier="6"/> </timeSeries> <timeSeries> <moduleInstanceId>ImportIHFSDB</moduleInstanceId> <valueType>scalar</valueType> <parameterId>STG</parameterId> <locationSetId>Gages_AK</locationSetId> <timeSeriesType>external historical</timeSeriesType> <timeStep unit="hour" multiplier="1"/> </timeSeries> <defaultStartTime>start run</defaultStartTime> <defaultEndTime>end run</defaultEndTime> <resolveInWorkflow>false</resolveInWorkflow> <resolveInPlots>true</resolveInPlots> </missingValueModifier> |
...
Code Block | ||||
---|---|---|---|---|
| ||||
<spatialProfileModifier id="SpatialProfile" name="Spatial Profile">
<expiryTime unit="day" multiplier="2"/>
<userDefinedDescriptionField id="Comment" descriptionField="Comment"/>
<timeSeries>
<moduleInstanceId>Import_NWP_Mediumrange</moduleInstanceId>
<qualifierId>BE</qualifierId>
</timeSeries>
<timeSeries>
<moduleInstanceId>Import_NWP_Mediumrange</moduleInstanceId>
<qualifierId>RWC</qualifierId>
</timeSeries>
<descriptiveFunctionGroups>
<descriptiveFunctionGroup name="Basic statistics">
<descriptiveFunction function="startTime" ignoreMissings="true"/>
<descriptiveFunction function="endTime" ignoreMissings="true"/>
<descriptiveFunction function="timeLength" ignoreMissings="true"/>
</descriptiveFunctionGroup>
<descriptiveFunctionGroup name="Accumulation">
<descriptiveFunction function="movingAccumulationMax" ignoreMissings="true">
<timeSpan unit="hour" multiplier="1"/>
<timeSpan unit="hour" multiplier="2"/>
<timeSpan unit="hour" multiplier="3"/>
<timeSpan unit="hour" multiplier="4"/>
<timeSpan unit="hour" multiplier="6"/>
<timeSpan unit="hour" multiplier="12"/>
<timeSpan unit="hour" multiplier="24"/>
<timeSpan unit="hour" multiplier="48"/>
<timeSpan unit="hour" multiplier="72"/>
<timeSpan unit="hour" multiplier="96"/>
<timeSpan unit="hour" multiplier="120"/>
</descriptiveFunction>
<descriptiveFunction function="sum" ignoreMissings="true"/>
</descriptiveFunctionGroup>
</descriptiveFunctionGroups>
</spatialProfileModifier> |
The regular modifier type configuration elements such as <expiryTime> and <userDefinedDescription> field are available. The configuration elements specific for this modifier are explained below.
timeSeries
The <timeSeries> elements are time series filters used to configure to which time series the spatial profile modifier can be applied. In the given example, any time series with module instance id "Import_NWP_Mediumrange" and qualifier id "BE" or "RWC" can be modified with a spatial profile modifier. If such a time series is shown in the spatial display, the spatial modifier mode button and the spatial profile button used to create spatial profile modifiers will be available. The configured time series should always be a grid time series. Configuring a spatial copy modifier for a time series with a different type will have no effect.
descriptiveFunctionGroups
This is an optional element to configure the statistics shown in the statistics panel. When this element is not configured, the statistics panel (and button) will be hidden in the spatial profile modifier editor. More information on the available descriptiveFunctions can be found in Configuration Guide > System Configuration > Time Series Display Configuration.
"Apply to" option
Via "Apply To" button it is possible to apply a single modifier to an entire set of IFD-segments . In case of time series modifiers an option “create unique modifiers for each time series” can also be used.
This option makes possible to create a modifier as an unique independent modifier for each of the selected segments. The option is useful when many segments need the same type of modifier but the forecaster needs to make adjustments to a subset of the initial group modifier.
" ignoreMissings="true"/>
</descriptiveFunctionGroup>
<descriptiveFunctionGroup name="Accumulation">
<descriptiveFunction function="movingAccumulationMax" ignoreMissings="true">
<timeSpan unit="hour" multiplier="1"/>
<timeSpan unit="hour" multiplier="2"/>
<timeSpan unit="hour" multiplier="3"/>
<timeSpan unit="hour" multiplier="4"/>
<timeSpan unit="hour" multiplier="6"/>
<timeSpan unit="hour" multiplier="12"/>
<timeSpan unit="hour" multiplier="24"/>
<timeSpan unit="hour" multiplier="48"/>
<timeSpan unit="hour" multiplier="72"/>
<timeSpan unit="hour" multiplier="96"/>
<timeSpan unit="hour" multiplier="120"/>
</descriptiveFunction>
<descriptiveFunction function="sum" ignoreMissings="true"/>
</descriptiveFunctionGroup>
</descriptiveFunctionGroups>
</spatialProfileModifier> |
The regular modifier type configuration elements such as <expiryTime> and <userDefinedDescription> field are available. The configuration elements specific for this modifier are explained below.
timeSeries
The <timeSeries> elements are time series filters used to configure to which time series the spatial profile modifier can be applied. In the given example, any time series with module instance id "Import_NWP_Mediumrange" and qualifier id "BE" or "RWC" can be modified with a spatial profile modifier. If such a time series is shown in the spatial display, the spatial modifier mode button and the spatial profile button used to create spatial profile modifiers will be available. The configured time series should always be a grid time series. Configuring a spatial copy modifier for a time series with a different type will have no effect.
descriptiveFunctionGroups
This is an optional element to configure the statistics shown in the statistics panel. When this element is not configured, the statistics panel (and button) will be hidden in the spatial profile modifier editor. More information on the available descriptiveFunctions can be found in Configuration Guide > System Configuration > Time Series Display Configuration.
"Apply to" option
Via "Apply To" button it is possible to apply a single modifier to an entire set of IFD-segments . In case of time series modifiers and reverseOrderModifiers an option “create unique modifiers for each segment” can also be used.
This option is only available when creating a new modifier and makes possible to create a modifier as an unique independent modifier for each of the selected segments. The option is useful when many segments need the same type of modifier but the forecaster needs to make adjustments to a subset of the initial group modifier.
Copy time series modifiers
It is possible to copy time series modifiers to another set of modifiers with a different set of module instance descriptors.
This option is available after selecting one or more time series modifiers in the modifiers panels in the menu which appears after a right mouse click.
This option is by default not available. To enable this feature the copyModifiers section needs to configured.
An example is given below.
Code Block |
---|
<copyModifiers>
<timeSeriesModifiersPattern>
<pattern>MAP</pattern>
<patternDescription>MAP</patternDescription>
</timeSeriesModifiersPattern>
<timeSeriesModifiersPattern>
<pattern>_HTMS</pattern>
<patternDescription>1D</patternDescription>
</timeSeriesModifiersPattern>
<timeSeriesModifiersPattern>
<pattern>_Delft3D_UpdateStates</pattern>
<patternDescription>D3D Update States</patternDescription>
</timeSeriesModifiersPattern>
<timeSeriesModifiersPattern>
<pattern>_Delft3D_0</pattern>
<patternDescription>D3D Scenario 0</patternDescription>
</timeSeriesModifiersPattern>
<timeSeriesModifiersPattern>
<pattern>_Delft3D_1</pattern>
<patternDescription>D3D Scenario 1</patternDescription>
</timeSeriesModifiersPattern>
</copyModifiers> |
The configured pattern is the pattern which is actually used when copying modifiers. The pattern description is a pretty name which only used for display purposes in the "Copy modifiers dialog"
After selecting one or more time series modifiers which comply to one of the patterns defined in the copyModifiers section the option "Copy the selected time series modifiers to another module instance id" will appear in the menu.
After selecting the option a panel (see below) in which the user can select a pattern will appear.
The user can select a new pattern (only one) from the list. After pressing the OK button the selected time series modifiers will be copied to a new module instance id.
The new module instance id will be determined by replacing the pattern from the existing module instance id with the new selected pattern.
For example if the original module instance id is original_MAP and we have configured two patterns original and copy and we select the pattern copy from the list the new module instance id will be copy_MAP.
All the other characteristics of the time series modifiers will be kept the same. The new copied modifier will only differ in module instance id.