You are looking at an old revision of the page Release-notes. This revision was created by Adrien Michel.

Table of Content

Description of streamflow releases

Streamflow Version 1.2

IMPORTANT NOTE : METEOIO rev 2072 breaks the grid reading in Streamflow, so for now do not use meteoio newer than revision 2071

--- Faster data reading ---

The data reading from grids is now done in parallel, reducing the time needed almost linearly with the number of core used.

The algorithm that computes sum or mean over grids for sub watersheds has been greatly improved, the time reduction increases linearly with the area.

All data are now stored using vector of pointers to vector and all the memory is pre-allocated, the data are thus never copied/moved in memory, leading to faster runs.

--- Faster calibration ---

The calibration algorithm has been rewritten to read calibration value only once. Several other steps of the calibration process have been optimized. With the simple direct routing scheme, the calibration time is divided by a factor 5.

--- New Calibration Algorithm ---

The Kling-Gupta efficiency has been implemented. It can be used with the key OBJECTIVE_FUNCTION# = KGE or KGE12 or KGE2012 for the 2012 version, and with key KGE09 or KGE2009 for the 2009 version.

See for details : Kling, H., M. Fuchs, and M. Paulin (2012), Runoff conditions in the upper Danube basin under an ensemble of climate change scenarios, Journal of Hydrology, Volumes 424-425, 6 March 2012, Pages 264-277, DOI:10.1016/j.jhydrol.2012.01.011.

Hoshin V. Gupta, Harald Kling, Koray K. Yilmaz, Guillermo F. Martinez (2009), Decomposition of the mean squared error and NSE performance criteria: Implications for improving hydrological modelling, Journal of Hydrology, Volume 377, Issues 1-2, 20 October 2009, Pages 80-91, DOI: 10.1016/j.jhydrol.2009.08.003

--- New possibility to output time series of best calibration run directly during calibration---

With the new keys WRITE_TIME_SERIES (true or false, default=false) and NUM_TIME_SERIES_TO_KEEP (integer, default=1) in the Calibration section of the ini files, it is now possible to write the output of the NUM_TIME_SERIES_TO_KEEP best calibrations run.

The path is given in the Output section with the third new key CALIBRATION_TIME_SERIES (mandatory if WRITE_TIME_SERIES is set to true).

The time series will be written for the location of the MEASUREMENT_POINTS indicated in the Input section (the measurement points must be effectively used in the calibration objective function, otherwise they are skipped). The written variables are the ones effectively used for each point by at least of the calibration objective functions.

The output is written in files called best_calib_run_{#calib_classification}_at_meas_point{#of the point as in input section}.

Please refers to the examples provided for details.

--- Fixed bugs and small improvements ---

  • Correct date range checking of input data

  • More explicit error messages

  • More detailed output files

  • Correct version printing in output files

  • Removed compilation warnings with intel compiler, gcc and clang

  • Removed lot of useless code

  • Cleaner openMP implementation

  • Updated examples

  • etc.

--- Still to come in the next release ---

  • Monthly calibration, i.e. add an option to choose over which months we compute the efficiency of the model. The necessary changes have been made, it should be fast to implement, I just want first to be sure that the new version is 100% stable.

  • Rewriting of the muskingum-kunge solver. Actually, this is really slow because it struggle to handle low/no water conditions.

Created: 1 year 10 months ago
by Adrien Michel

Updated: 1 year 10 months ago
by Adrien Michel

Old Revisions