Contents
Which displays are used in the IFD?
The Interactive Forecasting Displays (IFD) consists of several panels, each has a specific role in the process of creating a forecast with the IFD.
Section How to create a forecast with the IFD contains a use case to explain how a forecast can be created with the IFD and its panels.
Forecast panel
The forecast panel (indicated in yellow rectangle above) plays a central role in creating a forecast in the IFD. It shows a tree with all the forecast points for a region and a logical grouping of these forecast points. It can be set up to structure the work process of a forecaster. The forecast panel consists of three main sections: button bar; forecast tree and icons; and task properties panel.
Button bar
The top of the forecast panel shows a button bar. The buttons are explained in more detail in the table below.
Icon | Action | Visible | Enabled (not greyed out) | Available since |
---|---|---|---|---|
Switches to IFD between read-only mode and edit-mode | when <enableAutoRun> is true | always | ||
Starts the workflow of the node in IFD-mode (as local run, runs in the Operator Client)). | always | when the node has <localRun> set to true, and | ||
promotes a local IFD run to a server run. | always | when the node has an IFD-run and when <saveLocalRunEnabled> is set to true. | ||
starts a workflow in server mode. | always | when the node has <localRun> set to false, or | ||
starts the secondary workflow of the selected node | when a secondary workflow is configured | when a node with a secondary workflow is selected | 2018.01 | |
If the button is selected the threshold icons will be shown instead of the regular run status icons | by default, unless <hideThresholdsButton> is true | always | 2019.02 | |
If this button is selected a modifier icon will be shown for a topology node if active modifiers are visible in the modifiers panel if that topology node is selected. This means that if you disable for a topology node that modifiers are visible in the modifiers panel that the modifier icon will also not be visible. | by default, unless <hideModifiersButton> is true | always | 2020.01 |
Original button bar (6 buttons)
Optionally, your Delft-FEWS application can be set up to show the original button bar with 6 buttons. The buttons that are different from the new (default) button bar are described in the table below.
Icon | Action | Visible | Enabled |
---|---|---|---|
step to the next leaf node in the topology tree | always | always | |
start a workflow in IFD mode | always | when the node has <localRun> set to true | |
start all the workflows of the children of the group node in IFD-mode | always | when a group node is selected | |
updates the system time to the current time. | always | always |
Forecast tree and icons
The forecast tree is shown in the middle section of the forecast panel. The tree consists of two types of nodes:
- workflow nodes: nodes which can be used to start forecasts and view the results of their forecasts,
- view nodes: nodes without a workflow, these nodes are used for viewing purposes.
The status of the workflow of the workflow nodes is indicated by an icon. The icon can indicate the following statuses:
Status | Icon | Description | Example |
---|---|---|---|
Running | Curved arrow | A workflow which is running locally or at the server. | In the example below the workflow of the node ALKA2 is running. |
Pending | A workflow that is pending to run. | In the example above all the nodes below ALKA2 are pending. | |
Failed | A failed run is indicated by an icon with a exclamation mark. If the time zero of the failed run is equal to the time zero of the node the exclamation mark will be red otherwise it will be black. | In the example below the node Matsu has a failed run with a time zero equal to the time zero of the IFD (09-19-2012). When time zero changes (because the system time was changed) the icons also change. The red exclamation marks are changed to black. | |
Successful | If a workflow was fully successful the node will have a blue for a local run, and green icon for a server run. | The example below shows a successful server run for node North Slope. For the leaf nodes KUPA2, SGRA2 and CRUA2 a successful local run was executed. | |
Successful, but T0 is different | If the time zero of a node is different than the time zero which was used in the successful run then the icons are grey instead of green and blue and the check marks are now blue and green. | The example below shows a screenshot of the same Delft-FEWS system as shown above but now with a different time zero. | |
Successful, but something has changed | When a modifier is made at a node with a local successful run then the icon will change to a yellow icon with a blue check (local run) or yellow icon with a green check (server run)to indicate that the workflow of that node needs to rerun. If the user changes the state selection in the IFD so that the state selection used in the run doesn't match the state selection in the IFD anymore then the icon will turn to a yellow as well. Likewise if a user increases the forecast length. The results of a node can only be valid if all the previous nodes have run successfully and have a valid status. | In the example below a modifier was made to the node KUPA2. In the example below node TUNA2 has a successful status. When the user reruns the previous node NEBA2 then node TUNA2 also needs to rerun to make sure that its results are up-to-date. | |
Something has changed and previous node is invalid | When T0 of the node is different than the T0 of the workflow and one of the following is true
the icon will change into a grey icon with a yellow checkmark (both server runs and local runs). | ||
(Since 2016.01) The IFD status icon can be surrounded by a red outline, to indicate that the workflow task completed but not all of the data has been synchronised back to the operator client. This red outline feature is disabled for DDA clients as it pertains only to synchronisation in LDS clients. |
All systems normal: Running , successful run
Grey background: Successful run with different T0; different T0 -and- another item is invalid
Exclamation point: Failed run
Yellow background, things have changed: Modifiers, State selection, Forecast length
Yellow background: Previous node has an invalid status
Red outline: synchronisation issues
Overview of all the combinations which are available for a successful run
Task properties panel
The bottom section of the forecast panel can be used to select the task properties of a node.
The following properties can be changed or set:
- State selection,
- Time zero,
- Forecast length,
- User description for the workflow,
- What-if scenario.
The majority of these settings can be adjusted in the bottom section of the panel (left screenshot). More options are available in the panel behind the "edit run options" button (right screenshot).
The initial state selection, time zero and forecast length set directly after selecting a node can be determined by the configuration (see 24 Topology for these configuration options).
Modifiers panel
The modifiers panel allows you to create, modify or delete modifiers. It shows modifiers linked to the the node selected in the IFD, or modifiers for the grid plot for which spatial modifier mode has been activated (since 2019.02).
The top part lists modifiers created for the currently selected node (modifier table). Each row represents a modifier and contains its type, name, summary, locations, start and end times, valid time, user (=who created the modifier), creation time and expiry time. It also allows you to (in)activate, delete and copy modifiers (see below). Modifiers for a local run have a salmon background color. Modifiers for server runs have a green background and are saved to the server.
The bottom part shows the details of a selected modifier (modifier editor).
The splitter between the overview and the editor is stored in user_settings.ini. When the application is reopened, the splitter appears at the previously set position.
- Activate - Use check box to (de-)activate a modifier
- Delete - Use cross button to delete a modifier.
- If you have made a local change to a saved modifier, only the local change will be deleted and the background will change from salmon to green. If you delete it again, the server modifier will be deleted as well.
- (Note, in a SA the behavior is different. Here a single delete action deletes the entire modifier.)
- The Run Info panel shows both the server and local modifiers, so you can compare them directly.
This panel needs to be enabled, see How to define an ExplorerTask - what are the possible taskClass options?
- Copy - Use copy button to copy the modifier.
Spatial display and modifiers
There are spatial modifier types to modify grid time series (since 2019.02), which are created through the spatial display instead of the modifiers panel. See User Guide > 05 Spatial Display > Creating Spatial Modifiers.
Topology panel
The topology panel shows the topology of nodes linked to a selected node, highlighting the box of the selected node.
- The panel shows the topology, whether you select the parent node or a child node.
- Reversely, you can select a node in the Forecast panel by clicking on a box in the Topology panel.
- The connections are based on the Topology (nodes and previousNodeIds) and is not influenced by the workflows linked to those nodes.
- The colors of the boxes correspond to threshold crossings, as configured in 09 Thresholds.
This panel needs to be enabled, see How to define an ExplorerTask - what are the possible taskClass options?
DisplayGroup
A topology node can be connected to a Display Group. If this is the case, the first plot in this displayGroup will be shown automatically when the corresponding topology node is selected. If you switch between nodes with linked displayGroups Delft-FEWS will instead show a plot with the same location and parameter if available.
Plot display
Delft-FEWS always at least one plot display, the so-called primary plot display, which doesn't have lock in the toolbar.
When an additional plot display is opened, it will have a lock icon in the toolbar (see yellow indication below). By default the plot is locked, which means it is locked to that time series shown. When you select another node, the plot will not change accordingly. The timeseries shown will however update if new data for those series comes available.
Plot overview
The plot overview is a panel which shows a thumbnail of each plot of the displayGroup linked to the selected node. If you select a thumbnail, the primary plot display is automatically updated, as are other unlocked plots display (see above).
The 4 buttons at the top of Plot Overview can be used to select the first, the previous, the next plot and the last plot respectively.
Forecaster aid selection panel and Document Viewer
The forecaster aid selection panel is a tool window that provides a list documents that can be viewed in the Document Viewer, which is a main panel (see screenshots below).
The content of the selection panel depends on which node is selected in the Topology, and is updated automatically when a different node is selected.
- The documents are organized in (sub)directories, configured in the topology.xml as a <forecasterHelperDirectories>, see section below.
- Nodes with the same id as the (sub)directory name will display the documents in that (sub)folder.
- If you make use sub-folders, make sure to also include the main folder as a directory when you list the <forecasterHelperDirectories>.
- Documents in the folder configured as <allNodesDirectory> will be visible at all nodes.
- The following formats are supported:
- text-files,
- images and
- pdf-files.
- These can be documents that are
- part of the configuration (e.g. user guide),
- placed there by users for easy access, or
- created by the report module of Delft-FEWS
- a list of reports based on an explorer location document attribute (since 2017.02)
ForecasterHelperDirectories examples
We first give an example of forecasterHelperDirectories configured in Topology.xml using <directory>.
Next we show how to link directories to multiple nodes with <multipleNodesDirectory>. Any node which id starts with the <nodeIdPrefix> will be linked to that particular documents folder.
Note: If <forecasterHelperDirectories> is not configured, the INFORMATION_PANEL_FOLDER property defined in the global.properties will be used instead.
<forecasterHelperDirectories> <directory>d:\Data\ForecasterHelperData\</directory> <directory>d:\Data\FHD3\</directory> <directory>$DOCUMENTS_ROOT_FOLDER$</directory> <directory>$DOCUMENTS_ROOT_FOLDER$/subfolder_1/</directory> <directory>$DOCUMENTS_ROOT_FOLDER$/subfolder_2</directory> <allNodesDirectory>$DOCUMENTS_ALWAYSVISIBLE_FOLDER$</allNodesDirectory> </forecasterHelperDirectories>
<forecasterHelperDirectories> <directory>$DOCUMENTS_ROOT_FOLDER$</directory> <allNodesDirectory>$DOCUMENTS_ALWAYSVISIBLE_FOLDER$</allNodesDirectory> <multipleNodesDirectory nodeIdPrefix="Archive">$DOCUMENTS_ARCHIVE_FOLDER$</multipleNodesDirectory> <multipleNodesDirectory nodeIdPrefix="Configuration">$DOCUMENTS_CONFIGURATION_FOLDER$</multipleNodesDirectory> </forecasterHelperDirectories> <...> <node id="ArchiveTo_flood_Config" name="Archive Config to local disk"> <workflowId>Export_ToArchive_FloodOps_Config</workflowId> <filterId>Parameter_FloodOps</filterId> <toolWindow>document selection panel</toolWindow> </node>
Configuration of document panels
The Forecaster aid selection panel and document viewer need to be configured as explorerTasks in Explorer.xml.
<explorerTask name="Document Viewer"> <predefinedDisplay>documents</predefinedDisplay> </explorerTask> <explorerTask name="Forecaster help"> <taskClass>nl.wldelft.fews.gui.plugin.information.ForecasterAidSelectionPanel</taskClass> </explorerTask>
<explorerTask name="Documents viewer"> <taskClass>nl.wldelft.fews.gui.plugin.information.ForecasterAidDocumentPanel</taskClass> </explorerTask>
Example of document panels
Below an example of the tool window forecaster help (in this case renamed to: "HowTo Overview"). In this example the forecaster has 15 documents available for information. If multiple directories are configured this window will show all available files for the node from the different predefined directories together.
When one of the files is selected in this panel the content of the selected file is shown in the document viewer display. The document viewer is a dockable window in the centre of the Delft-FEWS Operator Client (or SA) GUI.
When a text file is selected, it can also be edited. To facilitate this an edit and save button are displayed above the document when selecting a text file (*.txt or *.xml).
Run info
The run info panel shows detail information of the latest run of the workflow of the selected node.
This panel needs to be enabled, see How to define an ExplorerTask - what are the possible taskClass options?
- (1st screenshot) If the workflow of the node has not run yet for the current T0 then the panel will show that there is no current run info available.
- (2nd screenshot) When the workflow has run. The status can either be successful, failed or partly successful. Only when the workflow was successful than the icon of that node will be set to green. The run status will be shown green in the run info box.
- (3rd screenshot) When the run is partly successful the icon of that node will be set to the red exclamation mark, the run status box in the run info panel will be set to yellow. When the run is failed the icon of the node will be set to the red exclamation mark, the run status box will be set to red.
Forecaster notes
The forecaster notes panel is a toolwindow that shows notes you or other forecaster have created regarding their previous forecasts for the forecast point.
- All fields in this display can be filtered by clicking the cells.
- Each line in this display represents an unique message.
- Messages with level ERROR and FATAL have an envelope icon to indicate if message is new (open) or unacknowledged (closed).
- ‘Acknowledged message’ button: removes the envelope icon.
- Messages with level WARN and INFO do not have this functionality.
- ‘Open message’ button: opens the content of the message.
‘Add message’ button: create a new message in a pop-up window, where you can enter or select the relevant information.
Event time (default is current system time)
Log Level
User (default is current user)
Event Code and
Log Template (can be used to assist the forecaster when writing a new message).
'Add': The new message will be synchronized to the server side and from there to the other users.
A message can be linked to a node in the Forecasts display, by selecting this node before you add the message.
If no node is selected, the message is always visible.All messages are also visible in the the Forecaster Notes tab of the System Monitor display. This tab allows querying of the messages.
- An envelope icon in the status bar of the Explorer indicates a new message has arrived.
Configuration of Forecaster Notes
Local and server runs
The philosophy: Local runs are used by the operator to interactively run a workflow on the operator client, check the results and potentially optimize a forecast by means of modifiers. Once the operator is satisfied with the forecast results, a server run is started and the results can be shared between operators. Local runs will not store any time series in the central Delft-FEWS database, only time series from server runs are stored in the central database.
This is implemented as follows:
- Local run results are only available in the local OC and are removed from the database when the application is closed/restarted.
- Server run results (and the modifiers of this run) are stored in the central database and are available from any OC.
- Local run results overrule server run results on the operator client. Even when a server run is started after a local run. This means server run results won't be visible in displays as long as the local run exists in the localDataStore.
- When the local runs are configured as child nodes of the server run, the local runs will be removed upon completion of the server run, and thus the results of the server run will be visible.
- When the local runs are configured as separate nodes, and not as child nodes of the server run, the local runs won't be removed and thus the results of the local runs will be visible.
The fact that local run results overrule server run results mean that the server run results won't be visible in graphs or spatial display, even for the operator who started the server run. As this behavior is not always wanted, this can be changed with the topology chosen in the IFD. Below are two different approaches to this.
Local and server runs - parent and child nodes
Within the IFD, local run results behave differently based on the topology structure that is chosen. We explain what changes with an example. Typically the server run is the parent node of the local runs, see screenshot below.
- North Slope is the parent node of KUPA2, SGRA2 and CRKLA2.
- North Slope has a workflow which consists of 3 sub workflows, which are each connected to the child nodes of North Slope.
- The child nodes of North Slope have local run results (blue box), which will be visible instead of the results of the workflow of the parent node.
- If next the North Slope workflow is run (i.e. a server run), the local run results in the child nodes of North Slope will be removed.
Because the local runs are deleted the icon for Local Node A and B will change from to . - Note: Only the results in direct child nodes of a parent node are removed. This does not impact local run results elsewhere in the IFD.
If in this example KUPA2 would also have a child node with a local run (i.e. a nested child node) then this local run would not be deleted.
Note: This logic is based on the configuration of the Topology (i.e. parent nodes and child nodes) and not the content of the workflows linked to these nodes (i.e. workflows and sub-workflows).
On the right is a schematic diagrams of a topology with nested nodes, which we will use to describe a different use case.
- First the workflows for Local Node A and B are run (blue squares in diagram).
- Next Server Node C and Server Node D are run (at the server). Because these nodes don’t have any child nodes, no local runs will be deleted after a successful server run.
- Lastly, Server node A is run (at the server). When the run finished the local runs of
- Local Node A run will be deleted.
- Local Node B run will not be deleted because it is not a direct child node of Server Node A.
Local and server runs - all child nodes
If you want to be able to see local and server runs at the same time, you can configure both the local and server run nodes as child nodes (without a parent node). In the screenshot below, the nodes that start with Save... are server runs, the other nodes are local runs. If you run a server run, the local run results are not removed, since they are not generated in a child node of the server run (as in the example above).
Note: for this to work well, it is necessary for the timeseries produced by all nodes to have unique moduleInstanceId / ensembleId combinations. For example, if you process rainfall for both the local run (e.g. Select Kolan rainfall) and the server run (e.g. Save Kolan), the resulting time series should be different. If they get the same moduleInstanceId, you need to configure different ensembleIds for both (e.g. "ifd" for the local run and "official" for the server run). If you don't do this, the workflows will still run, but the processed rainfall from the first run will be overwritten by the processed rainfall from the second run (since there is nothing different to be able to differentiate the two).
This is true in general, if you produce timeseries anywhere in Delft-FEWS which result in the same timeseriesSet definition (i.e. moduleInstanceId and ensembleId), the latter run will overwrite the timeseries from a previous run, also if the modules are run as part of different workflows etc.
How to create a forecast with the IFD
Below is a list of all possible steps in creating a forecast with the IFD.
Please note that not all of the listed steps are required, some steps might not be available/configured in your system.
- Start Delft-FEWS
- Selecting the forecast panel
- Reviewing the topology
- Review the list of available state date/times
- Adjust state and/or forecast length
- Starting the forecast process and selecting the workflow for which the forecast should be made
- Reviewing workflow status
- Reviewing graphs (graph display listens to topology selection)
- Reviewing graphs (graph display is independent from topology selection)
- Continue with the forecast process downstream
- Ending the forecast process
Starting Delft-FEWS
After starting Delft-FEWS, the Map display will be displayed in the center and the Forecast Panel-tab at the left will be selected.
This the default layout, which can be changed to your own layout by using the option File > Save layout in the top menu.
It is not possible to create modifiers in a synchronization client until the local datastore is fully synched with the central database.
To indicate that the IFD is doing its initial synchronization after startup the forecast-button shows a hour glass icon (see image on the right).
While synchronizing, it is possible to view scalar and spatial data.
When the initial synchronization is finished the icon will change to a pencil icon to indicate that it is possible to create modifiers.
Selecting the forecast panel
The whole process of creating a forecast by using the IFD is managed by the forecast panel, therefore the first step is selecting the Forecast tab at the left of the display.
The Forecast tab will give an list, typically in computational order of the basins of the region.
Review the list of available state date/times
The forecast panel also shows at the bottom the currently selected (default) warm state.
By clicking on the drop-down box all the available warm states are shown.
If the forecaster needs to use a different warm state than the default, a new warm state date may be selected from drop down menu titled Warm State Selection.
The selected warm state represents the end of the period the warm state is searched in.
By default the warm state search period begins a day before the end of the search period.
While running a workflow, the warm state search period is logged in the log panel.
An example:
- t0 = 26-06-2021 20:00:00 and
- Warm state selection = 25-06-2021 20:00:00, results in
- search period logged: "Warm state selection -2 day to -1 day, 1 day"
Note: when the warm state search period cannot be rounded to whole days, the period is logged in hours, for example:
- t0 = 26-06-2021 22:00:00 and
- Warm state selection = 25-06-2021 20:00:00, results in
- search period logged: "Warm state selection -50 hour to -26 hour, 1 day"
Adjust state and/or forecast length
The "Edit Run Options" button at the bottom of the forecast dialog gives access to alternative ways of selecting states.
It opens a dialog in which the user can select the state, forecast length and a what-if scenario.
After selecting the OK-button the selected task properties will be applied and used in the runs.
Starting the forecast process
To start the interactive forecast process, the user should select a local run node and run the workflow of that node.
Reviewing run status workflow
The icons in the forecast tree indicate the status of the workflow of a node.
- A refresh-icon indicate that a workflow is running.
- An hourglass indicates that a workflow is scheduled to run.
More details about the icons can be found in 24 Topology
Review graphs (graph display listens to segment selection)
When a run has finished the results of the run can be reviewed using the plot overview display (typically positioned at the right).
For each graph available for the current node a thumbnail will be shown. Select a thumbnail top open it in the main plot window.
The Plot Overview panel can be undocked or resized. When the display is resized the plots follow suit.
Creating a mod in the time series display
Mods can be created in the mods display or directly in the plot display.
To modify a time series directly in a plot, a time series has to be selected.
This can be done by selecting a time series in the legend of the plot.
Creating a mod in the mods display
The modifier display can be started by clicking on the wrench-icon at the toolbar or by using the shortcut ctrl+m. The modifier display will show all the mods which are applied in the currently selected segment. By clicking on the create mod-button a new mod can be created. After pressing the create mod-button a list of available mods will be shown. When the mod is created it can be applied by pressing the apply-button. With the run-buttons (rerun, rerun to selected and rerun all to selected) it is possible to rerun the workflows. Pressing the run-buttons will also automatically apply the mod.
Continue with the forecast process downstream
After reviewing the graphs and if needed applying mods the forecaster can proceed to the next segment.
Ending the forecast process
When the forecaster thinks that the current forecast is sufficient. The forecast can select the parent node of the leaf nodes and press the 'run on server'-button. When this button is pressed, first all the new modifiers and changes to the existing modifiers of the child nodes of the selected node will be uploaded to the server. When the upload is successful the workflow will be run at the server. The locally created runs will be deleted when the server run was successful and the results are downloaded successfully back to the Operator Client.
Dockable windows
Docking and undocking main displays
All windows in the centre section of Delft-FEWS can be undocked. This can easily be done by clicking on the square-box icon beside the x-icon at the tab of each display.
Undocking the windows allows the forecaster to arrange the windows as they like. After clicking on the icon the display will automatically be undocked. Putting the display back in docking mode can be done by clicking on the double square icon at the top of the display. By clicking on the x-icon the display can be closed.
Save display layout and reload on opening with same user
By default Delft-FEWS will start with the map display opened in the centre section of the display and with the map display, data display and the topology display docked in the center section of Delft-FEWS. It is possible to customize the display layout. First step in customizing the display layout is to manually place the display in the desired display layout. In the example below three displays are undocked and the graph-tab and the display are moved to the left section of the display. In the File-menu the user can store this layout by selecting the option store layout. The next time Delft-FEWS is started it will start with the stored layout.
Keep in mind that the layout manager is only responsible for laying out open windows. It will not open a window by itself. Only once the user opens the window, will the stored layout be applied!
Save display layout and reload default layout
The file-menu also provides an option default layout. By selecting this option the default layout can be reloaded.