Skip to content

pySWATPlus

DOI

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.).