CDO Commands and Usage Details
CDO Commands and Usage Details
CDO Commands and Usage Details
Operator index 34
2
1 Introduction
The Climate Data Operator (CDO) software is a collection of operators for standard processing of climate
and forecast model data.
This document describes additional CDO operators to compute climate indices of daily temperature and
precipitation extreme. The definition of these climate indices are from the European Climate Assessment
(ECA) project.
The climate indices were implemented in CDO by Ralf Quast (Brockmann Consult) on behalf of the Service
Gruppe Anpassung (SGA) in 2006. SGA was part of the Model and Data Group (M&D) at the MPI for
Meteorology. In 2010, the Model and Data Group became the Data Management department at DKRZ
(Deutsches Klimarechenzentrum) and the SGA was disintegrated. For this reason there is no further user
support available for these CDO operators.
3
2 Climate indices reference manual
This section gives a description of all CDO operators to compute the climate indices of daily temperature
and precipitation extreme. Related operators are grouped to modules. For easier description all single
input files are named infile or infile1, infile2, etc., and an arbitrary number of input files are named
infiles. All output files are named outfile or outfile1, outfile2, etc. Further the following notion is
introduced:
i(t) Timestep t of infile
i(t, x) Element number x of the field at timestep t of infile
o(t) Timestep t of outfile
o(t, x) Element number x of the field at timestep t of outfile
eca cwdi Cold wave duration index w.r.t. mean of reference period
eca cwfi Cold-spell days index w.r.t. 10th percentile of reference period
etccdi csdi Cold-spell duration index
eca hwdi Heat wave duration index w.r.t. mean of reference period
eca hwfi Warm spell days index w.r.t. 90th percentile of reference period
eca r75p Moderate wet days w.r.t. 75th percentile of reference period
4
Climate indices reference manual
eca r95p Very wet days w.r.t. 95th percentile of reference period
eca r99p Extremely wet days w.r.t. 99th percentile of reference period
eca rx1day Highest one day precipitation amount per time period
etccdi rx1day Maximum 1-day Precipitation
eca tg10p Cold days percent w.r.t. 10th percentile of reference period
eca tg90p Warm days percent w.r.t. 90th percentile of reference period
eca tn10p Cold nights percent w.r.t. 10th percentile of reference period
eca tn90p Warm nights percent w.r.t. 90th percentile of reference period
eca tx10p Very cold days percent w.r.t. 10th percentile of reference period
eca tx90p Very warm days percent w.r.t. 90th percentile of reference period
etccdi tx90p Percentage of Days when Daily Maximum Temperature is Above the 90th Percentile
etccdi tx10p Percentage of Days when Daily Maximum Temperature is Below the 10th Percentile
etccdi tn90p Percentage of Days when Daily Minimum Temperature is Above the 90th Percentile
etccdi tn10p Percentage of Days when Daily Minimum Temperature is Below the 10th Percentile
etccdi r95p Annual Total Precipitation when Daily Precipitation Exceeds the 95th Percentile of Wet Day P
etccdi r99p Annual Total Precipitation when Daily Precipitation Exceeds the 99th Percentile of Wet Day P
5
Climate indices reference manual
Synopsis
Description
Let infile be a time series of the daily precipitation amount RR, then the largest number of con-
secutive days where RR is less than R is counted. R is an optional parameter with default R = 1
mm. A further output variable is the number of dry periods of more than N days. Parameter is a
comma-separated list of ”key=values” pairs.
Operators
Parameter
R FLOAT Precipitation threshold (unit: mm; default: R = 1 mm)
N INTEGER Minimum number of days exceeded (default: N = 5)
freq STRING Output frequency (year, month)
Example
To get the largest number of consecutive dry days of a time series of daily precipitation amounts use:
cdo eca_cdd rrfile outfile
Synopsis
Description
Let infile be a time series of the daily minimum temperature TN, then the largest number of
consecutive days where TN < 0 ℃ is counted. Note that TN have to be given in units of Kelvin. A
further output variable is the number of frost periods of more than N days. The date information of
a timestep in outfile is the date of the last contributing timestep in infile.
Parameter
N INTEGER Minimum number of days exceeded (default: N = 5)
6
Climate indices reference manual
Example
To get the largest number of consecutive frost days of a time series of daily minimum temperatures
use:
cdo eca_cfd tnfile outfile
7
Climate indices reference manual
Synopsis
Description
Let infile be a time series of the daily maximum temperature TX, then the largest number of
consecutive days where TX > T is counted. The number T is an optional parameter with default
T = 25℃. Note that TN have to be given in units of Kelvin, whereas T have to be given in degrees
Celsius. A further output variable is the number of summer periods of more than N days. The date
information of a timestep in outfile is the date of the last contributing timestep in infile.
Parameter
T FLOAT Temperature threshold (unit: ℃; default: T = 25℃)
N INTEGER Minimum number of days exceeded (default: N = 5)
Example
To get the largest number of consecutive summer days of a time series of daily maximum temperatures
use:
cdo eca_csu txfile outfile
Synopsis
Description
Let infile be a time series of the daily precipitation amount RR, then the largest number of con-
secutive days where RR is at least R is counted. R is an optional parameter with default R = 1
mm. A further output variable is the number of wet periods of more than N days. Parameter is a
comma-separated list of ”key=values” pairs.
Operators
Parameter
R FLOAT Precipitation threshold (unit: mm; default: R = 1 mm)
N INTEGER Minimum number of days exceeded (default: N = 5)
freq STRING Output frequency (year, month)
8
Climate indices reference manual
Example
To get the largest number of consecutive wet days of a time series of daily precipitation amounts use:
cdo eca_cwd rrfile outfile
9
Climate indices reference manual
2.0.5 ECACWDI - Cold wave duration index w.r.t. mean of reference period
Synopsis
Description
Let infile1 be a time series of the daily minimum temperature TN, and let infile2 be the mean
TNnorm of daily minimum temperatures for any period used as reference. Then counted is the number
of days where, in intervals of at least nday consecutive days, TN < TNnorm - T . The numbers nday
and T are optional parameters with default nday = 6 and T = 5℃. A further output variable is
the number of cold waves longer than or equal to nday days. TNnorm is calculated as the mean of
minimum temperatures of a five day window centred on each calendar day of a given climate reference
period. Note that both TN and TNnorm have to be given in the same units. The date information
of a timestep in outfile is the date of the last contributing timestep in infile1.
Parameter
nday INTEGER Number of consecutive days (default: nday = 6)
T FLOAT Temperature offset (unit: ℃; default: T = 5℃)
Example
To compute the cold wave duration index of a time series of daily minimum temperatures use:
cdo eca_cwdi tnfile tnnormfile outfile
2.0.6 ECACWFI - Cold-spell days index w.r.t. 10th percentile of reference period
Synopsis
Description
Let infile1 be a time series of the daily mean temperature TG, and infile2 be the 10th percentile
TGn10 of daily mean temperatures for any period used as reference. Then counted is the number
of days where, in intervals of at least nday consecutive days, TG < TGn10. The number nday is
an optional parameter with default nday = 6. A further output variable is the number of cold-spell
periods longer than or equal to nday days. TGn10 is calculated as the 10th percentile of daily mean
temperatures of a five day window centred on each calendar day of a given climate reference period.
Note that both TG and TGn10 have to be given in the same units.
Operators
eca cwfi Cold-spell days index wrt 10th percentile of reference period
The operator counts over the entire time series. The date information of a timestep
in outfile is the date of the last contributing timestep in infile.
etccdi csdi Cold-spell duration index
The default output frequency is yearly. Periods within overlapping years are ac-
counted for the first year. The date information of a timestep in outfile is the mid
of the frequency interval.
10
Climate indices reference manual
Parameter
nday INTEGER Number of consecutive days (default: nday = 6)
freq STRING Output frequency (year, month)
Example
To compute the number of cold-spell days of a time series of daily mean temperatures use:
cdo eca_cwfi tgfile tgn10file outfile
11
Climate indices reference manual
Synopsis
Description
Let infile1 and infile2 be time series of thr maximum and minimum temperature TX and TN,
respectively. Then the extreme temperature range is the difference of the maximum of TX and the
minimum of TN. Note that TX and TN have to be given in the same units. The date information of
a timestep in outfile is the date of the last contributing timesteps in infile1 and infile2.
Example
To get the intra-period extreme temperature range for two time series of maximum and minimum
temperatures use:
cdo eca_etr txfile tnfile outfile
Synopsis
Description
Let infile be a time series of the daily minimum temperature TN, then the number of days where TN
< 0 ℃ is counted. Note that TN have to be given in units of Kelvin. Parameter is a comma-separated
list of ”key=value” pairs.
Operators
Parameter
freq STRING Output frequency (year, month)
Example
To get the number of frost days of a time series of daily minimum temperatures use:
cdo eca_fd tnfile outfile
12
Climate indices reference manual
Synopsis
Description
Let infile1 be a time series of the daily mean temperature TG, and infile2 be a land-water mask.
Within a period of 12 months, the thermal growing season length is officially defined as the number
of days between:
• first occurrence of at least nday consecutive days with TG > T
• first occurrence of at least nday consecutive days with TG < T within the last 6 months
On northern hemisphere, this period corresponds with the regular year, whereas on southern hemi-
sphere, it starts at July 1st. Please note, that this definition may lead to weird results concerning
values TG = T : In the first half of the period, these days do not contribute to the gsl, but they
do within the second half. Moreover this definition could lead to discontinuous values in equatorial
regions.
The numbers nday and T are optional parameter with default nday = 6 and T = 5℃. The number
f land is an optional parameter with default value f land = 0.5 and denotes the fraction of a grid
point that have to be covered by land in order to be included in the calculation. A further output
variable is the start day of year of the growing season. Note that TG have to be given in units of
Kelvin, whereas T have to be given in degrees Celsius.
The date information of a timestep in outfile is the date of the last contributing timestep in infile.
Parameter
nday INTEGER Number of consecutive days (default: nday = 6)
T FLOAT Temperature threshold (unit: ℃; default: T = 5℃)
fland FLOAT Land fraction threshold (default: fland = 0.5)
Example
To get the growing season length of a time series of daily mean temperatures use:
cdo eca_gsl tgfile maskfile outfile
13
Climate indices reference manual
Synopsis
Description
Let infile be a time series of the daily mean temperature TG, then the heating degree days are
defined as the sum of T 1 - TG, where only values TG < T 2 are considered. If T 1 and T 2 are omitted,
a temperature of 17℃ is used for both parameters. If only T 1 is given, T 2 is set to T 1. Note that
TG have to be given in units of kelvin, whereas T 1 and T 2 have to be given in degrees Celsius. The
date information of a timestep in outfile is the date of the last contributing timestep in infile.
Parameter
T1 FLOAT Temperature limit (unit: ℃; default: T1 = 17℃)
T2 FLOAT Temperature limit (unit: ℃; default: T2 = T1)
Example
To compute the heating degree days of a time series of daily mean temperatures use:
cdo eca_hd tgfile outfile
2.0.11 ECAHWDI - Heat wave duration index w.r.t. mean of reference period
Synopsis
Description
Let infile1 be a time series of the daily maximum temperature TX, and let infile2 be the mean
TXnorm of daily maximum temperatures for any period used as reference. Then counted is the
number of days where, in intervals of at least nday consecutive days, TX > TXnorm + T . The
numbers nday and T are optional parameters with default nday = 6 and T = 5℃. A further output
variable is the number of heat waves longer than or equal to nday days. TXnorm is calculated as
the mean of maximum temperatures of a five day window centred on each calendar day of a given
climate reference period. Note that both TX and TXnorm have to be given in the same units. The
date information of a timestep in outfile is the date of the last contributing timestep in infile1.
Parameter
nday INTEGER Number of consecutive days (default: nday = 6)
T FLOAT Temperature offset (unit: ℃; default: T = 5℃)
14
Climate indices reference manual
2.0.12 ECAHWFI - Warm spell days index w.r.t. 90th percentile of reference period
Synopsis
eca hwfi[,nday[,params]] infile1 infile2 outfile
etccdi wsdi infile1 infile2 outfile
Description
Let infile1 be a time series of the daily mean temperature TG, and infile2 be the 90th percentile
TGn90 of daily mean temperatures for any period used as reference. Then counted is the number of
days where, in intervals of at least nday consecutive days, TG > TGn90. The number nday is an
optional parameter with default nday = 6. A further output variable is the number of warm-spell
periods longer than or equal to nday days. TGn90 is calculated as the 90th percentile of daily mean
temperatures of a five day window centred on each calendar day of a given climate reference period.
Note that both TG and TGn90 have to be given in the same units. Parameter is a comma-separated
list of ”key=values” pairs.
Operators
eca hwfi Warm spell days index wrt 90th percentile of reference period
The operator counts over the entire time series. The date information of a timestep
in outfile is the date of the last contributing timestep in infile.
Parameter
nday INTEGER Number of consecutive days (default: nday = 6)
freq STRING Output frequency (year, month)
Example
To compute the number of warm-spell days of a time series of daily mean temperatures use:
cdo eca_hwfi tgfile tgn90file outfile
Synopsis
< operator >[,params] infile outfile
Description
Let infile be a time series of the daily maximum temperature TX, then the number of days where TX
< 0 ℃ is counted. Note that TX have to be given in units of Kelvin. Parameter is a comma-separated
list of ”key=values” pairs.
Operators
eca id Ice days index per time period
The operator counts over the entire time series. The date information of a timestep in
outfile is the date of the last contributing timestep in infile.
etccdi id Ice days index per time period
The default output frequency is yearly. The date information of a timestep in outfile
is the mid of the frequency interval.
15
Climate indices reference manual
Parameter
freq STRING Output frequency (year, month)
Example
To get the number of ice days of a time series of daily maximum temperatures use:
cdo eca_id txfile outfile
16
Climate indices reference manual
2.0.14 ECAR75P - Moderate wet days w.r.t. 75th percentile of reference period
Synopsis
Description
Let infile1 be a time series RR of the daily precipitation amount at wet days (precipitation >= 1
mm) and infile2 be the 75th percentile RRn75 of the daily precipitation amount at wet days for any
period used as reference. Then the percentage of wet days with RR > RRn75 is calculated. RRn75 is
calculated as the 75th percentile of all wet days of a given climate reference period. Usually infile2
is generated by the operator ydaypctl,75. The date information of a timestep in outfile is the date
of the last contributing timestep in infile1.
Example
To compute the percentage of wet days with daily precipitation amount greater than the 75th per-
centile of the daily precipitation amount at wet days for a given reference period use:
cdo eca_r75p rrfile rrn75file outfile
Synopsis
Description
Let infile1 be a time series RR of the daily precipitation amount at wet days (precipitation >= 1
mm) and infile2 be the 75th percentile RRn75 of the daily precipitation amount at wet days for
any period used as reference. Then the ratio of the precipitation sum at wet days with RR > RRn75
to the total precipitation sum is calculated. RRn75 is calculated as the 75th percentile of all wet days
of a given climate reference period. Usually infile2 is generated by the operator ydaypctl,75. The
date information of a timestep in outfile is the date of the last contributing timestep in infile1.
17
Climate indices reference manual
Synopsis
Description
Let infile1 be a time series RR of the daily precipitation amount at wet days (precipitation >= 1
mm) and infile2 be the 90th percentile RRn90 of the daily precipitation amount at wet days for any
period used as reference. Then the percentage of wet days with RR > RRn90 is calculated. RRn90 is
calculated as the 90th percentile of all wet days of a given climate reference period. Usually infile2
is generated by the operator ydaypctl,90. The date information of a timestep in outfile is the date
of the last contributing timestep in infile1.
Example
To compute the percentage of wet days where the daily precipitation amount is greater than the 90th
percentile of the daily precipitation amount at wet days for a given reference period use:
cdo eca_r90p rrfile rrn90file outfile
Synopsis
Description
Let infile1 be a time series RR of the daily precipitation amount at wet days (precipitation >= 1
mm) and infile2 be the 90th percentile RRn90 of the daily precipitation amount at wet days for
any period used as reference. Then the ratio of the precipitation sum at wet days with RR > RRn90
to the total precipitation sum is calculated. RRn90 is calculated as the 90th percentile of all wet days
of a given climate reference period. Usually infile2 is generated by the operator ydaypctl,90. The
date information of a timestep in outfile is the date of the last contributing timestep in infile1.
18
Climate indices reference manual
2.0.18 ECAR95P - Very wet days w.r.t. 95th percentile of reference period
Synopsis
Description
Let infile1 be a time series RR of the daily precipitation amount at wet days (precipitation >= 1
mm) and infile2 be the 95th percentile RRn95 of the daily precipitation amount at wet days for any
period used as reference. Then the percentage of wet days with RR > RRn95 is calculated. RRn95 is
calculated as the 95th percentile of all wet days of a given climate reference period. Usually infile2
is generated by the operator ydaypctl,95. The date information of a timestep in outfile is the date
of the last contributing timestep in infile1.
Example
To compute the percentage of wet days where the daily precipitation amount is greater than the 95th
percentile of the daily precipitation amount at wet days for a given reference period use:
cdo eca_r95p rrfile rrn95file outfile
Synopsis
Description
Let infile1 be a time series RR of the daily precipitation amount at wet days (precipitation >= 1
mm) and infile2 be the 95th percentile RRn95 of the daily precipitation amount at wet days for
any period used as reference. Then the ratio of the precipitation sum at wet days with RR > RRn95
to the total precipitation sum is calculated. RRn95 is calculated as the 95th percentile of all wet days
of a given climate reference period. Usually infile2 is generated by the operator ydaypctl,95. The
date information of a timestep in outfile is the date of the last contributing timestep in infile1.
19
Climate indices reference manual
2.0.20 ECAR99P - Extremely wet days w.r.t. 99th percentile of reference period
Synopsis
Description
Let infile1 be a time series RR of the daily precipitation amount at wet days (precipitation >= 1
mm) and infile2 be the 99th percentile RRn99 of the daily precipitation amount at wet days for any
period used as reference. Then the percentage of wet days with RR > RRn99 is calculated. RRn99 is
calculated as the 99th percentile of all wet days of a given climate reference period. Usually infile2
is generated by the operator ydaypctl,99. The date information of a timestep in outfile is the date
of the last contributing timestep in infile1.
Example
To compute the percentage of wet days where the daily precipitation amount is greater than the 99th
percentile of the daily precipitation amount at wet days for a given reference period use:
cdo eca_r99p rrfile rrn99file outfile
Synopsis
Description
Let infile1 be a time series RR of the daily precipitation amount at wet days (precipitation >= 1
mm) and infile2 be the 99th percentile RRn99 of the daily precipitation amount at wet days for
any period used as reference. Then the ratio of the precipitation sum at wet days with RR > RRn99
to the total precipitation sum is calculated. RRn99 is calculated as the 99th percentile of all wet days
of a given climate reference period. Usually infile2 is generated by the operator ydaypctl,99. The
date information of a timestep in outfile is the date of the last contributing timestep in infile1.
20
Climate indices reference manual
Synopsis
Description
Let infile be a time series of the daily precipitation amount RR in [mm] (or alternatively in [kg
m-2]), then the number of days where RR is at least x mm is counted. eca r10mm and eca r20mm
are specific ECA operators with a daily precipitation amount of 10 and 20 mm respectively. The date
information of a timestep in outfile is the date of the last contributing timestep in infile except
for the etccdi operator. Parameter is a comma-separated list of ”key=values” pairs.
Operators
Parameter
x FLOAT Daily precipitation amount threshold in [mm]
freq STRING Output frequency (year, month)
Note
Precipitation rates in [mm/s] have to be converted to precipitation amounts (multiply with 86400 s).
Apart from metadata information the result of eca pd,1 and eca rr1 is the same.
Example
To get the number of days with precipitation greater than 25 mm for a time series of daily precipitation
amounts use:
cdo eca_pd,25 infile outfile
21
Climate indices reference manual
Synopsis
Description
Let infile be a time series of the daily precipitation amount RR in [mm] (or alternatively in [kg
m-2]), then the number of days where RR is at least R is counted. R is an optional parameter with
default R = 1 mm. The date information of a timestep in outfile is the date of the last contributing
timestep in infile.
Parameter
R FLOAT Precipitation threshold (unit: mm; default: R = 1 mm)
Example
To get the number of wet days of a time series of daily precipitation amounts use:
2.0.24 ECARX1DAY - Highest one day precipitation amount per time period
Synopsis
Description
Let infile be a time series of the daily precipitation amount RR, then the maximum of RR is written
to outfile. If the optional parameter mode is set to ’m’ the maximum daily precipitation amounts
are determined for each month. Parameter is a comma-separated list of ”key=values” pairs.
Operators
eca rx1day Highest one day precipitation amount per time period
The operator counts over the entire time series. The date information of a
timestep in outfile is the date of the last contributing timestep in infile.
etccdi rx1day Maximum 1-day Precipitation
The default output frequency is yearly. The date information of a timestep in
outfile is the mid of the frequency interval.
Parameter
freq STRING Output frequency (year, month)
22
Climate indices reference manual
Example
To get the maximum of a time series of daily precipitation amounts use:
cdo eca_rx1day rrfile outfile
If you are interested in the maximum daily precipitation for each month, use:
cdo eca_rx1day,freq=month rrfile outfile
Apart from metadata information, both operations yield the same as:
cdo timmax rrfile outfile
cdo monmax rrfile outfile
23
Climate indices reference manual
Synopsis
Description
Let infile be a time series of 5-day precipitation totals RR, then the maximum of RR is written to
outfile. A further output variable is the number of 5 day period with precipitation totals greater
than x mm, where x is an optional parameter with default x = 50 mm. Parameter is a comma-
separated list of ”key=values” pairs.
Operators
Parameter
x FLOAT Precipitation threshold (unit: mm; default: x = 50 mm)
freq STRING Output frequency (year, month)
Example
To get the maximum of a time series of 5-day precipitation totals use:
cdo eca_rx5day rrfile outfile
Apart from metadata information, the above operation yields the same as:
cdo timmax rrfile outfile
Synopsis
Description
Let infile be a time series of the daily precipitation amount RR, then the mean precipitation amount
at wet days (RR >= R) is written to outfile. R is an optional parameter with default R = 1 mm.
The date information of a timestep in outfile is the date of the last contributing timestep in infile.
24
Climate indices reference manual
Parameter
R FLOAT Precipitation threshold (unit: mm; default: R = 1 mm)
Example
To get the daily intensity index of a time series of daily precipitation amounts use:
cdo eca_sdii rrfile outfile
Synopsis
Description
Let infile be a time series of the daily maximum temperature TX, then the number of days where
TX > T is counted. The number T is an optional parameter with default T = 25℃. Note that TX
have to be given in units of Kelvin, whereas T have to be given in degrees Celsius. Parameter is a
comma-separated list of ”key=values” pairs.
Operators
Parameter
T FLOAT Temperature threshold (unit: ℃; default: T = 25℃)
freq STRING Output frequency (year, month)
Example
To get the number of summer days of a time series of daily maximum temperatures use:
cdo eca_su txfile outfile
25
Climate indices reference manual
2.0.28 ECATG10P - Cold days percent w.r.t. 10th percentile of reference period
Synopsis
Description
Let infile1 be a time series of the daily mean temperature TG, and infile2 be the 10th percentile
TGn10 of daily mean temperatures for any period used as reference. Then the percentage of time
where TG < TGn10 is calculated. TGn10 is calculated as the 10th percentile of daily mean temper-
atures of a five day window centred on each calendar day of a given climate reference period. Note
that both TG and TGn10 have to be given in the same units. The date information of a timestep in
outfile is the date of the last contributing timestep in infile1.
Example
To compute the percentage of timesteps with a daily mean temperature smaller than the 10th per-
centile of the daily mean temperatures for a given reference period use:
cdo eca_tg10p tgfile tgn10file outfile
2.0.29 ECATG90P - Warm days percent w.r.t. 90th percentile of reference period
Synopsis
Description
Let infile1 be a time series of the daily mean temperature TG, and infile2 be the 90th percentile
TGn90 of daily mean temperatures for any period used as reference. Then the percentage of time
where TG > TGn90 is calculated. TGn90 is calculated as the 90th percentile of daily mean temper-
atures of a five day window centred on each calendar day of a given climate reference period. Note
that both TG and TGn90 have to be given in the same units. The date information of a timestep in
outfile is the date of the last contributing timestep in infile1.
Example
To compute the percentage of timesteps with a daily mean temperature greater than the 90th per-
centile of the daily mean temperatures for a given reference period use:
cdo eca_tg90p tgfile tgn90file outfile
26
Climate indices reference manual
2.0.30 ECATN10P - Cold nights percent w.r.t. 10th percentile of reference period
Synopsis
Description
Let infile1 be a time serie of the daily minimum temperature TN, and infile2 be the 10th percentile
TNn10 of daily minimum temperatures for any period used as reference. Then the percentage of time
where TN < TNn10 is calculated. TNn10 is calculated as the 10th percentile of daily minimum
temperatures of a five day window centred on each calendar day of a given climate reference period.
Note that both TN and TNn10 have to be given in the same units. The date information of a timestep
in outfile is the date of the last contributing timestep in infile1.
Example
To compute the percentage of timesteps with a daily minimum temperature smaller than the 10th
percentile of the daily minimum temperatures for a given reference period use:
cdo eca_tn10p tnfile tnn10file outfile
2.0.31 ECATN90P - Warm nights percent w.r.t. 90th percentile of reference period
Synopsis
Description
Let infile1 be a time series of the daily minimum temperature TN, and infile2 be the 90th per-
centile TNn90 of daily minimum temperatures for any period used as reference. Then the percentage
of time where TN > TNn90 is calculated. TNn90 is calculated as the 90th percentile of daily min-
imum temperatures of a five day window centred on each calendar day of a given climate reference
period. Note that both TN and TNn90 have to be given in the same units. The date information of
a timestep in outfile is the date of the last contributing timestep in infile1.
Example
To compute the percentage of timesteps with a daily minimum temperature greater than the 90th
percentile of the daily minimum temperatures for a given reference period use:
cdo eca_tn90p tnfile tnn90file outfile
27
Climate indices reference manual
Synopsis
Description
Let infile be a time series of the daily minimum temperature TN, then the number of days where
TN > T is counted. The number T is an optional parameter with default T = 20℃. Note that TN
have to be given in units of Kelvin, whereas T have to be given in degrees Celsius. Parameter is a
comma-separated list of ”key=values” pairs.
Operators
Parameter
T FLOAT Temperature threshold (unit: ℃; default: T = 20℃)
freq STRING Output frequency (year, month)
Example
To get the number of tropical nights of a time series of daily minimum temperatures use:
cdo eca_tr tnfile outfile
2.0.33 ECATX10P - Very cold days percent w.r.t. 10th percentile of reference
period
Synopsis
Description
Let infile1 be a time series of the daily maximum temperature TX, and infile2 be the 10th per-
centile TXn10 of daily maximum temperatures for any period used as reference. Then the percentage
of time where TX < TXn10. is calculated. TXn10 is calculated as the 10th percentile of daily max-
imum temperatures of a five day window centred on each calendar day of a given climate reference
period. Note that both TX and TXn10 have to be givenin the same units. The date information of
a timestep in outfile is the date of the last contributing timestep in infile1.
28
Climate indices reference manual
Example
To compute the percentage of timesteps with a daily maximum temperature smaller than the 10th
percentile of the daily maximum temperatures for a given reference period use:
cdo eca_tx10p txfile txn10file outfile
29
Climate indices reference manual
2.0.34 ECATX90P - Very warm days percent w.r.t. 90th percentile of reference
period
Synopsis
Description
Let infile1 be a time series of the daily maximum temperature TX, and infile2 be the 90th per-
centile TXn90 of daily maximum temperatures for any period used as reference. Then the percentage
of time where TX > TXn90. is calculated. TXn90 is calculated as the 90th percentile of daily max-
imum temperatures of a five day window centred on each calendar day of a given climate reference
period. Note that both TX and TXn90 have to be given in the same units. The date information of
a timestep in outfile is the date of the last contributing timestep in infile1.
Example
To compute the percentage of timesteps with a daily maximum temperature greater than the 90th
percentile of the daily maximum temperatures for a given reference period use:
cdo eca_tx90p txfile txn90file outfile
30
Climate indices reference manual
Synopsis
Description
This module enables to compute Climate Extremes Indices according to the method recommended by
the Expert Team on Climate Change Detection and Indices. It differs from the corresponding eca *
indices by applying bootstrapping for a reference period (see Zhang et al. 2005) given by startboot and
endboot and using the R-type 8 method for percentile calculation. A requirement for correct percentile
calculation is that CDO PCTL NBINS>=window*(endboot-startboot+1)*(sizeof(double)/sizeof(int))+2
This demands for high working storage since the entire data of the bootstrapping interval need to be
hold in storage. Otherwise, a histogram is used to calculate the percentile. infile2 (infile3) contains
the daily minimum (maximum) of the bootstrapping interval. If m=m, the output variable will be
saved monthly, otherwise with yearly frequency.
Operators
etccdi tx90p Percentage of Days when Daily Maximum Temperature is Above the 90th Per-
centile
etccdi tx10p Percentage of Days when Daily Maximum Temperature is Below the 10th Percentile
etccdi tn90p Percentage of Days when Daily Minimum Temperature is Above the 90th Percentile
etccdi tn10p Percentage of Days when Daily Minimum Temperature is Below the 10th Percentile
etccdi r95p Annual Total Precipitation when Daily Precipitation Exceeds the 95th Percentile
of Wet Day Precipitation
etccdi r99p Annual Total Precipitation when Daily Precipitation Exceeds the 99th Percentile
of Wet Day Precipitation
Parameter
n INTEGER Window days, number of timesteps
Environment
CDO PCTL NBINS Sets the number of histogram bins. The default number is 101.
31
Climate indices reference manual
Example
To compute the percentage of timesteps of each month with a daily maximum temperature greater
than the 90th percentile of the daily maximum temperatures for a reference period 1960-1989 and a
5 consecutive days window use:
cdo etccdi_tx90p,5,1960,1989,m txfile -ydrunmin,5 txfile -ydrunmax,5 txfile outfile
32
Bibliography
[CDI]
Climate Data Interface, from the Max Planck Institute for Meteorologie
[CDO]
Climate Data Operator, from the Max Planck Institute for Meteorologie
[ECA]
ECA indices of extremes, from the Koninklijk Nederlands Meteorologisch Instituut, KNMI)
33
Operator index
E etccdi tn90p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
eca cdd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 etccdi tr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
eca cfd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 etccdi tx10p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
eca csu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 etccdi tx90p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
eca cwd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 etccdi wsdi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
eca cwdi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
eca cwfi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
eca etr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
eca fd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
eca gsl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
eca hd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
eca hwdi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
eca hwfi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
eca id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
eca pd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
eca r10mm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
eca r20mm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
eca r75p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
eca r75ptot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
eca r90p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
eca r90ptot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
eca r95p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
eca r95ptot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
eca r99p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
eca r99ptot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
eca rr1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
eca rx1day . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
eca rx5day . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
eca sdii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
eca su . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
eca tg10p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
eca tg90p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
eca tn10p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
eca tn90p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
eca tr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
eca tx10p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
eca tx90p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
etccdi cdd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
etccdi csdi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
etccdi cwd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
etccdi fd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
etccdi id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
etccdi r1mm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
etccdi r95p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
etccdi r99p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
etccdi rx1day . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
etccdi rx5day . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
etccdi su . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
etccdi tn10p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
34