ravenpy

A Python wrapper to setup and run the hydrologic modelling framework Raven

https://github.com/cshs-cwra/ravenpy

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 18 committers (5.6%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.0%) to scientific vocabulary

Keywords

raven

Keywords from Contributors

anuclim climate-analysis climate-science icclim netcdf4 xclim hydrology mesh exoplanet energy-system

Scientific Fields

Mathematics Computer Science - 88% confidence
Earth and Environmental Sciences Physical Sciences - 71% confidence
Last synced: 4 months ago · JSON representation

Repository

A Python wrapper to setup and run the hydrologic modelling framework Raven

Basic Info
Statistics
  • Stars: 28
  • Watchers: 3
  • Forks: 5
  • Open Issues: 15
  • Releases: 42
Topics
raven
Created over 5 years ago · Last pushed 4 months ago
Metadata Files
Readme Changelog Contributing License Code of conduct Security Authors Zenodo

README.rst

==============
RavenPy |logo|
==============

+----------------------------+-----------------------------------------------------+
| Versions                   | |pypi| |conda|                                      |
+----------------------------+-----------------------------------------------------+
| Documentation and Support  | |docs| |versions|                                   |
+----------------------------+-----------------------------------------------------+
| Open Source                | |license| |ossf-score|                              |
+----------------------------+-----------------------------------------------------+
| Coding Standards           | |ruff| |ossf-bp| |pre-commit|                       |
+----------------------------+-----------------------------------------------------+
| Development Status         | |status| |build| |coveralls|                        |
+----------------------------+-----------------------------------------------------+


A Python wrapper for configuring and running the hydrologic modelling framework Raven_.

* Free software: MIT license
* Documentation: https://ravenpy.readthedocs.io

`RavenPy` is a Python wrapper for Raven_, accompanied by utility functions that facilitate model configuration, calibration, and evaluation.

Raven_ is an hydrological modeling framework that lets hydrologists build hydrological models by combining different hydrological processes together. It can also be used to emulate a variety of existing lumped and distributed models. Model structure, parameters, initial conditions and forcing files are configured in text files, which Raven parses to build and run hydrological simulations. A detailed description about modeling capability of Raven_ can be found in the `docs`_.

`RavenPy` provides a Python interface to Raven_, automating the creation of configuration files and allowing the model to be launched from Python. Results, or errors, are automatically parsed and exposed within the programming environment. This facilitates the launch of parallel simulations, multi-model prediction ensembles, sensitivity analyses and other experiments involving a large number of model runs.

Note that version 0.12 includes major changes compared to the previous 0.11 release, and breaks backward compatibility. The benefits of these changes are a much more intuitive interface for configuring and running the model.

Features
--------

* Configure, run and parse Raven outputs from Python
* Utility command to create grid weight files
* Extract physiographic information about watersheds
* Algorithms to estimate model parameters from ungauged watersheds
* Exposes outputs (flow, storage) as `xarray.DataArray` objects

Install
-------

Please see the detailed `installation docs`_.

Acknowledgements
----------------

RavenPy's development has been funded by CANARIE_ and Ouranos_ and would be not be possible without the help of Juliane Mai and James Craig.

This package was created with Cookiecutter_ and the `Ouranosinc/cookiecutter-pypackage`_ project template.

.. _CANARIE: https://www.canarie.ca
.. _Cookiecutter: https://github.com/cookiecutter/cookiecutter
.. _Ouranos: https://www.ouranos.ca
.. _Ouranosinc/cookiecutter-pypackage: https://github.com/Ouranosinc/cookiecutter-pypackage
.. _Raven: https://raven.uwaterloo.ca
.. _docs: https://raven.uwaterloo.ca/files/v3.8/RavenManual_v3.8.pdf
.. _installation docs: https://ravenpy.readthedocs.io/en/latest/installation.html
.. _raven-hydro: https://github.com/Ouranosinc/raven-hydro


.. |build| image:: https://github.com/CSHS-CWRA/RavenPy/actions/workflows/main.yml/badge.svg
        :target: https://github.com/CSHS-CWRA/RavenPy/actions
        :alt: Build Status

.. |conda| image:: https://img.shields.io/conda/vn/conda-forge/RavenPy.svg
        :target: https://anaconda.org/conda-forge/RavenPy
        :alt: Conda-forge Build Version

