climate2weather

This code accompanies the manuscript "A Generative Framework for Probabilistic, Spatiotemporally Coherent Downscaling of Climate Simulation"

https://github.com/schmidtjonathan/climate2weather

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: nature.com
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.9%) to scientific vocabulary

Keywords

climate dynamics environmental generative modeling science weather
Last synced: 6 months ago · JSON representation ·

Repository

This code accompanies the manuscript "A Generative Framework for Probabilistic, Spatiotemporally Coherent Downscaling of Climate Simulation"

Basic Info
Statistics
  • Stars: 21
  • Watchers: 1
  • Forks: 2
  • Open Issues: 0
  • Releases: 0
Topics
climate dynamics environmental generative modeling science weather
Created about 1 year ago · Last pushed 7 months ago
Metadata Files
Readme Citation

README.md

Wouldn't it be nice, if you could...

Predict weather from climate

This code accompanies the paper "A Generative Framework for Probabilistic, Spatiotemporally Coherent Downscaling of Climate Simulation", which can be found here ➡️ https://www.nature.com/articles/s41612-025-01157-y

This repository contains the code to reproduce the results of the paper. Please find information on... - ...data processing - ...loading trained models - ...loading results used in the paper - ...training the model yourself - ...etc.

...below!

Setup ⚙️

👋 Just a quick note before you start:
I have tested the code
a) on a local linux machine with one NVIDIA 2080 and
b) on a SLURM cluster using multiple NVIDIA {2080/A100} GPUs.
Of course, even though I try to provide as much of an out-of-the-box setup, as possible, it is certainly possible that you encounter problems on your local machine/setup/cluster/... Please let me know if you have suggestions/problems/solutions by opening an issue in this repository! Thank you!

Please start by 1. setting up the python environment bash pip install -r requirements.txt 2. cloning this repository bash git clone https://github.com/schmidtjonathan/Climate2Weather.git 3. and installing some basic functionalities bash cd Climate2Weather pip install -e .

Have a look yourself: Climate-Informed Weather Dynamics 🌦️

The downscaled climate simulations for the year 2014, which are evaluated in the paper, are accessible here (huggingface) ➡️ https://huggingface.co/datasets/schmidtjonathan/C2W_downscaled-2014

Please feel encouraged to load, analyze and use the climate-informed weather simulations! - Are they useful for you and your research? Amazing! Please let me know and please cite our paper when you use our results 🚀 - Are there problems; either with loading the data or with using it? Do you have feedback? Please do not hesitate to let me know, e.g., by opening an issue in this repository! Thank you! I am very interested in hearing your opinion!

Convince yourself: load the trained model 💪

To reproduce all results from the experiments by drawing your own samples, please download the pickled model (and/or the training state) from here (huggingface) ➡️ https://huggingface.co/schmidtjonathan/C2W_model/tree/main

Please feel encouraged to load the model and to use it for your own experiments! And do not hesitate to share your opinion or questions via e-mail or by opening an issue in this repository! Thank you!

Citation

If you find our code, results, model, data, etc. useful for your own endeavors, please consider citing our work:

@article{Schmidt2025, author = {Jonathan Schmidt and Luca Schmidt and Felix M. Strnad and Nicole Ludwig and Philipp Hennig}, title = {A Generative Framework for Probabilistic, Spatiotemporally Coherent Downscaling of Climate Simulation}, journal = {npj Climate and Atmospheric Science}, year = {2025}, volume = {8}, number = {1}, pages = {270}, doi = {10.1038/s41612-025-01157-y}, url = {https://doi.org/10.1038/s41612-025-01157-y}, issn = {2397-3722} }


Acknowledgements

The model and code extends Score-Based Data Assimilation by François Rozet et al. Some training utility is adopted from the EDM2 Repository by Tero Karras et al.

Owner

  • Name: Jonathan Schmidt
  • Login: schmidtjonathan
  • Kind: user
  • Location: Tübingen
  • Company: University of Tübingen

PhD candidate in Machine Learning / Computer Science at the University of Tübingen

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this code, please cite it as below."
title: Climate2Weather
authors:
- name: Jonathan Schmidt
license: MIT
url: "https://github.com/schmidtjonathan/Climate2Weather"
preferred-citation:
  type: generic
  title: "A Generative Framework for Probabilistic, Spatiotemporally Coherent Downscaling of Climate Simulation"
  authors:
  - family-names: Schmidt
    given-names: Jonathan
  - family-names: Schmidt
    given-names: Luca
  - family-names: Strnad
    given-names: Felix
  - family-names: Ludwig
    given-names: Nicole
  - family-names: Hennig
    given-names: Philipp
  year: 2025
  url: "https://www.nature.com/articles/s41612-025-01157-y"
  identifiers:
    - type: other
      description: The corresponding journal article

GitHub Events

Total
  • Issues event: 2
  • Watch event: 18
  • Issue comment event: 4
  • Push event: 12
  • Public event: 1
  • Fork event: 2
Last Year
  • Issues event: 2
  • Watch event: 18
  • Issue comment event: 4
  • Push event: 12
  • Public event: 1
  • Fork event: 2

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 1
  • Total pull requests: 0
  • Average time to close issues: 40 minutes
  • Average time to close pull requests: N/A
  • Total issue authors: 1
  • Total pull request authors: 0
  • Average comments per issue: 4.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 0
  • Average time to close issues: 40 minutes
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 4.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • jack1234lee (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

requirements.txt pypi
  • Cartopy ==0.22.0
  • POT ==0.9.3
  • PyYAML ==6.0.1
  • cdo ==1.6.1
  • dask ==2024.3.1
  • einops ==0.8.0
  • fire ==0.6.0
  • h5py ==3.10.0
  • imageio ==2.34.0
  • imageio-ffmpeg ==0.4.9
  • lightning ==2.2.1
  • lightning-utilities ==0.11.0
  • matplotlib ==3.8.2
  • netCDF4 ==1.6.5
  • numpy ==1.26.3
  • nvidia-cublas-cu12 ==12.1.3.1
  • nvidia-cuda-cupti-cu12 ==12.1.105
  • nvidia-cuda-nvrtc-cu12 ==12.1.105
  • nvidia-cuda-runtime-cu12 ==12.1.105
  • nvidia-cudnn-cu12 ==8.9.2.26
  • nvidia-cufft-cu12 ==11.0.2.54
  • nvidia-curand-cu12 ==10.3.2.106
  • nvidia-cusolver-cu12 ==11.4.5.107
  • nvidia-cusparse-cu12 ==12.1.0.106
  • nvidia-nccl-cu12 ==2.18.1
  • nvidia-nvjitlink-cu12 ==12.3.101
  • nvidia-nvtx-cu12 ==12.1.105
  • opt-einsum ==3.3.0
  • pillow ==10.2.0
  • pyarrow ==15.0.0
  • pysteps ==1.12.0
  • python-cmethods ==2.3.0
  • pytorch-lightning ==2.2.1
  • scikit-image ==0.22.0
  • scikit-learn ==1.4.2
  • scipy ==1.13.1
  • seaborn ==0.13.1
  • torch ==2.1.2
  • torchmetrics ==1.3.2
  • torchvision ==0.16.2
  • tqdm ==4.66.1
  • wandb ==0.16.2
  • windpowerlib ==0.2.2
  • xarray ==2024.3.0
  • zuko ==1.0.1
setup.py pypi