# BlueM.Wave

## Description

Wave is a tool for displaying, analyzing and importing and exporting time series.

## Features

### Supported formats

- WEL (BlueM, GISMO, TALSIM)
- SYDRO binary format (BIN)
- DHI MIKE DFS0 format
- HYDRO_AS-2D result files
- Hystem-Extran file formats: "Regendatei" and "Wellendatei"
- PRMS result files
- SMUSI file formats: ASC result files and REG files
- SWMM file formats: SWMM5 binary output format, routing interface files, LID report files, DAT interface files
- SMB
- UVF (Universelles Variables Format)
- ZRE format
- ZRXP format
- and generic text files (e.g. CSV and TXT)

Use a **Wave project file** (`*.wvp`

) to quickly import multiple series from multiple files at once.

**Drag&Drop** files onto Wave to import them quickly.

It is also possible to manually input time series, or use copy & paste from Excel.

Display time series in a highly customizable diagram (provided by TeeChart)

**Overview**: An overview chart shows you the full extent of the time series and the period currently displayed in the main diagram.**Axes**: When importing time series, series are automatically assigned to different axes depending on their unit.**Zoom & pan**: Use the mouse to zoom or pan either in the main chart or the overview chart. Left mouse button zooms, right mouse button pans.**Navigation bar**: Use the navigation bar to set a custom display period and to navigate by a fixed time period.- Quickly switch time series on and off using the
**check boxes**in the legend. - Display tabular
**Time series values**and optionally show markers for selected rows in the main chart

### Save & Export

**Save charts** to the native TeeChart format (TEN-File) to preserve all data and formatting (for exceptions, see known issues below).

**Export charts** as image files (PNG, JPG, BMP)

**Export time series** to the following formats:

### Edit & Analyze

Editing functions:

**Cut**time series to a specified time period or to another series' extent**Convert error values**of a time series**Merge**multiple time series into one while respecting priorities

**Analysis functions:**

- Autocorrelation: Autocorrelation analysis for analyzing time series periodicity
- Annual statistics: Compute various statistical parameters (min, max, average) of a time series
- Calculator: Performs a mathematical operation on one or more time series
- ChangeTimestep: Make a time series equidistant with a user-specified timestep
- Comparison: Plot two time series against each other and compute a linear regression line
- Cumulative: Compute a new time series that contains the cumulative values of the original series
- Double sum curve
- Goodness of fit (volume error, sum of squares error, Nash-Sutcliffe efficiency, etc.)
- Histogram
- LinearRegression: Fills gaps (NaN values and missing timestamps) in one time series by applying a linear regression relationship with a second time series
- Monthly statistics
- Timestep analysis: Calculate the timestep between nodes in a user-specified unit

## Comandline interface

Wave has a commandline interface for importing and converting time series, see Wave:CLI for details.

## API

The **API** is used e.g. by BlueM.Opt and BlueM.Win but allows using Wave from within any .NET project.

See the documentation.

## Notes

### Error values

- "NaN", "Infinity" and "-Infinity" in import files are recognized and accepted.
- Unreadable values are converted to NaN during import.
- If a file format has a specified error value (e.g. -777 for ZRXP and UVF), then any corresponding entries are also converted to NaN.
- NaN values are displayed as gaps in the chart and are ignored when performing analysis functions.
- Custom, user-specified values can be converted to NaN after import.
- NaN values can be visualized in the chart by pressing a button (see screenshot to the right).

### Volume property

Wave calculates and displays the volume of a time series (e.g. for GoodnessOfFit analysis or in the properties window), if a time series' unit ends with "/s" (e.g. "m³/s"), by integrating the values over time. Time series with other units only have the Sum property.

### Supported date range

Wave supports dates between 01.01.0001 and 31.12.9999.

The chart display can only show dates between 01.01.0100 and 31.12.9000. Time series with dates before 01.01.0100 and after 31.12.9000 are cut for display purposes, but all nodes are still available for analysis and export and are shown in the properties and time series values dialogs. (#68)

## Downloads

Please refer to the Download page.

## Known Issues

- When saving a chart to the native TEN format of TeeChart, certain Timeseries properties such as Interpretation, Datasource and sometimes Unit are lost.
~~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).~~*fixed in v1.9.1*