This release is a pre-release and may not be stable for production use.
RAPID
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.0b4) 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
gitpython3.11pip3
Setup Instructions
git clone https://github.com/c-h-david/rapid2
cd rapid2
pip install .
Run Instructions
rapid2 --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.aptone 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.0b4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| rapid2-2.0.0b4.tar.gz | 45.1 kB | With provenance | Details for rapid2-2.0.0b4.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| rapid2-2.0.0b4-py3-none-any.whl | Python 3 | none | any | Details for rapid2-2.0.0b4-py3-none-any.whl |
Total release size: 114.5 kB
Release files / rapid2-2.0.0b4.tar.gz
| Download URL | rapid2-2.0.0b4.tar.gz |
|---|---|
| Size | 45.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2f6252e3693d205cc7f62148c106a9c51f1e7644a96fe68a75f8ca90d9a2afb7
|
|
BLAKE2b-256 checksum How to use checksums |
adaa5098a877af26a8abd89060fe3f7b158f641ef1bf8f0a0f33e1c93eaf9cef
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 30, 2026.
Transparency logRelease files / rapid2-2.0.0b4-py3-none-any.whl
| Download URL | rapid2-2.0.0b4-py3-none-any.whl |
|---|---|
| Size | 69.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
34db85ee485eaf21198858b42dced10766ff22a410ef1f5a15e7961cf2d90036
|
|
BLAKE2b-256 checksum How to use checksums |
fcb52cb6f45267824d38842cd112266ee2ceb76b6d23901c35210ac894a3c9e7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 30, 2026.
Transparency logSecurity for rapid2 2.0.0b4
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.
Attestation for rapid2-2.0.0b4.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 Sep 30, 2026.
Transparency logA 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.