Which displays are used in the IFD?
The IFD (Interactive Forecasting Displays) consists of several panels. Each of these panels has a specific role in the process of creating a forecast with the IFD. In this chapter the functionality of each panel in the IFD will be explained.
In chapter How to create a forecast with the IFD will be explained with a use case how a forecast can be created with the IFD by using the combined functionality of the separate panels.
The forecast panel (indicated in yellow rectangle above) plays a central role in creating a forecast in the IFD. The forecast panel shows a tree with all the forecast points for a region and a logical grouping of these forecast points. It is also possible to show the work process of a forecaster in the forecast panel. The forecast panel consists of three main sections each of them will be explained in detail in the coming sections.
The top of the forecast panel shows a button bar. By default this button bar will look like this. In the table below the buttons are explained in more detail.
|Enabled (not greyed out)
|Switches to IFD between read-only mode and edit-mode
|when <enableAutoRun> is true
|Starts the workflow of the node in IFD-mode (as local run, runs in the Operator Client)).
when the node has <localRun> set to true, and
|promotes a local IFD run to a server run.
|when the node has an IFD-run and when <saveLocalRunEnabled> is set to true.
|starts a workflow in server mode.
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
If the button is selected the threshold icons will be shown instead
of the regular run status icons
|by default, unless <hideThresholdsButton> is true
|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
Original button bar (6 buttons)
Alternatively, your Delft-FEWS application can show the original button bar with 6 buttons. The table below only includes the buttons that are different to the new button bar (above).
|step to the next leaf node in the topology tree
|start a workflow in IFD mode
|when the node has <localRun> set to true
|start all the workflows of the children of the group node in IFD-mode
|when a group node is selected
updates the system time to the current time.
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:
|A workflow which is running locally or at the server.
|In the example below the workflow of the node ALKA2 is running.
A workflow that is pending to run.
|In the example above all the nodes below ALKA2 are pending.
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.
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 which can be started by clicking on the "edit run options" button (right screenshot).
The initial state selection, time zero and forecast length which are set directly after selecting a node can be determined by the configuration. The page 24 Topology describes which configuration options are available.
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.
- 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.
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.
The modifiers panel is an important display in the IFD. It shows the modifiers which are created for the selected node in the forecast panel or (since 2019.02) the modifiers for the grid plot on which spatial modifier mode has been activated. Modifiers can be created, modified or deleted in this panel.
The upper part of the display gives an overview of the modifiers created for the currently selected node in the forecaster panel. When a modifier is selected in this panel, the details will be shown in the lower part of the panel. It also allows the user to make mods active and inactive with the checkbox in the column Active. When a modifier is made locally, it get's a salmon background color. When it is saved to the server (by running the associated WF on the server), it gets a green background color.
- Delete - A modifier can be deleted by pressing the cross icon. If you have made a local change to a saved modifier, only the local change will be deleted when you press the cross. The background color will change back from salmon to green. If you delete it again, the saved modifier will be deleted as well. (Note, in a SA the behavior is different. In a SA a single delete action deletes the entire modifier.) If you make use of the Run Info panel (see Explorer Tasks, with <taskClass>nl.wldelft.fews.gui.plugin.runinfo.RunInfoPanel</taskClass>), this will show both the saved and local modifiers, so you can compare them directly.
- Copy - The copy-icon copies the modifier.
Splitter - The position of the splitter between the table and the editor is stored in user_settings.ini. When the application is reopened, the splitter appears at the previously set position.
Since 2019.02, there are modifier types which are used to modify grid time series. These spatial modifiers need to be created through the spatial display instead of the modifiers panel. More information on how to create spatial modifiers in the spatial display is found at User Guide > 05 Spatial Display > Creating Spatial Modifiers.
The topology panel shows the topology of the children of selected node, both when you select the parent node itself, and when you select one of the child nodes. The components and connections are based on the Topology nodes and previousNodeIds (and not on the content of the workflows linked to those nodes). When a child node is selected, the corresponding box in the topology is highlighted. Likewise, you can also select a child node by clicking on a box in the Topology panel.
The colors of the boxes in the topology correspond to threshold crossings. The color of the box and the thresholds which are monitored are configurable in the threshold module of Delft-FEWS.
You enable the TopologyPanel in the Explorer.xml, see How to define an ExplorerTask - what are the possible taskClass options?
The plot display is used to show scalar time series. A topology node can be connected to a display group. When a topology node is selected and there is a display group connected to this node then the first plot of that display group will be shown automatically. If there is already a node selected then Delft-FEWS will first try to find a plot with the same location and parameter as currently displayed if that is not possible then the first plot will be displayed.
When the IFD is started, there is always at least one plot display available. This plot is called the primary plot display. The primary plot doesn't have lock icon at the left of the toolbar. When a new plot display is started this plot will have a lock icon at the left on the toolbar. When a new plot displayed is started, by default the plot will be locked. The lock icon is indicated in yellow in the image below.
When a plot is locked, the display is locked to that set of time series. When the forecaster selects another node, the plot will continue to display the original time series and will not change. However when new data is brought in, the plot is updated with new data. When the toggle-button is switched off (icon changes to unlock) the plot window is updated automatically when a new node is selected.
The plot overview is a panel which shows a thumbnail of each plot which is configured for the selected node. This panel gives an overview of the selected node. When a plot is selected the primary plot is automatically updated, also other plots display which are not locked (see previous chapter) are updated.
At the top of the panel there are four buttons. The first button selects the first plot, the second button selects the previous plot, the third button selects the next plot and the last button selects the last plot.
Forecaster help (aka Document Viewer)
The forecaster aid document panel (or document viewer) displays (user provided) documents linked to nodes in the Topology. The following formats are supported: text-files, images and pdf-files.
The documents are organised in directories and subdirectories, which can be configured in the topology.xml as a forecasterHelperDirectories. 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 documents within these folders can be part of the configuration (e.g. user guide), be placed there by users for easy access, or created by the report module of Delft-FEWS, to make them easily accessible through the Delft-FEWS interface. As long as the file format is supported, the document(s) will be shown at the relevant node in your Topology.
You can also link directories to multiple nodes, by making use of the <multipleNodesDirectory> element. Any node which id starts with the <nodeIdPrefix> will be linked to that particular documents folder.
If the forecasterHelperDirectories is not configured, the INFORMATION_PANEL_FOLDER property defined in the global.properties will be used instead.
To add the Forecaster help panel and document viewer to the Delft-FEWS explorer, please add the following tasks to Explorer.xml. The <predefinedDisplay> "documents" (or taskClass ForecasterAidDocumentPanel) is the main window, which displays the content of the documents in the explorer. The ForecasterAidSelectionPanel is a so called toolwindow, displaying a list of all available documents (in the folder linked to the node). The content of this Selection panel depends on which node is selected in the Topology, and is updated automatically when a different node is selected.
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.
The run info panel shows detail information of the latest run of the workflow of the selected node. 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
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.
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.
The forecaster notes panel shows the notes other forecaster have created regarding their previous forecasts for the forecast point. Forecasters can also created their own note and publish them. The display is located at the bottom of the Explorer. All fields in this display can be filtered by clicking the cells.
Each line in this display represents an unique message. An envelope icon at the beginning indicates whether message is new (open) or unacknowledged (closed). After clicking the ‘Acknowledged message’ button on the left side of the display, the icon disappears. The content of the message can be enlarged when clicking the ‘Open message’ button. The same icon is available in the status bar of the Delft-FEWS Explorer, to indicate new messages have arrived.
To add a new message, click the ‘Add message’ button. In the pop-up window, the Event time can be entered, the Log Level selected, as well as a User, Event Code and a Log Template. By default the Current system time is entered as well as the user name. The Log template can be used to assist the forecaster with a new message. The message will be synchronized to the server side and from there to the other users.
A message can be made specific to a node in the Forecasts display, by selecting this node before you add a message. If no node is selected, the message is always visible. All messages are also visible in the System Monitor display, in the Forecaster Notes tab. This tab allows querying of the messages.
How to create a forecast with the IFD
Steps in creating a forecast
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 obligated.
- 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
After starting FEWS, the Map display will be displayed in the centre and the Forecast Panel-tab at the left will be selected.
This the default layout. The layout after starting Delft-FEWS is however configurable by creating and saving a custom layout by using the option Save layout in the File 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.
While the Operator Client if synchronizing, it is already 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, 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. If the default warm state is not correct another warm state can be selected from the drop-down box.
The selected warm state represents the end of the period the warm state is searched in. The warm state search period begins a day before the end of the search period . This is by default.
While running a workflow, the warm state search period is logged in the log panel. An example:
If t0 = 26-06-2021 20:00:00 and Warm state selection = 25-06-2021 20:00:00 the following search period is logged: : "Warm state selection -2 day to -1 day, 1 day"
if the warm state search period cannot be rounded to whole days, the period is logged in hours, for example :
If t0 = 26-06-2021 22:00:00 and Warm state selection = 25-06-2021 20:00:00 the following search period is logged: : "Warm state selection -50 hour to -26 hour, 1 day"
Adjust state and/or forecast length
By pressing the Edit Run Options button at the bottom of the forecast dialog the user will have access to alternative ways of selecting states. After pressing the advanced button a dialog will be shown 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 should be reviewed. By selecting the plot overview at the right a list of thumbnails will be displayed. For each graph available for the current node a thumbnail will be shown. To display a graph, the forecaster selects a thumbnail and then this graph is displayed in the main plot window. The plot display will show the selected graph. The Plot Overview panel can be undocked. When the display is expanded the plots are automatically resized.
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.
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.