[ANN] Streamfall.jl: A Graph-based Streamflow Modelling System

Announcing Streamfall.jl: A Graph-based Streamflow Modelling System

Streamfall.jl is a streamflow modelling system leveraging the Julia ecosystem to provide:

  • Quick heterogeneous modelling of stream networks in catchments/watersheds and beyond

  • Seamless integration of different rainfall-runoff models and their ensembles

  • Modelling and assessment of interacting environmental systems

  • A comprehensive range of performance metrics with calibration (via BlackBoxOptim.jl)

The package currently implements four widely-used rainfall-runoff models:

  • GR4J

  • HyMod

  • IHACRES

  • SIMHYD

Performance is comparable to implementations in C and Fortran, while providing greater flexibility.

Motivation

Streamfall was designed to:

  1. Represent a network of sub-catchments/watersheds with a mix of different parameterizations or even different rainfall-runoff models working together

  2. Enable system-of-systems modelling, where interactions between environmental systems (e.g., agricultural water demands and groundwater processes) can be represented and assessed

Features

  • Graph-based representation of stream networks

  • Flexible calibration framework

  • Extensive performance metrics

  • Support for weighted ensemble modelling

Further work to explore state-based ensembles and uncertainty quantification is in the pipeline.

This is an early release (v0.6.0), and contributions and feedback are welcome! Check out the documentation here or the GitHub repository.

12 Likes