Coder Social home page Coder Social logo

eyringmlclimategroup / karmouche24esd_atlanticpacificpacemaker_causality Goto Github PK

View Code? Open in Web Editor NEW
0.0 3.0 1.0 13.3 MB

Code to reproduce figures from Karmouche, S., Galytska, E., Meehl, G. A., Runge, J., Weigel, K., and Eyring, V. (2024) Changing effects of external forcing on Atlantic-Pacific interactions

License: Apache License 2.0

Jupyter Notebook 98.90% Python 1.10%

karmouche24esd_atlanticpacificpacemaker_causality's Introduction

Changing effects of external forcing on Atlantic-Pacific interactions

Project Overview

This repository contains the code used for the analyses and results associated with the paper:

Karmouche, S., Galytska, E., Meehl, G. A., Runge, J., Weigel, K., and Eyring, V.: Changing effects of external forcing on Atlantic-Pacific interactions, Earth Syst. Dynam., 2024.

Author: Soufiane Karmouche, [email protected]

Year: 2024

DOI:

Latest: DOI

Requirements

The code in this repository requires specific Python packages. You can set up the required environment using Conda. Here are the steps to create the environment:

  1. Clone this repository:

    git clone https://github.com/EyringMLClimateGroup/karmouche24esd_AtlanticPacificPacemaker_Causality
    cd karmouche24esd_AtlanticPacificPacemaker_Causality
    
  2. Create Conda environment:

    conda env create -f environment.yml
  3. Activate the environment:

    conda activate causal_esd24
    cd ..
  4. Install Tigramite Package:
    The Tigramite package for causal discovery is available on GitHub (last access: 29 April 2024). Please follow instructions here. Version 5.2.0.0 was used in this study.

    git clone https://github.com/jakobrunge/tigramite.git
    cd tigramite
    python setup.py install
    
  5. Add environment to Jupyter kernels:
    After installing Tigramite in the Conda environment, add the environment to Jupyter kernels using the following command:

    python -m ipykernel install --user --name=causal_esd24

Data

Multi-Ensemble Mean (MEM) Calculation

To isolate internal variability from the pacemaker simulations, a multi-ensemble mean (MEM) was calculated for each variable using three CMIP6 historical large ensemble means:

  • CESM2 (11 members)
  • MIROC6 (50 members)
  • UKESM1-0-LL (16 members).

For a sample recipe to produce CMIP6 MEM using ESMValTool, please see example_recipe_esmvaltool.yml.

Observational and Reanalyses Datasets

To calculate indices for the observed historical record, the following datasets were used at different sections of the study to extract sea surface temperature (SST), sea level pressure (PSL), eastward wind (U), windStress, and the depth of 20°C isotherm.

  • Hadley Centre Sea Ice and Sea Surface Temperature (HadISST) (SST)
  • National Center for Environmental Prediction-National Center for Atmospheric Research reanalysis 1 (NCEP-NCAR-R1) (PSL, U)
  • Ocean Reanalysis System version 5 (ORAS5) (windStress , depth of 20°C isotherm)

Pacemaker Simulations

  • CESM2 Pacific Pacemaker Ensemble Dataset:
    The CESM2 Pacific pacemaker ensemble dataset can be found here (last access: 29 April 2024). Variables: surface temperature (TS), PSL and U

  • CESM1 Atlantic Pacemaker Ensemble Dataset:
    The CESM1 Atlantic pacemaker ensemble dataset can be found here (last access: 29 April 2024). Variables: TS, PSL and U

  • Additional Information and Documentation:
    The complete description and documentation of the Pacific and Atlantic pacemaker datasets are available on the Climate Variability and Change Working Group's (CVCWG) webpage (last access: 29 April 2024).

Pre-Industrial Control Run

A 250-year segment from the CESM2 pre-industrial control run was used. Variables: TS, PSL and U

For more detailed information and documentation on these datasets and simulations, please refer to the published version of the paper.

It is the user's responsibility to ensure access to the necessary datasets and simulations referenced in this study.

Jupyter notebooks

We recommend running the notebooks in the order below:

  1. section3_proof_of_concept.ipynb The code here is detailed. This notebook is used to reproduce the panels in Fig 2 and respective supplementary material

In the following notebooks, the code is wrapped in seperate class functions to perform different preprocessing, analysis and plotting routines. See data_visualization.py and run_causal_analysis.py (PS: the classes are only used as function holders)

  1. section4_obs_reanalysis.ipynb This notebook is used to reproduce the panels in Figs 1, 3, and 4 and respective supplementary material
  2. section4_PAC_pacemaker_ensemble.ipynb(to reproduce Fig 5) and/or section4_ATL_pacemaker_ensemble.ipynb (to reproduce Fig 6)
  3. section4_PiControl.ipynb. This notebook is used to reproduce the panels in Fig 7 and respective supplementary material.

Results

Results from running the jupyter notebooks will be saved under the FIGS/ directory.

Miscellaneous

  • Earth System Model Evaluation Tool (ESMValTool):
    The ESMValTool was used for preprocessing and calculating the CMIP6 MEM and and for applying land mask on TS fields. For a sample recipe to produce the CMIP6 MEM using ESMValTool preprocessor, please see example_recipe_esmvaltool.yml.

  • Multidata-PCMCI Functionality:
    Details on the Multidata-PCMCI functionality can be found on Tigramite's GitHub repository (last access: 29 April 2024).


References

Copernicus Climate Change Service. (2021). ORAS5 global ocean reanalysis monthly data from 1958 to present. ECMWF.

Danabasoglu, G., et al. (2020). The Community Earth System Model Version 2 (CESM2). Journal of Advances in Modeling Earth Systems.

Kalnay, E., et al. (1996). The NCEP/NCAR 40-Year Reanalysis Project. Bulletin of the American Meteorological Society.

PCMCI+: J. Runge (2020): Discovering contemporaneous and lagged causal relations in autocorrelated nonlinear time series datasets. Proceedings of the 36th Conference on Uncertainty in Artificial Intelligence, UAI 2020,Toronto, Canada, 2019, AUAI Press, 2020.

Rayner, N. A., et al. (2003). Global analyses of sea surface temperature, sea ice, and night marine air temperature since the late nineteenth century. Journal of Geophysical Research: Atmospheres.

Righi, M., et al. (2020). Earth System Model Evaluation Tool (ESMValTool) v2.0 – technical overview. Geoscientific Model Development.

License

Apache License 2.0

karmouche24esd_atlanticpacificpacemaker_causality's People

Contributors

soufianekar avatar

Watchers

 avatar  avatar  avatar

Forkers

soufianekar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.