.. |coveralls| image:: https://coveralls.io/repos/github/CSHS-CWRA/RavenPy/badge.svg
        :target: https://coveralls.io/github/CSHS-CWRA/RavenPy
        :alt: Coveralls

.. |docs| image:: https://readthedocs.org/projects/ravenpy/badge/?version=latest
        :target: https://ravenpy.readthedocs.io/en/latest
        :alt: Documentation Status

.. |license| image:: https://img.shields.io/github/license/CSHS-CWRA/RavenPy.svg
        :target: https://github.com/CSHS-CWRA/RavenPy/blob/master/LICENSE
        :alt: License

.. |logo| image:: https://raw.githubusercontent.com/CSHS-CWRA/RavenPy/master/docs/_static/_images/logos/ravenpy-logo-small.png
        :target: https://github.com/CSHS-CWRA/RavenPy
        :alt: RavenPy Logo

.. |ossf-bp| image:: https://bestpractices.coreinfrastructure.org/projects/10064/badge
        :target: https://bestpractices.coreinfrastructure.org/projects/10064
        :alt: Open Source Security Foundation Best Practices

.. |ossf-score| image:: https://api.securityscorecards.dev/projects/github.com/CSHS-CWRA/RavenPy/badge
        :target: https://securityscorecards.dev/viewer/?uri=github.com/CSHS-CWRA/RavenPy
        :alt: OpenSSF Scorecard

.. |pre-commit| image:: https://results.pre-commit.ci/badge/github/CSHS-CWRA/RavenPy/master.svg
        :target: https://results.pre-commit.ci/latest/github/CSHS-CWRA/RavenPy/master
        :alt: pre-commit.ci status

.. |pypi| image:: https://img.shields.io/pypi/v/RavenPy.svg
        :target: https://pypi.python.org/pypi/RavenPy
        :alt: PyPI

.. |ruff| image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json
        :target: https://github.com/astral-sh/ruff
        :alt: Ruff

.. |status| image:: https://www.repostatus.org/badges/latest/active.svg
        :target: https://www.repostatus.org/#active
        :alt: Project Status: Active - The project has reached a stable, usable state and is being actively developed.

.. |versions| image:: https://img.shields.io/pypi/pyversions/RavenPy.svg
        :target: https://pypi.python.org/pypi/RavenPy
        :alt: Supported Python Versions

Owner

  • Name: Canadian Society for Hydrological Sciences
  • Login: CSHS-CWRA
  • Kind: organization
  • Email: cshs@cwra.org

GitHub Events

Total
  • Create event: 109
  • Issues event: 18
  • Release event: 8
  • Watch event: 2
  • Delete event: 91
  • Member event: 1
  • Issue comment event: 180
  • Push event: 328
  • Pull request review comment event: 34
  • Pull request event: 199
  • Pull request review event: 126
Last Year
  • Create event: 109
  • Issues event: 18
  • Release event: 8
  • Watch event: 2
  • Delete event: 91
  • Member event: 1
  • Issue comment event: 180
  • Push event: 328
  • Pull request review comment event: 34
  • Pull request event: 199
  • Pull request review event: 126

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 1,607
  • Total Committers: 18
  • Avg Commits per committer: 89.278
  • Development Distribution Score (DDS): 0.531
Past Year
  • Commits: 360
  • Committers: 9
  • Avg Commits per committer: 40.0
  • Development Distribution Score (DDS): 0.417
Top Committers
Name Email Commits
Zeitsperre 1****e 754
Christian Jauvin c****n@g****m 375
David Huard h****d@o****a 212
pre-commit-ci[bot] 6****] 94
dependabot[bot] 4****] 64
bumpversion[bot] b****]@o****a 32
ets r****t@e****a 23
Julie j****i@u****a 21
lou-a l****l@h****r 11
RondeauG r****l@o****a 7
Long Vu v****g@o****a 3
tlogan2000 l****s@o****a 3
CSHS Administrator 3****n 2
Pascal Bourgault b****l@o****a 2
James Craig 3****e 1
MightyFranky f****l@g****m 1
Aida Jabbari a****1@u****a 1
TrellixVulnTeam c****d@t****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 72
  • Total pull requests: 439
  • Average time to close issues: 6 months
  • Average time to close pull requests: 10 days
  • Total issue authors: 12
  • Total pull request authors: 16
  • Average comments per issue: 1.85
  • Average comments per pull request: 1.62
  • Merged pull requests: 358
  • Bot issues: 1
  • Bot pull requests: 220
