Skip to content

Produce counterfactual climates for ISIMIP.

License

Notifications You must be signed in to change notification settings

ISI-MIP/attrici

Repository files navigation

GitHub Repository Docs GitHub Actions Workflow Status Python Version from PEP 621 TOML Ruff

ATTRICI - counterfactual climate for impact attribution

Code implementing the methods described in the paper ATTRICI 1.1 - counterfactual climate for impact attribution in Geoscientific Model Development.

From the article's abstract:

We here present ATTRICI (ATTRIbuting Climate Impacts), an approach to construct the required counterfactual stationary climate data from observational (factual) climate data. Our method identifies the long-term shifts in the considered daily climate variables that are correlated to global mean temperature change assuming a smooth annual cycle of the associated scaling coefficients for each day of the year. The produced counterfactual climate datasets are used as forcing data within the impact attribution setup of the Inter-Sectoral Impact Model Intercomparison Project (ISIMIP3a). Our method preserves the internal variability of the observed data in the sense that factual and counterfactual data for a given day have the same rank in their respective statistical distributions.

https://doi.org/10.5194/gmd-14-5269-2021

The code accompanying the manuscript is archived at Zenodo.

This repository contains further updates to the code. It includes optimization routines based on the originally used PyMC3 (PyMC3 is no longer maintained but included for reproducibility), an updated version using PyMC5 and a version based on Scipy.

Documentation is available online. It is build for the latest commit in the current main branch. An overview of the model architecture is in OVERVIEW.md. See USAGE.md for installing and getting started using ATTRICI. See also the notebooks folder for further examples.

Credits

ATTRICI uses the PyMC package for probabilistic programming (Salvatier et al. 2016).

An early version of the code on Bayesian estimation of parameters in timeseries with periodicity in PyMC3 was inspired by Ritchie Vink's post on Bayesian timeseries analysis with additive models.

The Singular Spectrum Analysis included in ATTRICI comes from pyts.

How to contribute

We welcome contributions to improve this project! Here are some ways you can help: Report Bugs: If you find a bug, please open an issue with detailed information about the problem and how to reproduce it. Submit Pull Requests: If you want to fix a bug or implement a feature, follow these steps:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/YourFeatureName).
  3. Make your changes.
  4. Commit your changes (git commit -m 'Add some feature').
  5. Push to the branch (git push origin feature/YourFeatureName).
  6. Open a pull request. Suggest Features: Have an idea for a new feature? Open an issue to discuss it.

Funding

EU_logo This project has received funding from the European Union's HORIZON Research and Innovation Actions Programme under Grant Agreement No. 101135481 (COMPASS).

Funded by the European Union. Views and opinions expressed are however those of the author(s) only and do not necessarily reflect those of the European Union or of the European Health and Digital Executive Agency (HADEA). Neither the European Union nor the granting authority HADEA can be held responsible for them.

License

This code is licensed under GPLv3, see the LICENSE.txt. See commit history for authors.

About

Produce counterfactual climates for ISIMIP.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 5