Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

RAPID

RAPID network icon

DOI

Python versions PyPI version PyPI downloads

Run Docker Docker pulls

CI (integration) Last commit

lint: ruff type: mypy test: doctest

License (3-Clause BSD) Contributor Covenant Code of Collab SLIM

The Routing Application for Programmed Integration of Discharge (RAPID) is a river network routing model. Given external inflow to rivers, this model can compute the flow of water everywhere in river networks made out of many thousands of reaches.

Note: While the underlying RAPID routing methodology is highly mature and battle-tested in operational environments, this specific Python 3 codebase (RAPID2) is currently in Beta (v2.0.0b5) and under active development.

Notable links:

Features

Notable features of the RAPID model:

  • Open Source
  • Described in peer-reviewed papers
  • Has been used in 100+ studies published in international peer-reviewed journals
  • Operationally implemented at world-class research centers

Contents

Quick Start

This guide provides a quick way to get started with our project. Please see the RAPID website for a more comprehensive information.

Requirements

  • git
  • python3.11
  • pip3

Setup Instructions

git clone https://github.com/c-h-david/rapid2
cd rapid2
pip install .

Run Instructions

rapid2 run --namelist nml_Sandbox_TR.yml

Usage Examples

Below is an example of what nml_Sandbox_TR.yml includes:

---
Qex_ncf: './input/Sandbox/Qex_Sandbox_19700101_19700110_TR.nc4'
Q00_ncf: './input/Sandbox/Q00_Sandbox_19700101_19700110_TR.nc4'

con_pqt: './input/Sandbox/con_Sandbox.parquet'
kpr_pqt: './input/Sandbox/kpr_Sandbox.parquet'
xpr_pqt: './input/Sandbox/xpr_Sandbox.parquet'

bas_pqt: './input/Sandbox/bas_Sandbox_ascend.parquet'

IS_dtR: 900

Qou_ncf: './output/Sandbox/Qou_Sandbox_19700101_19700110_TR_tst.nc4'
Qfi_ncf: './output/Sandbox/Qfi_Sandbox_19700101_19700110_TR_tst.nc4'

Build Instructions

If you would like to build an Operating System to run RAPID2 from scratch, we recommend Debian-based distributions and software packages for the Advanced Packaging Tool (APT) are summarized in requirements.apt to be installed with apt-get. All packages can be installed at once using:

sudo apt-get install -y --no-install-recommends \
     $(grep -v -E '(^#|^$)' requirements.apt)

Alternatively, one may install the APT packages listed in requirements.apt one by one, for example:

sudo apt-get install -y --no-install-recommends python3.11

Also make sure that python3 points to python3.11:

sudo rm -f /usr/bin/python3
sudo ln -s /usr/bin/python3.11 /usr/bin/python3

If you would like to run in a virtual environment:

python3 -m venv $HOME/venv
export PATH=$HOME/venv/bin:$PATH

Test Instructions

See our TESTING.md for a description of our tests.

Changelog

See our CHANGELOG.md for a history of our changes.

See our releases page for our key versioned releases.

Frequently Asked Questions (FAQ)

Questions about our project? Please see our Discussion Board.

Contributing

Interested in contributing to our project? Please see:

License

We use a Berkeley Software Distribution 3-Clause license: [LICENSE][URL_LICENS]

Support

The prefered way to interact with RAPID2 and its community is to do so through our public online resources:

For sensitive matters that cannot be shared publicly, contact Cédric H. David

Metadata

Release files for rapid2 2.0.0b5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rapid2 2.0.0b5
File Size Uploaded Provenance Actions
rapid2-2.0.0b5.tar.gz 52.9 kB With provenance Details for rapid2-2.0.0b5.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for rapid2 2.0.0b5
File Interpreter ABI Platform Actions
rapid2-2.0.0b5-py3-none-any.whl Python 3 none any Details for rapid2-2.0.0b5-py3-none-any.whl

Total release size: 139.8 kB

Release files / rapid2-2.0.0b5.tar.gz

Download URL rapid2-2.0.0b5.tar.gz
Size 52.9 kB
Tags Source
SHA-256 checksum
How to use checksums
990091f11db1a024f9d926c1d03053fc2c260ae5e851cf72789ffc7aeb463e11
BLAKE2b-256 checksum
How to use checksums
e85f43fdc07c20b5bf4bcba17dca98752983105136f47a7b571ea647cff77f52
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Release files / rapid2-2.0.0b5-py3-none-any.whl

Download URL rapid2-2.0.0b5-py3-none-any.whl
Size 86.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
42adae677f82763a8aedfd8da801c22a754a0df51b3ee03518db5055a6b9bdd4
BLAKE2b-256 checksum
How to use checksums
10fe98196b16157357787c33c22c8c2700f7993e7ffb17e7fdc2395b6c63333a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

Security for rapid2 2.0.0b5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for rapid2-2.0.0b5.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 21, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page