Past Year
  • Issues: 9
  • Pull requests: 238
  • Average time to close issues: 2 days
  • Average time to close pull requests: 4 days
  • Issue authors: 6
  • Pull request authors: 8
  • Average comments per issue: 1.22
  • Average comments per pull request: 1.29
  • Merged pull requests: 187
  • Bot issues: 1
  • Bot pull requests: 142
Top Authors
Issue Authors
  • huard (29)
  • Zeitsperre (17)
  • Mayetea (6)
  • richardarsenault (6)
  • cjauvin (5)
  • TC-FF (2)
  • RondeauG (2)
  • kokubadejo (1)
  • julemai (1)
  • Chrbur (1)
  • dependabot[bot] (1)
  • lou-a (1)
Pull Request Authors
  • dependabot[bot] (151)
  • Zeitsperre (144)
  • pre-commit-ci[bot] (69)
  • huard (44)
  • lou-a (8)
  • richardarsenault (7)
  • tlogan2000 (4)
  • RondeauG (2)
  • aulemahal (2)
  • tlvu (2)
  • julemai (1)
  • Bijan55699 (1)
  • Idajab (1)
  • Mayetea (1)
  • TrellixVulnTeam (1)
Top Labels
Issue Labels
bug (10) documentation (4) enhancement (4) help wanted (2) dependencies (2) invalid (1) github_actions (1)
Pull Request Labels
dependencies (155) CI (145) python (112) docs (45) github_actions (38) documentation (21) enhancement (17) bug (13) invalid (1)

Packages

  • Total packages: 4
  • Total downloads:
    • pypi 493 last-month
  • Total dependent packages: 1
    (may contain duplicates)
  • Total dependent repositories: 2
    (may contain duplicates)
  • Total versions: 157
  • Total maintainers: 2
proxy.golang.org: github.com/cshs-cwra/ravenpy
  • Versions: 46
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Average: 5.6%
Dependent repos count: 5.8%
Last synced: 4 months ago
proxy.golang.org: github.com/CSHS-CWRA/RavenPy
  • Versions: 46
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 5.4%
Average: 5.6%
Dependent repos count: 5.8%
Last synced: 4 months ago
pypi.org: ravenpy

A Python wrapper for configuring and running the hydrologic modelling framework Raven.

  • Versions: 50
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 493 Last month
Rankings
Dependent packages count: 10.1%
Stargazers count: 13.4%
Forks count: 14.2%
Average: 15.5%
Downloads: 18.2%
Dependent repos count: 21.5%
Maintainers (2)
Last synced: 4 months ago
conda-forge.org: ravenpy
  • Versions: 15
  • Dependent Packages: 1
  • Dependent Repositories: 1
Rankings
Dependent repos count: 24.4%
Dependent packages count: 29.0%
Average: 38.6%
Stargazers count: 50.2%
Forks count: 50.6%
Last synced: 4 months ago

Dependencies

.github/workflows/main.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • mamba-org/provision-with-micromamba main composite
  • styfle/cancel-workflow-action 0.11.0 composite
.github/workflows/publish-pypi.yml actions
  • actions/checkout master composite
  • actions/setup-python v4 composite
  • pypa/gh-action-pypi-publish release/v1 composite
.github/workflows/tag-testpypi.yml actions
  • actions/checkout master composite
  • actions/setup-python v4 composite
  • pypa/gh-action-pypi-publish release/v1 composite
pyproject.toml pypi
  • cf-xarray [all]
  • cftime *
  • click *
  • climpred >=2.2
  • dask *
  • haversine *
  • matplotlib *
  • netCDF4 *
  • numpy <1.25
  • owslib >=0.24.1,<0.29
  • pandas <2.0; python_version == '3.8'
  • pandas python_version >= '3.9'
  • pint >=0.20
  • pydantic >=1.10.8,<2.0
  • pymbolic *
  • raven-hydro ==0.2.4
  • requests *
  • scipy *
  • spotpy *
  • statsmodels *
  • xarray *
  • xclim >=0.43.0
  • xskillscore *
