Here are some of the most notable changes and improvements:
Improved handling of error values
Here is a breakdown of how BlueM.Wave now deals with error values:
“NaN” and unreadable (i.e. non-number) values in time series files are converted to nodes with NaN values during import (this is written to the log when it occurs)
NaN values are normally not visible in the chart, in fact, they are omitted from the time series that is passed to the charting component. This means that line graphs connect across any time periods that have NaN values.
There is now a new button that allows you to visualize NaN values by coloring time periods containing NaN values with a color band of the same color as the series (see screenshot below). Note: The color bands are drawn for all currently active time series, so if multiple time series containing NaN values are active when you press the button, you may get overlapping color bands.
Pressing the button again removes all color bands from the chart.
Also noteworthy is that some time series formats use certain numbers to represent error values. BlueM.Wave automatically converts these values to NaN during import. Currently, this is implemented for the following time series formats:
ZRXP format: the error value specified as “RINVAL” in the file header (usually also -777)
Of course, it is still possible to handle any other, user-specified error values in a time series by pressing the button “Convert error values”. Unlike in previous versions, this feature now converts the specified values to NaN instead of completely removing them, so that they can still be visualized as described above and will also be included when exporting the time series.
Improved integration with TALSIM-NG
As most of the recent developments have been sponsored by SYDRO, BlueM.Wave has naturally also improved its ability to handle time series managed by TALSIM-NG, SYDRO’s river basin and reservoir simulation model.
It is a bit of a hidden feature, and of course only really useful for TALSIM-NG users: when you select a simulation result or one or even multiple time series in TALSIM-NG and then press Ctrl+C, information about the time series is copied to the clipboard. If you then press Ctrl+V in BlueM.Wave, this clipboard content is parsed and the previously selected time series are loaded into BlueM.Wave.
BlueM.Wave even takes care of unzipping simulation results from WLZIP files if necessary.
Many more new features, bug fixes and small improvements have been added since the last release, so here is the full changelog:
Added rudimentry support for storing an “Interpretation” property for time series.
Interpretation is currently only known for series read from WEL files and the TALSIM clipboard, all other series have a default interpretation value of 99 (Undefined).
Series with interpretation 2 (BlockRight), 3 (BlockLeft) and 5 (CumulativePerTimestep) are displayed as (inverted) stairs in the chart, all others are displayed normally (linear interpolation between nodes).
Added a button for auto-adjusting the Y-axes to the current viewport
(currently only works for left and right, but not custom axes)
Added support for reading Q_Strg.dat files in HYDRO_AS-2D version 5 format (previous versions still supported)
Added read support for PRMS output files (annual and monthly summaries, as well as DPOUT)
Added write support for ZRXP format
Added write support for UVF format
Added write support for SYDRO binary format (BIN) (only in x86 version)
Added a button for visualizing NaN values of the currently active series
This also causes the time periods consisting of NaN values to be written to the log.
Added metadata handling for time series, metadata is displayed in the series properties dialog
Implemented reading and writing of metadata for file formats UVF and ZRXP
Added a dialog for editing metadata before export
Added a new analysis function “Cumulative” which converts a time series to cumulative values
Added the possibility of specifying custom import settings in Wave project files (*.wvp) (#720)
Added a button and a dialog for merging time series (#719)
Added a dialog for specifying a reference date (beginning of simulation) when importing HYDRO_AS-2D files
The Open File menu now includes a list of recently used files (not stored across sessions)
Added write support for the SYDRO binary format (BIN) (only in x86 version)
Added a button for changing the time step of a time series (#717) (only in x86 version)
Added the ability to process more clipboard contents from TALSIM
(including BIN files and multiple files/series at once) (#695)
Added the ability to extract WEL files from WLZIP files of the same name
The “Enter time series” dialog has been improved, unparseable values are now converted to NaN instead of causing an abort of the import.
The “Remove error values” function has been changed to “Convert error values” and now converts user-specified error values to NaN
When importing time series from SMUSI REG format, the title is taken from the first line of the file, before any comma
The Reload from Files command now respects the previously made series selection for each file
Imported files are no longer kept as file objects in memory (should lead to less memory usage)
ZRXP format: the time part of the timestamp is now optional (00:00:00 assumed if missing)
ZRXP format: values equal to the error value specified as “RINVAL” in the file header are converted to NaN during import
UVF format: fixed reading and writing of time series starting before 1900
UVF format: values equal to -777 are recognized as error values and converted to NaN during import
BIN format: values equal to -9999.999 are recognized as error values and converted to NaN during import
Fixed export to SMUSI REG format. Time series must be equidistant with 5 minute time step (use the new “Change timestep” function if necessary).
The function TimeSeries.getCleanZRE() has been replaced with two separate functions: Timeseries.removeNaNValues() and Timeseries.convertErrorValues()
When saving a chart to the native TEN format of TeeChart, any NaN values contained in the series are lost (i.e. the nodes with the NaN values are omitted from the series).
Added “Logarithmic Nash-Sutcliffe Efficiency” as a new GoF parameter
The GoF parameters can now optionally be calculated for individual hydrological years
Added support for importing BW_TMP.DAT result files from HYDRO_AS-2D
Error values in time series such as e.g. -777 and -9999 are now imported and displayed as regular values. Previously, when importing from BIN and DWD-T-L format, these would be replaced with NaN. The new “Remove error values” function can be used to remove these error values, if desired. (#693)
Analysis “GoodnessOfFit“: Volume error is based on actual volume integrated over time if the time series unit ends with “/s”
Removed support for the DWD-T-L format
If a time series contains duplicate nodes, the duplicate nodes are now simply discarded and a warning is written to the log instead of aborting the import
The decimal mark selector in the import series dialog now actually works (#351)
“Comparison” analysis function: changed the result series to a point series because a line series in TeeChart automatically sorts itself by the x-values and thus connects the points in the wrong order (not time-based)
The main change is the complete translation of the interface to English. Also, most of the documentation in the BlueM wiki has been translated to English. Furthermore, Talsim-NG has been added as a new simulation engine.
One of the major advantages of BlueM.Sim is it’s modular structure and the outer time loop, making the implementation of new modules relatively easy and straightforward. Currently implemented modules comprise natural catchment parts (including detailed SWAT modeling and diffuse pollution); lakes, ponds, and reservoirs (including complex management schemes); and river segments (including structured cross sections, flood routing and water quality processes).
Urban structures like urban catchment parts, sewers, combined sewer overflows and waster water treatment plants have been coupled via OpenMI so far.
BlueM.Sim is tightly coupled to BlueM.Wave for time series management and BlueM.Opt for multi-objective optimization tasks. BlueM.Wave is able to import and export a wide range of different time series formats whereas BlueM.Opt is equipped with several interfaces to interact with other simulation software.
Given it’s wide range of functionalities, users of BlueM.Sim, BlueM.Wave and BlueM.Opt range from research institutions over government institutions to private companies. For example, the hydrological model core of BlueM.Sim forms the base of simulation-based analysis and planning methodology of the German Federal State of Hesse to identify critical impacts on receiving water bodies from the identification of critical impacts due to waste water discharges. For further application examples of BlueM please refer to our application page.
For further information about the current status of BlueM please refer to the wiki or one of our recent (German) publications:
Aside from regular bug fixes and enhancements, recent development has been focused on BlueM.Wave, where many new functionalities have been released in version 1.6.
Currently, we are working on the direct integration of urban modules into the BlueM.Sim model core. While discharge routines have already been implemented and are currently being tested and validated, the development focus is now on implementing water quality routines as well, also for more stagnant water bodies like slow flowing river stretches above weirs, lakes and reservoirs.
Further emphasis will be put on the capabilities of BlueM for immission based modeling together with respective post processing and evaluation procedures.
Michael Kissel was asked to present the blueprint for a direct integration of urban drainage modules into BlueM at the “Tag der Hydrologie 2016/Day of Hydrology 2016” held in Koblenz, Germany. The overall topic of the conference was “Water resources – connecting knowledge in river basins”. BlueM, with its integrated model approach and the planned development was a perfect contribution to this topic.
We are happy to welcome you to the new BlueM website. Together with the new website we have made some fundamental changes in the management of BlueM which will allow us to focus much better on the development of the different parts of BlueM. More information will follow on this blog… stay tuned.