pySWATPlus
📦 About
pySWATPlus is an open-source Python package that provides a programmatic interface to the SWAT+ model, allowing users to run simulations and conduct custom experiments.
✨ Key Features
- Run
SWAT+simulations by modifying model parameters through thecalibration.calfile. - Evaluate model performance against observed data using widely recognized statistical indicators.
- Perform sensitivity analysis on model parameters using the
SALibPython package. - Calibrate model parameters through multi-objective optimization and evolutionary algorithms using the
pymooPython package. - Execute sensitivity analysis and model calibration through high-level interfaces with built-in parallel computation support.
- Analyze outputs from model simulations, sensitivity analyses, and calibrations.
📥 Install pySWATPlus
To install from PyPI repository:
pip install pySWATPlus
To install the latest development version from GitHub:
pip install git+https://github.com/swat-model/pySWATPlus.git
To install from source in editable mode within your desired conda environment:
# Activate your Conda environment
conda activate <environment_name>
# Install required tools and clone the repository
pip install build
cd C:\Users\Username\Folder # Replace with your actual path
git clone https://github.com/swat-model/pySWATPlus.git
cd pySWATPlus
# Build the package
python -m build
# Install in editable mode
pip install --editable .
✅ Verify Installation
The installation is successful if no error is raised when importing the module using the following command:
import pySWATPlus
📚 Documentation
For a guide to setting up first SWAT+ project and other functionalities with examples, refere to the pySWATPlus documentation.
📖 Citation
If you use pySWATPlus in your research, please cite it using the following concept DOI, which always points to the latest version:
@software{joan_salo_pyswatplus_latest,
author = {Joan Saló and
Debasish Pal and
Oliu Llorente},
title = {swat-model/pySWATPlus},
year = 2025,
publisher = {Zenodo},
doi = {10.5281/zenodo.14889319},
url = {https://doi.org/10.5281/zenodo.14889319},
note = {This DOI always points to the latest version of pySWATPlus.},
}
🙏 Acknowledgments
We acknowledge the University of Oulu and ICRA research center for their support and the collaborative environment that made this project possible.
Metadata
Release files for pySWATPlus 1.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyswatplus-1.3.0.tar.gz | 15.2 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyswatplus-1.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 15.3 MB
Release files / pyswatplus-1.3.0.tar.gz
| Download URL | pyswatplus-1.3.0.tar.gz |
|---|---|
| Size | 15.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
737fb6fa07d242613e22fa13eda52cdd590e26ce45d592f4b07637a8025c9c8d
|
|
BLAKE2b-256 checksum How to use checksums |
0f56a8df0f6df47684d13c0ef0b9c113efa4182db6d37ee26f10604a038c48fb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.0
|
Release files / pyswatplus-1.3.0-py3-none-any.whl
| Download URL | pyswatplus-1.3.0-py3-none-any.whl |
|---|---|
| Size | 56.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
449ff4e3a5d74f2b57722c6351174ea878278bc1a1ac8d71740d28a10309c47c
|
|
BLAKE2b-256 checksum How to use checksums |
8b00292d607829c8f2234fbed75a10a259b05c3cd9e7dcbef495e95c5de5a2d8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.0
|