.github/workflows/codeql.yml actions
  • actions/checkout v3 composite
  • github/codeql-action/analyze v2 composite
  • github/codeql-action/autobuild v2 composite
  • github/codeql-action/init v2 composite
.github/workflows/bump-version.yml actions
  • actions/checkout 692973e3d937129bcbf40652eb9f2f61becf3332 composite
  • actions/setup-python 0b93645e9fea7318ecaed2b359559ac225c90a2b composite
  • ad-m/github-push-action d91a481090679876dfc4178fef17f286781251df composite
  • step-security/harden-runner 91182cccc01eb5e619899d80e4e971d6181294a7 composite
.github/workflows/cache-cleaner.yml actions
  • actions/checkout 692973e3d937129bcbf40652eb9f2f61becf3332 composite
  • step-security/harden-runner 91182cccc01eb5e619899d80e4e971d6181294a7 composite
.github/workflows/dependency-review.yml actions
  • actions/checkout 692973e3d937129bcbf40652eb9f2f61becf3332 composite
  • actions/dependency-review-action 4081bf99e2866ebe428fc0477b69eb4fcda7220a composite
  • step-security/harden-runner 91182cccc01eb5e619899d80e4e971d6181294a7 composite
.github/workflows/first-pull-request.yml actions
  • actions/github-script 60a0d83039c74a4aee543508d2ffcb1c3799cdea composite
  • step-security/harden-runner 91182cccc01eb5e619899d80e4e971d6181294a7 composite
.github/workflows/label.yml actions
  • actions/labeler 8558fd74291d67161a8a78ce36a881fa63b766a9 composite
  • step-security/harden-runner 91182cccc01eb5e619899d80e4e971d6181294a7 composite
.github/workflows/scorecard.yml actions
  • actions/checkout 692973e3d937129bcbf40652eb9f2f61becf3332 composite
  • actions/upload-artifact b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 composite
  • github/codeql-action/upload-sarif 4dd16135b69a43b6c8efb853346f8437d92d3c93 composite
  • ossf/scorecard-action 62b2cac7ed8198b15735ed49ab1e5cf35480ba46 composite
  • step-security/harden-runner 91182cccc01eb5e619899d80e4e971d6181294a7 composite
.github/workflows/workflow-warning.yml actions
  • peter-evans/create-or-update-comment 71345be0265236311c031f5c7866368bd1eff043 composite
  • peter-evans/find-comment 3eae4d37986fb5a8592848f6a574fdf654e61f9e composite
  • step-security/harden-runner 91182cccc01eb5e619899d80e4e971d6181294a7 composite
CI/requirements_ci.in pypi
  • bump-my-version ==0.28.0
  • coveralls ==4.0.1
  • flit ==3.10.1
  • pip ==24.3.1
  • tox ==4.23.2
  • tox-gh ==1.4.1
CI/requirements_ci.txt pypi
  • annotated-types ==0.7.0
  • bracex ==2.4
  • bump-my-version ==0.28.0
  • cachetools ==5.5.0
  • certifi ==2024.7.4
  • chardet ==5.2.0
  • charset-normalizer ==3.3.2
  • click ==8.1.7
  • colorama ==0.4.6
  • coverage ==7.6.0
  • coveralls ==4.0.1
  • distlib ==0.3.8
  • docopt ==0.6.2
  • docutils ==0.20.1
  • filelock ==3.16.1
  • flit ==3.10.1
  • flit-core ==3.10.1
  • idna ==3.7
  • markdown-it-py ==3.0.0
  • mdurl ==0.1.2
  • packaging ==24.1
  • platformdirs ==4.3.6
  • pluggy ==1.5.0
  • prompt-toolkit ==3.0.36
  • pydantic ==2.9.2
  • pydantic-core ==2.23.4
  • pydantic-settings ==2.3.4
  • pygments ==2.18.0
  • pyproject-api ==1.8.0
  • python-dotenv ==1.0.1
  • questionary ==2.0.1
  • requests ==2.32.3
  • rich ==13.7.1
  • rich-click ==1.8.3
  • tomli ==2.0.1
  • tomli-w ==1.0.0
  • tomlkit ==0.13.0
  • tox ==4.23.2
  • tox-gh ==1.4.1
  • typing-extensions ==4.12.2
  • urllib3 ==2.2.2
  • virtualenv ==20.26.6
  • wcmatch ==8.5.2
  • wcwidth ==0.2.13