ETCCDI climate extremes indices

Jana Sillmann
January, 23rd 2015
Joint WMO CLIVAR/CCl/JCOMM/GEWEX
Expert Team on Climate Change Detection and Indices
• Develop indices relevant to climate change monitoring and detection
• Create observational dataset(s) of indices with (ideally) global coverage
(www.climdex.org)
• Indices are:
 Statistically robust
 Easy to understand
 Globally valid
 Enable comparison of modeled data and observations
http://www.clivar.org/panels-and-working-groups/etccdi/etccdi.php
ETCCDI indices
http://etccdi.pacificclimate.org
/list_27_indices.shtml
ETCCDI percentile threshold indices
TN10p, TX10p Percentage of days when TN (orTX) < 10th percentile:
Let TNij be the daily minimum temperature on day i in period j and let TNin10 be the
calendar day 10th percentile centred on a 5-day window for the base period 19611990. The percentage of time for the base period is determined where:
TNij < TNin10
TN90p, TX90p Percentage of days when TN (or TX) > 90th percentile:
Let TNij be the daily minimum temperature on day i in period j and let TNin90 be the
calendar day 90th percentile centred on a 5-day window for the base period 19611990. The percentage of time for the base period is determined where:
TNij > TNin90
To avoid possible inhomogeneity across the in-base and out-base periods, the
calculation for the base period (1961-1990) requires the use of a bootstrap
processure. Details are described in Zhang et al. (2005) .
http://etccdi.pacificclimate.org/docs/Zhangetal05JumpPaper.pdf
ETCCDI Extremes Indices Calculation
Rclimdex  used at regional workshops for station data
Fclimdex  adapted for climate model data/faster processing
http://etccdi.pacificclimate.org/software.shtml
climdex.pcic.R  open source R package for large datasets
http://cran.r-project.org/web/packages/climdex.pcic/index.html
ETCCDI Extremes Indices Archive (CMIP3/CMIP5)
http://www.cccma.ec.gc.ca/data/climdex/
ETCCDI Extremes Indices Calculation
Preparation
Anne installed all necessary R packages on sverdrupt
e.g., climdex.pcic_0.7-2.tar.gz, ncdf4_1.8.tar.gz, ncdf4.helpers_0.2-5.tar.gz,
PCICt_0.5-4.tar.gz, udunits2_0.6.tar.gz, udunits-2.1.24.tar.gz
Have your data ready
i.e., input and output directory
ETCCDI Extremes Indices Calculation
Preparation
What you need to pay attention to:
Format of Data Files  needs to follow CMIP5 convention (name, attributes, etc.)
variable_timeinterval_model_experiment_ensemblemember_startday_endday.nc
Example: "pr_day_CESM1-CAM4_CO2BB1850_ens1_00310101-00601231.nc”
Base Period  make sure it is within data range
(standard base period for observation based indices 1961-1990)
ETCCDI Extremes Indices Calculation
Preparation
What you also need: The magic R script that does everything!
compute_index_on_gcm_improved.r
Or write your own code…
ETCCDI Extremes Indices Calculation
Preparation
Read R package description:
http://cran.r-project.org/web/packages/climdex.pcic/index.html
In R
> getAnywhere(“climdex.cdd”)
ETCCDI Extremes Indices Calculation
###calculate indices
library(climdex.pcic.ncdf)
Loading required package: PCICt
> input.files <> c("pr_day_CESM1-CAM4_CO2BB1850_ens1_00310101-00601231.nc",
> "tasmin_day_CESM1-CAM4_CO2BB1850_ens1_00310101-00601231.nc",
> "tasmax_day_CESM1-CAM4_CO2BB1850_ens1_00310101-00601231.nc")
> author.data <- list(institution="Center for International Climate and
> Environmental Research - Oslo, Norway", institution_id="CICERO")
> create.indices.from.files(input.files,
> "/div/enso/d12/janasi/CESM1-CAM4/indices/", input.files[1],
> author.data, base.range=c(1850,1879), parallel=8, max.vals.millions=70
>)
Creating cluster of 8 nodes of type SOCK Finished computing indices
ETCCDI Extremes Indices Calculation
###calculate thresholds
> library(climdex.pcic.ncdf)
Loading required package: PCICt
> input.files <> c("pr_day_CanESM2_historical_r1i1p1_18500101-20051231.nc",
> "tasmax_day_CanESM2_historical_r1i1p1_1850101-20051231.nc",
> "tasmin_day_CanESM2_historical_r1i1p1_1850101-20051231.nc")
> author.data <- list(institution="Center for International Climate and
> Environmental Research - Oslo, Norway", institution_id="CICERO")
> create.thresholds.from.file(input.files, "threshholds_CanESM2.nc",
> author.data, base.range=c(1961,1990), parallel=FALSE,
> max.vals.millions=70 )
Finished computing thresholds
ETCCDI Extremes Indices Calculation
###calculate indices with new thresholds
> input.files <- c("pr_day_CanESM2_rcp85_r1i1p1_20060101-21001231.nc",
> "tasmax_day_CanESM2_rcp85_r1i1p1_20060101-21001231.nc",
> "tasmin_day_CanESM2_rcp85_r1i1p1_20060101-21001231.nc")
> create.indices.from.files(input.files,
> "/div/ferrel/d2-3/cmip5/janasi/testground/indices/", input.files[1],
> author.data, base.range=c(1961, 1990), parallel=16,
> max.vals.millions=70, thresholds.files="threshholds_CanESM2.nc")
Creating cluster of 16 nodes of type SOCK
Finished computing indices
ETCCDI Extremes Indices Calculation
Output
[janasi@hadley r1i1p1]$ ll
total 1678136
-rw-rw-r-- 1 janasi janasi 8638672 Nov 3 09:01 altcddETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638672 Nov 3 09:01 altcsdiETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638672 Nov 3 09:01 altcwdETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638672 Nov 3 09:01 altwsdiETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638664 Nov 3 09:01 cddETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638656 Nov 3 09:01 csdiETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638664 Nov 3 09:02 cwdETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 103567752 Nov 3 09:02 dtrETCCDI_mon_NorESM1-M_historical_r1i1p1_185001-200512.nc
-rw-rw-r-- 1 janasi janasi 8638632 Nov 3 09:02 dtrETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638608 Nov 3 09:02 fdETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638616 Nov 3 09:02 gslETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638608 Nov 3 09:02 idETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638636 Nov 3 09:02 prcptotETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638648 Nov 3 09:02 r10mmETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638648 Nov 3 09:02 r1mmETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638648 Nov 3 09:02 r20mmETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638732 Nov 3 09:02 r95pETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 8638732 Nov 3 09:02 r99pETCCDI_yr_NorESM1-M_historical_r1i1p1_1850-2005.nc
-rw-rw-r-- 1 janasi janasi 103567748 Nov 3 09:03 rx1dayETCCDI_mon_NorESM1-M_historical_r1i1p1_185001-200512.nc
ETCCDI Extremes Indices Calculation