Skip to main content

HydroEval: An Evaluator for Stream Flow Time Series

Project description

License: GPL v3 PyPI Version

HydroEval - An open-source evaluator for stream flow time series in Python

HydroEval is an open-source evaluator for stream flow time series in Python. It is licensed under GNU GPL-3.0 (see licence file provided). The purpose of this evaluator is to compare observed and simulated hydrographs using one or more objective functions. HydroEval is designed to calculate all objective functions in a vectorised way (using numpy, and therefore C code in the background) which makes for very efficient computation of the objective functions.

How to Install

HydroEval is available on PyPI, so you can simply use pip and the name of the package:

python -m pip install hydroeval

You can also use pip and a link to the GitHub repository directly:

python -m pip install git+https://github.com/ThibHlln/hydroeval.git

Alternatively, you can download the source code (i.e. the GitHub repository) and, from the downloaded directory itself, run the command:

python setup.py install

How to Use

A tutorial in the form of a Jupyter notebook is available to get started with the usage of HydroEval's API. The input files required for the tutorial are all provided in the examples/ folder.

Objective Functions Available

The objective functions currently available in HydroEval to evaluate the fit between observed and simulated stream flow time series are as follows:

Moreover, KGE and NSE can be calculated in a bounded version following Mathevet et al. (2008):

  • Bounded Nash-Sutcliffe Efficiency (nse_c2m)
  • Bounded Original Kling-Gupta Efficiency (kge_c2m)
  • Bounded Modified Kling-Gupta Efficiency (kgeprime_c2m)

Finally, any of the objective functions can take an optimal argument transform. This argument allows to apply a transformation on both the observed and the simulated stream flow time series prior the calculation of the objective function. The possible transformations are as follows:

  • Inverted flows (using transform='inv')
  • Square Root-transformed flows (using transform='sqrt')
  • Natural Logarithm-transformed flows (using transform='log')

Dependencies

HydroEval requires the popular Python package numpy to be installed on the Python implementation where hydroeval is installed.

Version History

  • 0.0.2 [29 Nov 2018]: General improvements
    • Re-defines axis=0 as default array orientation
    • Adds non-parametric version of KGE
    • Corrects mistake in bounded original and modified KGE
  • 0.0.1 [26 Oct 2018]: First version of HydroEval

Acknowledgment

This tool was developed with the financial support of Ireland's Environmental Protection Agency (Grant Number 2014-W-LS-5).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hydroeval-0.0.2.tar.gz (5.5 kB view details)

Uploaded Source

Built Distributions

hydroeval-0.0.2-py3-none-any.whl (20.2 kB view details)

Uploaded Python 3

hydroeval-0.0.2-py2-none-any.whl (20.2 kB view details)

Uploaded Python 2

File details

Details for the file hydroeval-0.0.2.tar.gz.

File metadata

  • Download URL: hydroeval-0.0.2.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/2.7.13

File hashes

Hashes for hydroeval-0.0.2.tar.gz
Algorithm Hash digest
SHA256 2e0f94809d5cac5da0088f548ccf01f2f975d0b56f84fa791f13e0bf528ebf78
MD5 bc6cdcfa3a20beb9bba195c04b0df5c3
BLAKE2b-256 a608d12d892f6ff1287dfee46c3dbdbc1b38658f129ffd131126a7c07b66333f

See more details on using hashes here.

File details

Details for the file hydroeval-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: hydroeval-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 20.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/2.7.13

File hashes

Hashes for hydroeval-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9c5161bac5b3cb2e577f4d51306d3b9ba8d657ff1574a314d4f23d5e1ca4a5ef
MD5 726d055cc36959aa1a6165fa4b7e3085
BLAKE2b-256 efc90a8c4bf6c453c02c29e9400fdd2ddb745bb5d97e7e7a10c254b4fc7fb65d

See more details on using hashes here.

File details

Details for the file hydroeval-0.0.2-py2-none-any.whl.

File metadata

  • Download URL: hydroeval-0.0.2-py2-none-any.whl
  • Upload date:
  • Size: 20.2 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.6.2 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/2.7.13

File hashes

Hashes for hydroeval-0.0.2-py2-none-any.whl
Algorithm Hash digest
SHA256 bd62d4ca219f9adaa98b78775ac1852832216ed79fa2da7bb3e719cf17a2fadb
MD5 c737b3c34c88153c8daa08ba53ef5194
BLAKE2b-256 619751cc4f0694da3e8e39e837090c88474a0efd2eb7eb5c948f0ae08a05daf4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page