pySWATPlus
pySWATPlus
is an open-source Python package developed and maintained by ICRA.
It provides a programmatic interface to the SWAT+ model, allowing users to run simulations, modify input files, and streamline custom experimentation through the modelβs TxtInOut
folder.
β¨ Key Features
- Navigate and read files in the SWAT+
TxtInOut
folder. - Modify input parameters and save the updated files.
- Run SWAT+ simulations either in the main
TxtInOut
folder or in a user-specified directory. - Perform sensitivity analysis on model parameters using the SALib Python package, with support for parallel computation.
π₯ 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
π 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.},
}
To cite a specific version:
- Visit the Zenodo project page.
- Select the specific version you used (e.g.,
v1.0.1
). - Copy the appropriate citation format (BibTeX, APA, etc.).