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, sou_kar@uni-bremen.de
Year: 2024
DOI:
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:
-
Clone this repository:
git clone https://github.com/EyringMLClimateGroup/karmouche24esd_AtlanticPacificPacemaker_Causality cd karmouche24esd_AtlanticPacificPacemaker_Causality
-
Create Conda environment:
conda env create -f environment.yml
-
Activate the environment:
conda activate causal_esd24 cd ..
-
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
-
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
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.
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)
-
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).
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.
We recommend running the notebooks in the order below:
- 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)
- section4_obs_reanalysis.ipynb This notebook is used to reproduce the panels in Figs 1, 3, and 4 and respective supplementary material
- section4_PAC_pacemaker_ensemble.ipynb(to reproduce Fig 5) and/or section4_ATL_pacemaker_ensemble.ipynb (to reproduce Fig 6)
- section4_PiControl.ipynb. This notebook is used to reproduce the panels in Fig 7 and respective supplementary material.
Results from running the jupyter notebooks will be saved under the FIGS/
directory.
-
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).
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.