# pyDGSA

pyDGSA is a Python implementation of distance-based generalized sensitivity analysis (DGSA) following [Fenwick et al. (2014)](https://doi.org/10.1007/s11004-014-9530-5).

## Installation

Use the package manager [pip](https://pip.pypa.io/en/stable/) to install pyDGSA.

```bash
pip install pyDGSA
```
or
```bash
conda install -c conda-forge pydgsa
```

## Usage
Please see the `tutorial_short.ipynb` and `tutorial_long.ipynb` Jupyter notebooks in the [pyDGSA GitHub repository](https://github.com/zperzan/pyDGSA) for detailed usage examples.

## Citation
If you use the Python `pyDGSA` package in published work, please cite the paper for which it
was originally developed:

Perzan, Z., Babey, T., Caers, J., Bargar, J.R. and Maher, K., 2021, Local and global sensitivity analysis of a reactive transport model simulating floodplain redox cycling, *Water Resources Research*, doi: [10.1029/2021WR029723](https://dx.doi.org/10.1029/2021WR029723)

From version 1.0.4 on, each release of this package is archived in Zenodo and can be cited directly, in addition to citing the paper above. For example, to cite version 1.0.4:

Perzan, Z., 2024, zperzan/pyDGSA: v1.0.4 (v1.0.4), *Zenodo*, doi: [10.5281/zenodo.13694020](https://doi.org/10.5281/zenodo.13694020)

## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

## License
[GPL](https://choosealicense.com/licenses/gpl-3.0/)
