IPCC AR6 Chapter 3 (selected figures)#
Overview#
This recipe collects selected diagnostics used in IPCC AR6 WGI Chapter 3: Human influence on the climate system (Eyring et al., 2021). Plots from IPCC AR6 can be readily reproduced and compared to previous versions. The aim is to be able to start with what was available now the next time allowing us to focus on developing more innovative analysis methods rather than constantly having to “re-invent the wheel”.
Processing of CMIP3 models currently works only in serial mode, due to an issue in the input data still under investigation. To run the recipe for Fig 3.42a and Fig. 3.43 set “max_parallel_tasks: 1” in the config-user.yml file.
The plots are produced collecting the diagnostics from individual recipes. The following figures from Eyring et al. (2021) can currently be reproduced:
Figure 3.3 a,b,c,d: Surface Air Temperature - Model Bias
Figure 3.4: Anomaly Of Near-Surface Air Temperature
Figure 3.5: Temporal Variability Of Near-Surface Air Temperature
Figure 3.9: Anomaly Of Near-Surface Air Temperature - Attribution
Figure 3.13: Precipitation - Model Bias
Figure 3.15: Precipitation Anomaly
Figure 3.19: Speed-Up Of Zonal Mean Wind
Figure 3.42: Relative Model Performance
Figure 3.43: Correlation Pattern
To reproduce Fig. 3.9 you need the shapefile of the AR6 reference regions (Iturbide et al., 2020). Please download the file IPCC-WGI-reference-regions-v4_shapefile.zip, unzip and store it in <auxiliary_data_dir>/IPCC-regions/ (the auxiliary_data_dir is defined in the config-user.yml file).
Available recipes and diagnostics#
Recipes are stored in esmvaltool/recipes/ipccwg1ar6ch3/
recipe_ipccwg1ar6ch3_atmosphere.yml
recipe_ipccwg1ar6ch3_fig_3_9.yml
recipe_ipccwg1ar6ch3_fig_3_19.yml
recipe_ipccwg1ar6ch3_fig_3_42_a.yml
recipe_ipccwg1ar6ch3_fig_3_42_b.yml
recipe_ipccwg1ar6ch3_fig_3_43.yml
Diagnostics are stored in esmvaltool/diag_scripts/
Fig. 3.3:
ipcc_ar5/ch12_calc_IAV_for_stippandhatch.ncl: See here:.
ipcc_ar6/model_bias.ncl
Fig. 3.4:
ipcc_ar6/tas_anom.ncl
ipcc_ar6/tsline_collect.ncl
Fig. 3.5:
ipcc_ar6/zonal_st_dev.ncl
Fig. 3.9:
ipcc_ar6/tas_anom_damip.ncl
Fig. 3.13:
ipcc_ar5/ch12_calc_IAV_for_stippandhatch.ncl: See here:.
ipcc_ar6/model_bias.ncl
Fig. 3.15:
ipcc_ar6/precip_anom.ncl
Fig. 3.19:
ipcc_ar6/zonal_westerly_winds.ncl
Fig. 3.42:
perfmetrics/main.ncl
perfmetrics/collect.ncl
Fig. 3.43:
ipcc_ar6/corr_pattern.ncl
ipcc_ar6/corr_pattern_collect.ncl
User settings in recipe#
Script ipcc_ar5/ch12_calc_IAV_for_stippandhatch.ncl
See here.
Script ipcc_ar6/model_bias.ncl
Optional settings (scripts)
plot_abs_diff: additionally also plot absolute differences (true, false)
plot_rel_diff: additionally also plot relative differences (true, false)
plot_rms_diff: additionally also plot root mean square differences (true, false)
projection: map projection, e.g., Mollweide, Mercator
timemean: time averaging, i.e. “seasonalclim” (DJF, MAM, JJA, SON), “annualclim” (annual mean)
Required settings (variables)
reference_dataset: name of reference dataset
Color tables
variable “tas” and “tos”: diag_scripts/shared/plot/rgb/ipcc-ar6_temperature_div.rgb, diag_scripts/shared/plot/rgb/ipcc-ar6_temperature_10.rgb, diag_scripts/shared/plot/rgb/ipcc-ar6_temperature_seq.rgb
variable “pr”: diag_scripts/shared/plots/rgb/ipcc-ar6_precipitation_seq.rgb, diag_scripts/shared/plot/rgb/ipcc-ar6_precipitation_10.rgb
variable “sos”: diag_scripts/shared/plot/rgb/ipcc-ar6_misc_seq_1.rgb, diag_scripts/shared/plot/rgb/ipcc-ar6_misc_div.rgb
Script ipcc_ar6/tas_anom.ncl
Required settings for script
styleset: as in diag_scripts/shared/plot/style.ncl functions
Optional settings for script
blending: if true, calculates blended surface temperature
ref_start: start year of reference period for anomalies
ref_end: end year of reference period for anomalies
ref_value: if true, right panel with mean values is attached
ref_mask: if true, model fields will be masked by reference fields
region: name of domain
plot_units: variable unit for plotting
y-min: set min of y-axis
y-max: set max of y-axis
header: if true, region name as header
volcanoes: if true, adds volcanoes to the plot
write_stat: if true, write multi model statistics in nc-file
Optional settings for variables
reference_dataset: reference dataset; REQUIRED when calculating anomalies
Color tables
e.g. diag_scripts/shared/plot/styles/cmip5.style
Script ipcc_ar6/tas_anom_damip.ncl
Required settings for script
start_year: start year in figure
end_year: end year in figure
panels: list of variable blocks for each panel
Optional settings for script
ref_start: start year of reference period for anomalies
ref_end: end year of reference period for anomalies
ref_mask: if true, model fields will be masked by reference fields
plot_units: variable unit for plotting
y-min: set min of y-axis
y-max: set max of y-axis
header: title for each panel
title: name of region as part of filename
legend: set labels for optional output of a legend in an extra file
Script ipcc_ar6/tsline_collect.ncl
Optional settings for script
blending: if true, then var=”gmst” otherwise “gsat”
ref_start: start year of reference period for anomalies
ref_end: end year of reference period for anomalies
region: name of domain
plot_units: variable unit for plotting
y-min: set min of y-axis
y-max: set max of y-axis
order: order in which experiments should be plotted
stat_shading: if true: shading of statistic range
ref_shading: if true: shading of reference period
Optional settings for variables
reference_dataset: reference dataset; REQUIRED when calculating anomalies
Script ipcc_ar6/zonal_st_dev.ncl
Required settings for script
styleset: as in diag_scripts/shared/plot/style.ncl functions
Optional settings for script
plot_legend: if true, plot legend will be plotted
plot_units: variable unit for plotting
multi_model_mean: if true, multi-model mean and uncertaintiy will be plotted
Optional settings for variables
reference_dataset: reference dataset; REQUIRED when calculating anomalies
Script ipcc_ar6/precip_anom.ncl
Required settings for script
panels: list of variables plotted in each panel
start_year: start of time coordinate
end_year: end of time coordinate
Optional settings for script
anomaly: true if anomaly should be calculated
ref_start: start year of reference period for anomalies
ref_end: end year of reference period for anomalies
ref_mask: if true, model fields will be masked by reference fields
region: name of domain
plot_units: variable unit for plotting
header: if true, region name as header
stat: statistics for multi model nc-file (MinMax,5-95,10-90)
y_min: set min of y-axis
y_max: set max of y-axis
Script ipcc_ar6/zonal_westerly_winds.ncl
Optional settings for variables
reference_dataset: reference dataset; REQUIRED when calculating anomalies
Optional settings for script
e13fig12_start_year: year when the climatology calculation starts (default: start_year of var)
e13fig12_end_year: year when the climatology calculation ends (default: end_year of var)
e13fig12_multimean: multimodel mean (default: False)
e13fig12_exp_MMM: name of the experiments for the MMM (required if @e13fig12_multimean = True)
e13fig12_season: season (default: ANN)
Script perfmetrics/perfmetrics_main.ncl
See here.
Script perfmetrics/perfmetrics_collect.ncl
See here.
Script ipcc_ar6/corr_pattern.ncl
Required settings for variables
reference_dataset: name of reference observation
Optional settings for variables
alternative_dataset: name of alternative observations
Script ipcc_ar6/corr_pattern_collect.ncl
Optional settings for script
diag_order: give order of plotting variables on the x-axis
labels: List of labels for each variable on the x-axis
model_spread: if True, model spread is shaded
plot_median: if True, median is plotted
project_order: give order of projects
Variables#
et (land, monthly mean, longitude latitude time)
fgco2 (ocean, monthly mean, longitude latitude time)
gpp (land, monthly mean, longitude latitude time)
hfds (land, monthly mean, longitude latitude time)
hus (land, monthly mean, longitude latitude level time)
lai (land, monthly mean, longitude latitude time)
lwcre (atmos, monthly mean, longitude latitude time)
nbp (land, monthly mean, longitude latitude time)
pr (atmos, monthly mean, longitude latitude time)
psl (atmos, monthly mean, longitude latitude time)
rlds (atmos, monthly mean, longitude latitude time)
rlus (atmos, monthly mean, longitude latitude time)
rlut (atmos, monthly mean, longitude latitude time)
rsds (atmos, monthly mean, longitude latitude time)
rsus (atmos, monthly mean, longitude latitude time)
rsut (atmos, monthly mean, longitude latitude time)
sm (land, monthly mean, longitude latitude time)
sic (seaice, monthly mean, longitude latitude time)
siconc (seaice, monthly mean, longitude latitude time)
swcre (atmos, monthly mean, longitude latitude time)
ta (atmos, monthly mean, longitude latitude level time)
tas (atmos, monthly mean, longitude latitude time)
tasa (atmos, monthly mean, longitude latitude time)
tos (atmos, monthly mean, longitude latitude time)
ts (atmos, monthly mean, longitude latitude time)
ua (atmos, monthly mean, longitude latitude level time)
va (atmos, monthly mean, longitude latitude level time)
zg (atmos, monthly mean, longitude latitude level time)
Observations and reformat scripts#
AIRS (hus - obs4MIPs)
ATSR (tos - obs4MIPs)
BerkeleyEarth (tasa - esmvaltool/cmorizers/data/formatters/datasets/berkeleyearth.py)
CERES-EBAF (rlds, rlus, rlut, rlutcs, rsds, rsus, rsut, rsutcs - obs4MIPs)
CRU (pr - esmvaltool/cmorizers/data/formatters/datasets/cru.py)
ESACCI-SOILMOISTURE (sm - esmvaltool/cmorizers/data/formatters/datasets /esacci_soilmoisture.py)
ESACCI-SST (ts - esmvaltool/cmorizers/data/formatters/datasets/esacci_sst.py)
ERA5 (hus, psl, ta, tas, ua, va, zg - ERA5 data can be used via the native6 project)
ERA-Interim (hfds - cmorizers/data/formatters/datasets/era_interim.py)
FLUXCOM (gpp - cmorizers/data/formatters/datasets/fluxcom.py)
GHCN (pr - esmvaltool/cmorizers/data/formatters/datasets/ghcn.ncl)
GPCP-SG (pr - obs4MIPs)
HadCRUT5 (tasa - esmvaltool/cmorizers/data/formatters/datasets/hadcrut5.py)
HadISST (sic, tos, ts - esmvaltool/cmorizers/data/formatters/datasets/hadisst.ncl)
JMA-TRANSCOM (fgco2, nbp - esmvaltool/cmorizers/data/formatters/datasets/jma_transcom.py)
JRA-55 (psl - ana4MIPs)
Kadow2020 (tasa - esmvaltool/cmorizers/data/formatters/datasets/kadow2020.py)
LandFlux-EVAL (et - esmvaltool/cmorizers/data/formatters/datasets/landflux_eval.py)
Landschuetzer2016 (fgco2 - esmvaltool/cmorizers/data/formatters/datasets/landschuetzer2016.py)
LAI3g (lai - esmvaltool/cmorizers/data/formatters/datasets/lai3g.py)
MTE (gpp - esmvaltool/cmorizers/data/formatters/datasets/mte.py)
NCEP-NCAR-R1 (ta, tas, ua, va, zg - esmvaltool/cmorizers/data/formatters/datasets/ncep_ncar_r1.py)
NOAAGlobalTemp (tasa - esmvaltool/cmorizers/data/formatters/datasets/noaaglobaltemp.py)
References#
Eyring, V., N.P. Gillett, K.M. Achuta Rao, R. Barimalala, M. Barreiro Parrillo, N. Bellouin, C. Cassou, P.J. Durack, Y. Kosaka, S. McGregor, S. Min, O. Morgenstern, and Y. Sun, 2021: Human Influence on the Climate System. In Climate Change 2021: The Physical Science Basis. Contribution of Working Group I to the Sixth Assessment Report of the Intergovernmental Panel on Climate Change [Masson-Delmotte, V., P. Zhai, A. Pirani, S.L. Connors, C. Péan, S. Berger, N. Caud, Y. Chen, L. Goldfarb, M.I. Gomis , M. Huang, K. Leitzell, E. Lonnoy, J.B.R. Matthews, T.K. Maycock, T. Waterfield, O. Yelekçi, R. Yu, and B. Zhou (eds.)]. Cambridge Universiy Press, Cambridge, United Kingdom and New York, NY, USA, pp. 423-552, doi: 10.1017/9781009157896.005.