Cdo User Guide
Cdo User Guide
Contents
1. Introduction
1.1. Building from sources . . . .
1.1.1. Compilation . . . . . .
1.1.2. Installation . . . . . .
1.2. Usage . . . . . . . . . . . . .
1.2.1. Options . . . . . . . .
1.2.2. Operators . . . . . . .
1.2.3. Combining operators .
1.2.4. Operator parameter .
1.3. Grid description . . . . . . .
1.3.1. Predefined grids . . .
1.3.2. Grids from data files .
1.3.3. SCRIP grids . . . . .
1.3.4. PINGO grids . . . . .
1.3.5. CDO grids . . . . . .
1.4. Z-axis description . . . . . . .
1.5. Time axis . . . . . . . . . . .
1.5.1. Absolute time . . . . .
1.5.2. Relative time . . . . .
1.5.3. Conversion of the time
1.6. Parameter table . . . . . . . .
1.7. Missing values . . . . . . . . .
1.7.1. Mean and average . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2. Reference manual
2.1. Information . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1. INFO - Information and simple statistics . . . . .
2.1.2. SINFO - Short information . . . . . . . . . . . . .
2.1.3. DIFF - Compare two datasets field by field . . . .
2.1.4. NINFO - Print the number of parameters, levels or
2.1.5. SHOWINFO - Show variables, levels or times . . .
2.1.6. FILEDES - Dataset description . . . . . . . . . . .
2.2. File operations . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1. COPY - Copy datasets . . . . . . . . . . . . . . . .
2.2.2. REPLACE - Replace variables . . . . . . . . . . .
2.2.3. MERGE - Merge datasets . . . . . . . . . . . . . .
2.2.4. SPLIT - Split a dataset . . . . . . . . . . . . . . .
2.2.5. SPLITTIME - Split time steps of a dataset . . . .
2.2.6. SPLITSEL - Split selected time steps . . . . . . .
2.3. Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.1. SELECT - Select fields . . . . . . . . . . . . . . . .
2.3.2. SELTIME - Select time steps . . . . . . . . . . . .
2.3.3. SELBOX - Select a box of a field . . . . . . . . . .
2.4. Conditional selection . . . . . . . . . . . . . . . . . . . . .
2.4.1. COND - Conditional select one field . . . . . . . .
2.4.2. COND2 - Conditional select two fields . . . . . . .
2.4.3. CONDC - Conditional select a constant . . . . . .
2.5. Comparison . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.1. COMP - Comparison of two fields . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6
6
7
7
8
8
8
8
9
9
10
10
10
11
11
12
13
13
14
14
14
14
15
. . . .
. . . .
. . . .
. . . .
times
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
16
17
18
19
20
21
22
23
24
25
25
26
27
28
29
30
31
33
35
36
37
37
38
39
40
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Contents
2.5.2. COMPC - Comparison of a field with a constant . . . . . .
2.6. Modification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6.1. SET - Set field info . . . . . . . . . . . . . . . . . . . . . . .
2.6.2. SETTIME - Set time . . . . . . . . . . . . . . . . . . . . . .
2.6.3. CHANGE - Change field header . . . . . . . . . . . . . . .
2.6.4. SETGRID - Set grid type . . . . . . . . . . . . . . . . . . .
2.6.5. SETZAXIS - Set z-axis type . . . . . . . . . . . . . . . . . .
2.6.6. SETGATT - Set global attribute . . . . . . . . . . . . . . .
2.6.7. INVERT - Invert latitudes . . . . . . . . . . . . . . . . . . .
2.6.8. INVERTLEV - Invert levels . . . . . . . . . . . . . . . . . .
2.6.9. MASKREGION - Mask regions . . . . . . . . . . . . . . . .
2.6.10. MASKBOX - Mask a box . . . . . . . . . . . . . . . . . . .
2.6.11. SETBOX - Set a box to constant . . . . . . . . . . . . . . .
2.6.12. ENLARGE - Enlarge fields . . . . . . . . . . . . . . . . . .
2.6.13. SETMISS - Set missing value . . . . . . . . . . . . . . . . .
2.7. Arithmetic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.7.1. EXPR - Evaluate expressions . . . . . . . . . . . . . . . . .
2.7.2. MATH - Mathematical functions . . . . . . . . . . . . . . .
2.7.3. ARITHC - Arithmetic with a constant . . . . . . . . . . . .
2.7.4. ARITH - Arithmetic on two datasets . . . . . . . . . . . . .
2.7.5. MONARITH - Monthly arithmetic . . . . . . . . . . . . . .
2.7.6. YMONARITH - Multi-year monthly arithmetic . . . . . . .
2.7.7. ARITHDAYS - Arithmetic with days . . . . . . . . . . . .
2.8. Statistical values . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.8.1. ENSSTAT - Statistical values over an ensemble . . . . . . .
2.8.2. FLDSTAT - Statistical values over a field . . . . . . . . . .
2.8.3. ZONSTAT - Zonal statistical values . . . . . . . . . . . . .
2.8.4. MERSTAT - Meridional statistical values . . . . . . . . . .
2.8.5. VERTSTAT - Vertical statistical values . . . . . . . . . . .
2.8.6. TIMSELSTAT - Time range statistical values . . . . . . . .
2.8.7. TIMSELPCTL - Time range percentile values . . . . . . . .
2.8.8. RUNSTAT - Running statistical values . . . . . . . . . . . .
2.8.9. RUNPCTL - Running percentile values . . . . . . . . . . .
2.8.10. TIMSTAT - Statistical values over all time steps . . . . . .
2.8.11. TIMPCTL - Percentile values over all time steps . . . . . .
2.8.12. HOURSTAT - Hourly statistical values . . . . . . . . . . .
2.8.13. HOURPCTL - Hourly percentile values . . . . . . . . . . .
2.8.14. DAYSTAT - Daily statistical values . . . . . . . . . . . . .
2.8.15. DAYPCTL - Daily percentile values . . . . . . . . . . . . .
2.8.16. MONSTAT - Monthly statistical values . . . . . . . . . . .
2.8.17. MONPCTL - Monthly percentile values . . . . . . . . . . .
2.8.18. YEARSTAT - Yearly statistical values . . . . . . . . . . . .
2.8.19. YEARPCTL - Yearly percentile values . . . . . . . . . . . .
2.8.20. SEASSTAT - Seasonal statistical values . . . . . . . . . . .
2.8.21. SEASPCTL - Seasonal percentile values . . . . . . . . . . .
2.8.22. YHOURSTAT - Multi-year hourly statistical values . . . .
2.8.23. YDAYSTAT - Multi-year daily statistical values . . . . . .
2.8.24. YDAYPCTL - Multi-year daily percentile values . . . . . .
2.8.25. YMONSTAT - Multi-year monthly statistical values . . . .
2.8.26. YMONPCTL - Multi-year monthly percentile values . . . .
2.8.27. YSEASSTAT - Multi-year seasonal statistical values . . . .
2.8.28. YSEASPCTL - Multi-year seasonal percentile values . . . .
2.8.29. YDRUNSTAT - Multi-year daily running statistical values .
2.8.30. YDRUNPCTL - Multi-year daily running percentile values
2.9. Regression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9.1. REGRES - Regression . . . . . . . . . . . . . . . . . . . . .
2.9.2. DETREND - Detrend time series . . . . . . . . . . . . . . .
2.9.3. TREND - Trend of time series . . . . . . . . . . . . . . . .
Contents
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
41
42
43
44
46
47
47
48
49
49
50
51
52
53
54
56
57
58
59
60
61
62
63
64
68
70
72
74
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
102
103
104
104
105
Contents
2.9.4. SUBTREND - Subtract a trend . . . . . . . . . . . . . . . . . . . . . . . . .
2.10. Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.10.1. REMAPGRID - SCRIP grid interpolation . . . . . . . . . . . . . . . . . . .
2.10.2. GENWEIGHTS - Generate SCRIP grid interpolation weights . . . . . . . .
2.10.3. REMAP - SCRIP grid remapping . . . . . . . . . . . . . . . . . . . . . . .
2.10.4. INTGRID - Grid interpolation . . . . . . . . . . . . . . . . . . . . . . . . .
2.10.5. REMAPETA - Remap vertical hybrid level . . . . . . . . . . . . . . . . . .
2.10.6. INTVERT - Vertical interpolation . . . . . . . . . . . . . . . . . . . . . . .
2.10.7. INTLEVEL - Linear level interpolation . . . . . . . . . . . . . . . . . . . .
2.10.8. INTTIME - Time interpolation . . . . . . . . . . . . . . . . . . . . . . . . .
2.10.9. INTYEAR - Year interpolation . . . . . . . . . . . . . . . . . . . . . . . . .
2.11. Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.11.1. SPECTRAL - Spectral transformation . . . . . . . . . . . . . . . . . . . . .
2.11.2. WIND - Wind transformation . . . . . . . . . . . . . . . . . . . . . . . . . .
2.12. Formatted I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.12.1. INPUT - Formatted input . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.12.2. OUTPUT - Formatted output . . . . . . . . . . . . . . . . . . . . . . . . .
2.13. Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.13.1. GRIDCELL - Grid cell quantities . . . . . . . . . . . . . . . . . . . . . . . .
2.13.2. GRADSDES - GrADS data descriptor file . . . . . . . . . . . . . . . . . . .
2.13.3. SMOOTH9 - 9 point smoothing . . . . . . . . . . . . . . . . . . . . . . . . .
2.13.4. SETRANGE - Set range to constant . . . . . . . . . . . . . . . . . . . . . .
2.13.5. TIMSORT - Timsort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.13.6. VARGEN - Generate a field . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.13.7. ROTUV - Rotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.13.8. MASTRFU - Mass stream function . . . . . . . . . . . . . . . . . . . . . . .
2.13.9. HISTOGRAM - Histogram . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.13.10.WCT - Windchill temperature . . . . . . . . . . . . . . . . . . . . . . . . .
2.13.11.FDNS - Frost days where no snow index per time period . . . . . . . . . . .
2.13.12.STRWIN - Strong wind days index per time period . . . . . . . . . . . . . .
2.13.13.STRBRE - Strong breeze days index per time period . . . . . . . . . . . . .
2.13.14.STRGAL - Strong gale days index per time period . . . . . . . . . . . . . .
2.13.15.HURR - Hurricane days index per time period . . . . . . . . . . . . . . . .
2.13.16.IMPORTAMSR - Import AMSR binary files . . . . . . . . . . . . . . . . .
2.13.17.IMPORTCMSAF - Import CM-SAF HDF5 files . . . . . . . . . . . . . . .
2.13.18.IMPORTBINARY - Import binary data sets . . . . . . . . . . . . . . . . .
2.14. Climate indices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.14.1. ECACDD - Consecutive dry days index per time period . . . . . . . . . . .
2.14.2. ECACFD - Consecutive frost days index per time period . . . . . . . . . .
2.14.3. ECACSU - Consecutive summer days index per time period . . . . . . . . .
2.14.4. ECACWD - Consecutive wet days index per time period . . . . . . . . . . .
2.14.5. ECACWDI - Cold wave duration index wrt mean of reference period . . . .
2.14.6. ECACWFI - Cold-spell days index wrt 10th percentile of reference period .
2.14.7. ECAETR - Intra-period extreme temperature range . . . . . . . . . . . . .
2.14.8. ECAFD - Frost days index per time period . . . . . . . . . . . . . . . . . .
2.14.9. ECAGSL - Growing season length index . . . . . . . . . . . . . . . . . . . .
2.14.10.ECAHD - Heating degree days per time period . . . . . . . . . . . . . . . .
2.14.11.ECAHWDI - Heat wave duration index wrt mean of reference period . . . .
2.14.12.ECAHWFI - Warm spell days index wrt 90th percentile of reference period
2.14.13.ECAID - Ice days index per time period . . . . . . . . . . . . . . . . . . . .
2.14.14.ECAR10MM - Heavy precipitation days index per time period . . . . . . .
2.14.15.ECAR20MM - Very heavy precipitation days index per time period . . . .
2.14.16.ECAR75P - Moderate wet days wrt 75th percentile of reference period . . .
2.14.17.ECAR75PTOT - Precipitation percent due to R75p days . . . . . . . . . .
2.14.18.ECAR90P - Wet days wrt 90th percentile of reference period . . . . . . . .
2.14.19.ECAR90PTOT - Precipitation percent due to R90p days . . . . . . . . . .
2.14.20.ECAR95P - Very wet days wrt 95th percentile of reference period . . . . .
2.14.21.ECAR95PTOT - Precipitation percent due to R95p days . . . . . . . . . .
Contents
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
105
106
107
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
126
127
127
128
128
129
130
130
130
131
131
131
132
133
134
135
137
137
138
138
139
139
140
140
141
142
142
143
143
144
144
145
145
146
146
147
147
Contents
2.14.22.ECAR99P - Extremely wet days wrt 99th percentile of reference period . . .
2.14.23.ECAR99PTOT - Precipitation percent due to R99p days . . . . . . . . . . .
2.14.24.ECARR1 - Wet days index per time period . . . . . . . . . . . . . . . . . . .
2.14.25.ECARX1DAY - Highest one day precipitation amount per time period . . . .
2.14.26.ECARX5DAY - Highest five-day precipitation amount per time period . . . .
2.14.27.ECASDII - Simple daily intensity index per time period . . . . . . . . . . . .
2.14.28.ECASU - Summer days index per time period . . . . . . . . . . . . . . . . . .
2.14.29.ECATG10P - Cold days percent wrt 10th percentile of reference period . . .
2.14.30.ECATG90P - Warm days percent wrt 90th percentile of reference period . .
2.14.31.ECATN10P - Cold nights percent wrt 10th percentile of reference period . .
2.14.32.ECATN90P - Warm nights percent wrt 90th percentile of reference period . .
2.14.33.ECATR - Tropical nights index per time period . . . . . . . . . . . . . . . . .
2.14.34.ECATX10P - Very cold days percent wrt 10th percentile of reference period .
2.14.35.ECATX90P - Very warm days percent wrt 90th percentile of reference period
A. Hints for PINGO user
Contents
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
148
148
149
149
150
150
150
152
152
153
153
154
154
155
157
160
1. Introduction
The Climate Data Operators (CDO) software are a collection of many operators for standard processing
of climate and forecast model output. The operators include simple statistical and arithmetic functions,
data selection and subsampling tools, and spatial interpolation. CDO was developed to have the same set
of processing functions for GRIB and netCDF datasets in one package.
The Climate Data Interface (CDI) is used for the fast and file format independent access to GRIB and
netCDF datasets. The local data formats SERVICE, EXTRA and IEG are also supported.
There are some limitations for GRIB and netCDF datasets. A GRIB dataset has to be consistent, similar
to netCDF. That means all time steps need to have the same variables, and within a time step each
variable may occur only once. NetCDF datasets are supported only with 2-dimensional, 3-dimensional and
4-dimensional variables and the attributes should follow the GDT, COARDS or CF Conventions.
The user interface and some operators are similar to the PINGO package. There are also some operators
with the same name as in PINGO but with a different meaning. Appendix A gives an overview of those
operators.
The main CDO features are:
More than 400 operators available
Modular design and easily extendable with new operators
Very simple UNIX command line interface
A dataset can be processed by several operators, without storing the interim results in files
Most operators handle datasets with missing values
Fast processing of large datasets
Support of many different grid types
Tested on many UNIX/Linux systems, Cygwin, and MacOS-X
Introduction
1.1.1. Compilation
Compilation is done by performing the following steps:
1. Unpack the archive, if you havent done that yet:
gunzip cdo-$VERSION.tar.gz
tar xf cdo-$VERSION.tar
cd cdo-$VERSION
1.1.2. Installation
After the compilation of the source code do a make install, possibly as root if the destination permissions
require that.
make install
The binary is installed into the directory <prefix>/bin. <prefix> defaults to /usr/local but can be
changed with the --prefix option of the configure script.
Alternatively, you can also copy the binary from the src directory manually to some bin directory in your
search path.
Usage
Introduction
1.2. Usage
This section descibes how to use CDO. The syntax is:
cdo
1.2.1. Options
All options have to be placed before the first operator. The following options are available for all operators:
-a
-b <nbits>
-f <format>
For srv, ext and ieg format the letter L or B can be added to set the byteorder
to Little or Big endian.
Set the output file format. The valid file formats are:
File format
GRIB version 1
netCDF
netCDF version 2 (64-bit)
netCDF-4 classic (HDF5)
SERVICE
EXTRA
IEG
-g <grid>
-h
-m <missval>
-Q
-R
-r
-s
-t <partab>
-V
-v
-z szip
zip
<nbits>
1 - 32
32/64
<format>
grb
nc
nc2
nc4
srv
ext
ieg
Define the default grid description by name or from file (see chapter 1.3 on page 9).
Available grid names are: t<RES>grid, r<NX>x<NY>, gme<NI>
Help information for the operators.
Set the default missing value (default: -9e+33).
Sort netCDF variable names.
Convert GRIB data from reduced to regular grid.
Convert from an absolute to a relative time axis.
Silent mode.
Set the default parameter table name or file (see chapter 1.6 on page 14).
Predefined tables are: echam4 echam5 mpiom1
Print the version number.
Print extra details for some operators.
Compress GRIB records with szip.
Deflate compression of netCDF4 variables.
1.2.2. Operators
There are more than 400 operators available. A detailed description of all operators can be found in the
Reference Manual section.
Introduction
Grid description
Use
cdo sub -dayavg ifile2 -timavg ifile1 ofile
instead of
cdo timavg ifile1 tmp1
cdo dayavg ifile2 tmp2
cdo sub tmp2 tmp1 ofile
rm tmp1 tmp2
Combining of operators is implemented over POSIX Threads (pthread). Therefore this CDO feature is not
available on operating systems without POSIX Threads support.
Unquoted characters without blanks and tabs. The following command select the variables with the
names pressure and tsurf:
cdo selvar,pressure,tsurf ifile ofile
FLOAT
Floating point number in any representation. The following command sets the range between 0 and
273.15 of all fields to missing value:
cdo setrtomiss,0,273.15 ifile ofile
INTEGER
A list of integers can be specified by first/last[/inc]. To select the days 5, 6, 7, 8 and 9 use:
cdo selday,5/9 ifile ofile
This is the same as:
cdo selday,5,6,7,8,9 ifile ofile
As now described, there are several possibilities to define a horizontal grid. Predefined grids are available
for global regular, gaussian or icosahedral-hexagonal GME grids.
Grid description
Introduction
10
;
lat ;
;
lon ;
Introduction
Grid description
int grid imask ( grid ysize , g r i d x s i z e ) ;
grid imask : units = u n i t l e s s ;
grid imask : coordinates = grid center lon g r i d c e n t e r l a t ;
float grid corner lat ( grid ysize , grid xsize , grid corners ) ;
g r i d c o r n e r l a t : units = degrees ;
float grid corner lon ( grid ysize , grid xsize , grid corners ) ;
grid corner lon : units = degrees ;
// g l o b a l a t t r i b u t e s :
: t i t l e = grob3s ;
}
Datatype
STRING
INTEGER
INTEGER
INTEGER
FLOAT ARRAY
FLOAT ARRAY
FLOAT
FLOAT
INTEGER
FLOAT ARRAY
FLOAT ARRAY
FLOAT, FLOAT
FLOAT, FLOAT
Description
type of the grid (gaussian, lonlat, curvilinear, cell)
size of the grid
size in x direction (number of longitudes)
size in y direction (number of latitudes)
x values of the grid
y values of the grid
x value of the north pole (rotated grid)
y value of the north pole (rotated grid)
number of the vertices for all grid cells
x bounds of each gridbox
y bounds of each gridbox
macros to define xvals with a constant increment
macros to define yvals with a constant increment
Which keywords are necessary depends on the gridtype. The following table gives an overview of the
default values or the size with respect to the different grid types.
11
Z-axis description
Introduction
gridtype
lonlat
gaussian
curvilinear
cell
gridsize
xsize
ysize
xvals
yvals
xnpole
ynpole
nvertex
xbounds
ybounds
xsize*ysize
nlon
nlat
xsize
ysize
0
90
2
2*xsize
2*ysize
xsize*ysize
nlon
nlat
xsize
ysize
xsize*ysize
nlon
nlat
gridsize
gridsize
ncell
gridsize
gridsize
gridsize
gridsize
2
2*xsize
2*ysize
4
4*gridsize
4*gridsize
nv
nv*gridsize
nv*gridsize
The keywords nvertex, xbounds and ybounds are optional if area weights are not needed.
CDO grid description example of a T21 gaussian grid:
gridtype
xsize
ysize
xfirst
xinc
yvals
=
=
=
=
=
=
gaussian
64
32
0
5.625
85.76
80.27
74.75
69.21
63.68
58.14
52.61
47.07
41.53
36.00
30.46
24.92
19.38
13.84
8.31
2.77
2.77 8.31 13.84 19.38 24.92 30.46 36.00 41.53
47.07 52.61 58.14 63.68 69.21 74.75 80.27 85.76
CDO grid description example of a global regular grid with 60x30 points:
gridtype
xsize
ysize
xfirst
xinc
yfirst
yinc
= lonlat
=
60
=
30
= 177
=
6
= 87
=
6
For a lon/lat grid with a rotated pole, the north pole must be defined. As far as you define the keywords
xnpole/ynpole all coordinate values are for the rotated system.
CDO grid description example of a regional rotated lon/lat grid:
gridtype
xsize
ysize
xfirst
xinc
yfirst
yinc
xnpole
ynpole
=
=
=
=
=
=
=
=
=
lonlat
81
91
19.5
0.5
25.0
0.5
170
32.5
Example CDO descriptions of a curvilinear and an unstructured grid can be found in Appendix B.
12
Introduction
Keyword
zaxistype
size
levels
lbounds
ubounds
vctsize
vct
Time axis
Datatype
STRING
INTEGER
FLOAT ARRAY
FLOAT ARRAY
FLOAT ARRAY
INTEGER
FLOAT ARRAY
Description
type of the z-axis
number of levels
values of the levels
lower level bounds
upper level bounds
number of vertical coordinate parameters
vertical coordinate table
The keywords lbounds and ubounds are optional. vctsize and vct are only necessary to define hybrid
model levels.
Available z-axis types:
Z-axis type
surface
pressure
hybrid
height
depth below sea
depth below land
isentropic
Description
Surface
Pressure level
Hybrid model level
Height above ground
Depth below sea level
Depth below land surface
Isentropic (theta) level
Units
pascal
meter
meter
centimeter
kelvin
Z-axis description example for pressure levels 100, 200, 500, 850 and 1000 hPa:
zaxistype = pressure
size
= 5
levels
= 10000 20000 50000 85000 100000
=
=
=
=
=
hybrid
19
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
40
0 2000 4000 6 0 4 6 . 1 0 9 3 8 8 2 6 7 . 9 2 5 7 8 1 0 6 0 9 . 5 1 1 7 1 2 8 5 1 . 1 0 1 6 1 4 6 9 8 . 5
15861.125 16116.2383 15356.9258 13621.4609 11101.5625 8127.14453
5125.14062 2549.96875 783.195068 0 0 0
0 0 0 0.000338993268 0.00335718691 0.0130700432 0.0340771675
0.0706498027 0.12591666 0.201195419 0.295519829 0.405408859
0.524931908 0.646107674 0.759697914 0.856437683 0.928747177
0.972985268 0.992281914 1
13
Parameter table
Introduction
aps
sn
ahfl
slm
albedo
siced
s u r f a c e p r e s s u r e [ Pa ]
snow depth [m]
l a t e n t h e a t f l u x [W/m* * 2 ]
l a n d s e a mask
s u r f a c e albedo
i c e depth [m]
14
Introduction
Missing values
addition
miss
a
miss
a+b
miss
miss
miss
subtraction
miss
a
miss
ab
miss
miss
miss
multiplication
miss
a
0
miss
ab
0
miss
0
0
0
miss
0
miss
division
miss
a
0
miss
a/b
0
miss
miss
miss
miss
miss
miss
miss
maximum
miss
a
miss
max(a, b)
b
a
miss
minimum
miss
a
miss
min(a, b)
b
a
miss
sum
miss
a
miss
a+b
b
a
miss
The handling of missing values by the operations minimum and maximum may be surprising, but the
definition given here is more consistent with that expected in practice. Mathematical functions (e.g. log,
sqrt, etc.) return the missing value if an argument is the missing value or an argument is out of range.
All statistical functions ignore missing values, treading them as not belonging to the sample, with the
side-effect of a reduced sample size.
15
2. Reference manual
This section gives a description of all operators. Related operators are grouped to modules. For easier
description all single input files are named ifile or ifile1, ifile2, etc., and an unlimited number of
input files are named ifiles. All output files are named ofile or ofile1, ofile2, etc. Further the
following notion is introduced:
i(t)
Timestep t of ifile
i(t, x)
o(t)
Timestep t of ofile
o(t, x)
16
Reference manual
Information
2.1. Information
This section contains modules to print information about datasets. All operators print there results to
standard output.
Here is a short overview of all operators in this section:
info
infov
map
sinfo
sinfov
diff
diffv
npar
nlevel
nyear
nmon
ndate
ntime
Number
Number
Number
Number
Number
Number
showformat
showcode
showname
showstdname
showlevel
showltype
showyear
showmon
showdate
showtime
Show
Show
Show
Show
Show
Show
Show
Show
Show
Show
pardes
griddes
zaxisdes
vct
Parameter description
Grid description
Z-axis description
Vertical coordinate table
of
of
of
of
of
of
parameters
levels
years
months
dates
time steps
file format
code numbers
variable names
standard names
levels
GRIB level types
years
months
dates
time steps
17
Information
Reference manual
Description
This module writes information about the structure and contents of all input datasets to standard
output. The information displayed depends on the chosen operator.
Operators
info
infov
map
Example
To print information and simple statistics for each field of a dataset use:
cdo i n f o
ifile
This is an example result of a dataset with one 2D variable over 12 time steps:
1
1
2
3
4
5
6
7
8
9
10
11
12
18
:
:
:
:
:
:
:
:
:
:
:
:
:
Date
19870131
19870228
19870331
19870430
19870531
19870630
19870731
19870831
19870930
19871031
19871130
19871231
Time
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
Code L e v e l
139
0
139
0
139
0
139
0
139
0
139
0
139
0
139
0
139
0
139
0
139
0
139
0
Size
2048
2048
2048
2048
2048
2048
2048
2048
2048
2048
2048
2048
Miss
1361
1361
1361
1361
1361
1361
1361
1361
1361
1361
1361
1361
:
:
:
:
:
:
:
:
:
:
:
:
:
Minimum
232.77
233.64
225.31
215.68
215.78
212.89
209.52
210.48
210.48
219.46
230.98
241.25
Mean
266.65
267.11
267.52
268.65
271.53
272.80
274.29
274.41
272.37
270.53
269.85
269.94
Maximum
305.31
307.15
307.67
310.47
312.49
314.18
316.34
315.83
312.86
309.51
308.61
309.27
Reference manual
Information
Description
This module writes information about the structure of all input datasets to standard output. The
information displayed depends on the chosen operator.
Operators
sinfo
Section 2 and 3 gives a short overview of all horizontal and vertical grids. And the last
section contains short information of the time axis.
sinfov
Example
To print short information of a dataset use:
cdo s i n f o
ifile
This is the result of an ECHAM5 dataset with 3 variables over 12 time steps:
1 : I n s t i t u t S o u r c e Table Code
Time
Typ Grid S i z e Num L e v e l s Num
1 : MPIMET
ECHAM5. 3 128 129 c o n s t a n t F32
2048
1
1
1
2 : MPIMET
ECHAM5. 3 128 130 v a r i a b l e F32
2048
1
4
2
3 : MPIMET
ECHAM5. 3 128 139 v a r i a b l e F32
2048
1
1
1
Horizontal grids :
1 : gaussian
> size
: dim = 2048 n l o n = 64 n l a t = 32
longitude : f i r s t = 0 l a s t = 354.375 inc = 5.625
latitude
: f i r s t = 85.7605871
l a s t = 85.7605871
Vertical grids :
1 : surface
: 0
2 : pressure
Pa : 92500 85000 50000 20000
Time a x i s : 12 s t e p s
YYYYMMDD hh :mm: s s YYYYMMDD hh :mm: s s YYYYMMDD hh :mm: s s YYYYMMDD hh :mm: s s
19870131 1 2 : 0 0 : 0 0 19870228 1 2 : 0 0 : 0 0 19870331 1 2 : 0 0 : 0 0 19870430 1 2 : 0 0 : 0 0
19870531 1 2 : 0 0 : 0 0 19870630 1 2 : 0 0 : 0 0 19870731 1 2 : 0 0 : 0 0 19870831 1 2 : 0 0 : 0 0
19870930 1 2 : 0 0 : 0 0 19871031 1 2 : 0 0 : 0 0 19871130 1 2 : 0 0 : 0 0 19871231 1 2 : 0 0 : 0 0
19
Information
Reference manual
Description
Compares the contents of two datasets field by field. The input datasets need to have the same
structure and its fields need to have the same header information and dimensions.
Operators
diff
Example
To print the difference for each field of two datasets use:
cdo d i f f
ifile1
ifile2
This is an example result of two datasets with one 2D variable over 12 time steps:
1
2
3
4
5
6
7
8
9
10
11
12
20
:
:
:
:
:
:
:
:
:
:
:
:
Date
19870131
19870228
19870331
19870430
19870531
19870630
19870731
19870831
19870930
19871031
19871130
19871231
Time
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
12:00:00
Code L e v e l
139
0
139
0
139
0
139
0
139
0
139
0
139
0
139
0
139
0
139
0
139
0
139
0
Size
2048
2048
2048
2048
2048
2048
2048
2048
2048
2048
2048
2048
Miss
1361
1361
1361
1361
1361
1361
1361
1361
1361
1361
1361
1361
:
:
:
:
:
:
:
:
:
:
:
:
:
S
F
F
F
F
F
F
F
F
F
F
F
F
Z Max Absdiff M a x R e l d i f f
F 0 . 0 0 0 1 0 6 8 1 4 . 1 6 6 0 e 07
F 6 . 1 0 3 5 e 05 2 . 3 7 4 2 e 07
F 7 . 6 2 9 4 e 05 3 . 3 7 8 4 e 07
F 7 . 6 2 9 4 e 05 3 . 5 1 1 7 e 07
F 0 . 0 0 0 1 0 6 8 1 4 . 0 3 0 7 e 07
F 0 . 0 0 0 1 0 6 8 1 4 . 2 6 7 0 e 07
F 9 . 1 5 5 3 e 05 3 . 5 6 3 4 e 07
F 7 . 6 2 9 4 e 05 2 . 8 8 4 9 e 07
F 7 . 6 2 9 4 e 05 3 . 6 1 6 8 e 07
F 9 . 1 5 5 3 e 05 3 . 5 0 0 1 e 07
F 6 . 1 0 3 5 e 05 2 . 3 8 3 9 e 07
F 9 . 3 5 5 3 e 05 3 . 7 6 2 4 e 07
Reference manual
Information
Description
This module prints the number of variables, levels or times of the input dataset.
Operators
npar
Number of parameters
Prints the number of parameters (variables).
nlevel
Number of levels
Prints the number of levels for each variable.
nyear
Number of years
Prints the number of different years.
nmon
Number of months
Prints the number of different combinations of years and months.
ndate
Number of dates
Prints the number of different dates.
ntime
Example
To print the number of parameters (variables) in a dataset use:
cdo npar i f i l e
21
Information
Reference manual
Description
This module prints the format, variables, levels or times of the input dataset.
Operators
showformat
showcode
showname
showstdname
showlevel
Show levels
Prints all levels for each variable.
showltype
showyear
Show years
Prints all years.
showmon
Show months
Prints all months.
showdate
Show dates
Prints all dates.
showtime
Example
To print the code number of all variables in a dataset use:
cdo showcode i f i l e
22
Reference manual
Information
Description
This module prints the description of the parameters, the grids, the z-axis or the vertical coordinate
table.
Operators
pardes
Parameter description
Prints a table with a description of all variables. For each variable the operator prints
one line listing the code, name, description and units.
griddes
Grid description
Prints the description of all grids.
zaxisdes
Z-axis description
Prints the description of all z-axes.
vct
Example
Assume all variables of the dataset are on a T21 gausssian grid. To print the grid description of this
dataset use:
cdo g r i d d e s i f i l e
Result:
gridtype
gridsize
xname
xlongname
xunits
yname
ylongname
yunits
xsize
ysize
xfirst
xinc
yvals
:
:
:
:
:
:
:
:
:
:
:
:
:
gaussian
2048
lon
longitude
degrees east
lat
latitude
degrees north
64
32
0
5.625
85.76058 80.26877 74.74454 69.21297 63.67863 58.1429 52.6065
47.06964 41.53246 35.99507 30.4575 24.91992 19.38223 13.84448
8 . 3 0 6 7 0 2 2 . 7 6 8 9 0 3 2.768903 8.306702 13.84448 19.38223
24.91992 30.4575 35.99507 41.53246 47.06964 52.6065
58.1429 63.67863 69.21297 74.74454 80.26877 85.76058
23
File operations
Reference manual
24
copy
cat
Copy datasets
Concatenate datasets
replace
Replace variables
merge
mergetime
splitcode
splitname
splitlevel
splitgrid
splitzaxis
Split
Split
Split
Split
Split
code numbers
variable names
levels
grids
z-axes
splithour
splitday
splitmon
splitseas
splityear
Split
Split
Split
Split
Split
hours
days
months
seasons
years
splitsel
Reference manual
File operations
Description
This module contains operators to copy or concatenate datasets. Each input dataset is required to
have the same variables with complete time steps.
Operators
copy
Copy datasets
Copies all input datasets to ofile.
cat
Concatenate datasets
Concatenates all input datasets and appends the result to the end of ofile. If ofile does
not exist it will be created.
Example
To change the format of a dataset to netCDF use:
cdo f nc copy i f i l e
o f i l e . nc
Add the option -r to create a relative time axis, as is required for proper recognition by GrADS or
Ferret:
cdo r f nc copy i f i l e
o f i l e . nc
To concatenate 3 datasets with different time steps of the same variables use:
cdo copy i f i l e 1
ifile2
ifile3
ofile
If the output dataset already exists and you wish to extend it with more time steps use:
cdo c a t i f i l e 1
ifile2
ifile3
ofile
Description
Replaces all common variables of ifile2 and ifile1 with those of ifile1 and write the result to
ofile. Both input datasets need to have the same number of time steps.
Example
Assume the first input dataset ifile1 has three variables with the names geosp, t and tslm1 and the
second input dataset ifile2 has only the variable tslm1. To replace the variable tslm1 in ifile1
with tslm1 from ifile2 use:
cdo r e p l a c e i f i l e 1
ifile2
ofile
25
File operations
Reference manual
Description
This module reads datasets from several input files, merges them and writes the resulting dataset to
ofile.
Operators
merge
mergetime
Example
Assume three datasets with the same number of time steps and different variables in each dataset.
To merge these datasets to a new dataset use:
cdo merge i f i l e 1
ifile2
ifile3
ofile
Assume you split a 6 hourly dataset with splithour. This produces four datasets, one for each hour.
The following command merges them together:
cdo mergetime i f i l e 1
26
ifile2
ifile3
ifile4
ofile
Reference manual
File operations
Description
This module splits a dataset to several files with names formed from the field header information and
the string oprefix.
Operators
splitcode
splitname
splitlevel
Split levels
Splits a dataset into pieces, one for each different level. Appends six digits with the
level to oprefix to form the output file names.
splitgrid
Split grids
Splits a dataset into pieces, one for each different grid. Appends two digits with the
grid number to oprefix to form the output file names.
splitzaxis
Split z-axes
Splits a dataset into pieces, one for each different z-axis. Appends two digits with the
z-axis number to oprefix to form the output file names.
Example
Assume an input GRIB dataset with three variables, e.g. code number 129, 130 and 139. To split
this dataset into three pieces, one for each code number use:
cdo s p l i t c o d e
i f i l e code
27
File operations
Reference manual
Description
This module splits time steps of a dataset to several files with names formed from the field header
information and the string oprefix.
Operators
splithour
Split hours
Splits a file into pieces, one for each different hour. Appends two digits with the hour
to oprefix to form the output file names.
splitday
Split days
Splits a file into pieces, one for each different day. Appends two digits with the day to
oprefix to form the output file names.
splitmon
Split months
Splits a file into pieces, one for each different month. Appends two digits with the
month to oprefix to form the output file names.
splitseas
Split seasons
Splits a file into pieces, one for each different season. Appends three characters with
the season to oprefix to form the output file names.
splityear
Split years
Splits a file into pieces, one for each different year. Appends four digits with the year
to oprefix to form the output file names.
Example
Assume the input GRIB dataset has time steps from January to December. To split each month with
all variables into one separate file use:
cdo s p l i t m o n i f i l e mon
28
mon02 . grb
mon08 . grb
mon03 . grb
mon09 . grb
mon04 . grb
mon10 . grb
mon05 . grb
mon11 . grb
mon06 . grb
mon12 . grb
Reference manual
File operations
Description
This operator splits a dataset into pieces, one for each adjacent sequence t1 , ...., tn of time steps of
the same selected time range. Appends three digits with the sequence number to oprefix to form
the output file names.
Parameter
nsets
INTEGER
noffset
INTEGER
Number of input time steps skipped before the first time step range (optional)
nskip
INTEGER
Number of input time steps skipped between time step ranges (optional)
29
Selection
Reference manual
2.3. Selection
This section contains modules to select time steps, fields or a part of a field from a dataset.
Here is a short overview of all operators in this section:
30
selcode
delcode
selname
delname
selstdname
sellevel
sellevidx
selgrid
selgridname
selzaxis
selzaxisname
selltype
seltabnum
seltimestep
seltime
selhour
selday
selmon
selyear
selseas
seldate
selsmon
Select
Select
Select
Select
Select
Select
Select
Select
Select
sellonlatbox
selindexbox
time steps
times
hours
days
months
years
seasons
dates
single month
Reference manual
Selection
Synopsis
Description
This module selects some fields from ifile and writes them to ofile. The fields selected depend on
the chosen operator and the parameters.
31
Selection
Reference manual
Operators
selcode
delcode
selname
delname
selstdname
sellevel
Select levels
Selects all fields with levels in a user given list.
sellevidx
selgrid
Select grids
Selects all fields with grids in a user given list.
selgridname
selzaxis
Select z-axes
Selects all fields with z-axes in a user given list.
selzaxisname
selltype
seltabnum
Parameter
32
codes
INTEGER
varnames
STRING
stdnames
STRING
levels
FLOAT
levidx
INTEGER
ltypes
INTEGER
grids
INTEGER
gridnames
STRING
zaxes
INTEGER
zaxisnames
STRING
tabnums
INTEGER
Reference manual
Selection
Description
This module selects user specified time steps from ifile and writes them to ofile. The time steps
selected depends on the chosen operator and the parameters.
Operators
seltimestep
seltime
Select times
Selects all time steps with a time in a user given list.
selhour
Select hours
Selects all time steps with a hour in a user given list.
selday
Select days
Selects all time steps with a day in a user given list.
selmon
Select months
Selects all time steps with a month in a user given list.
selyear
Select years
Selects all time steps with a year in a user given list.
selseas
Select seasons
Selects all time steps with a month of a season in a user given list.
seldate
Select dates
Selects all time steps with a date in a user given range.
selsmon
33
Selection
Reference manual
Parameter
34
timesteps
INTEGER
times
STRING
hours
INTEGER
days
INTEGER
months
INTEGER
years
INTEGER
seasons
STRING
date1
STRING
date2
STRING
nts1
INTEGER
nts2
INTEGER
Reference manual
Selection
Description
Selects a box of the rectangular understood field. All input fields need to have the same horizontal
grid.
Operators
sellonlatbox
selindexbox
Parameter
lon1
FLOAT
Western longitude
lon2
FLOAT
Eastern longitude
lat1
FLOAT
lat2
FLOAT
idx1
INTEGER
idx2
INTEGER
idy1
INTEGER
idy2
INTEGER
Example
To select the region with the longitudes from 120E to 90W and latitudes from 20N to 20S from all
input fields use:
cdo s e l l o n l a t b o x ,120 , 90 ,20 , 20 i f i l e
ofile
If the input dataset has fields on a T21 Gaussian grid, the same box can be selected with selindexbox
by:
cdo s e l i n d e x b o x , 2 3 , 4 8 , 1 3 , 2 0 i f i l e
ofile
35
Conditional selection
Reference manual
36
ifthen
ifnotthen
If then
If not then
ifthenelse
If then else
ifthenc
ifnotthenc
If then constant
If not then constant
Reference manual
Conditional selection
Description
This module selects field elements from ifile2 with respect to ifile1 and writes them to ofile.
The fields in ifile1 are handled as a mask. A value not equal to zero is treated as true, zero is
treated as false. The number of fields in ifile1 has either to be the same as in ifile2 or the same
as in one time step of ifile2 or only one. The fields in ofile inherit the meta data from ifile2.
Operators
ifthen
If then
o(t, x) =
ifnotthen
If not then
i2 (t, x) if i1 ([t, ]x) = 0 i1 ([t, ]x) 6= miss
o(t, x) =
miss
if i1 ([t, ]x) 6= 0 i1 ([t, ]x) = miss
Example
To select all field elements of ifile2 if the corresponding field element of ifile1 is greater than 0
use:
cdo i f t h e n i f i l e 1
ifile2
ofile
Description
This operator selects field elements from ifile2 or ifile3 with respect to ifile1 and writes them
to ofile. The fields in ifile1 are handled as a mask. A value not equal to zero is treated as true,
zero is treated as false. The number of fields in ifile1 has either to be the same as in ifile2
or the same as in one time step of ifile2 or only one. ifile2 and ifile3 need to have the same
number of fields. The fields in ofile inherit the meta data from ifile2.
miss
if i1 ([t, ]x) = miss
Example
To select all field elements of ifile2 if the corresponding field element of ifile1 is greater than 0
and from ifile3 otherwise use:
cdo i f t h e n e l s e
ifile1
ifile2
ifile3
ofile
37
Conditional selection
Reference manual
Description
This module creates fields with a constant value or missing value. The fields in ifile are handled as
a mask. A value not equal to zero is treated as true, zero is treated as false.
Operators
ifthenc
If then constant
c
if i(t, x) 6= 0 i(t, x) 6= miss
o(t, x) =
miss if i(t, x) = 0 i(t, x) = miss
ifnotthenc
If not then
constant
c
if i(t, x) = 0 i(t, x) 6= miss
o(t, x) =
miss if i(t, x) 6= 0 i(t, x) = miss
Parameter
c
FLOAT
Constant
Example
To create fields with the constant value 7 if the corresponding field element of ifile is greater than
0 use:
cdo i f t h e n c , 7
38
ifile
ofile
Reference manual
Comparison
2.5. Comparison
This section contains modules to compare datasets. The resulting field is a mask containing 1 if the
comparison is true and 0 if not.
Here is a short overview of all operators in this section:
eq
ne
le
lt
ge
gt
Equal
Not equal
Less equal
Less than
Greater equal
Greater than
eqc
nec
lec
ltc
gec
gtc
Equal constant
Not equal constant
Less equal constant
Less than constant
Greater equal constant
Greater than constant
39
Comparison
Reference manual
Description
This module compares two datasets field by field. The resulting field is a mask containing 1 if the
comparison is true and 0 if not. The number of fields in ifile1 should be the same as in ifile2.
One of the input files can contain only one time step or one field. The fields in ofile inherit the meta
data from ifile1 or ifile2. The type of comparison depends on the chosen operator.
Operators
eq
Equal
o(t, x) =
ne
le
lt
1
if i1 (t, x) = i2 (t, x) i1 (t, x), i2 (t, x) 6= miss
0
if i1 (t, x) 6= i2 (t, x) i1 (t, x), i2 (t, x) 6= miss
Not equal
o(t, x) =
1
if i1 (t, x) 6= i2 (t, x) i1 (t, x), i2 (t, x) 6= miss
0
if i1 (t, x) = i2 (t, x) i1 (t, x), i2 (t, x) 6= miss
miss if i1 (t, x) = miss
i2 (t, x) = miss
Less equal
o(t, x) =
1
if i1 (t, x) i2 (t, x) i1 (t, x), i2 (t, x) 6= miss
0
if i1 (t, x) > i2 (t, x) i1 (t, x), i2 (t, x) 6= miss
miss if i1 (t, x) = miss
i2 (t, x) = miss
Less than
o(t, x) =
1
if i1 (t, x) < i2 (t, x) i1 (t, x), i2 (t, x) 6= miss
0
if i1 (t, x) i2 (t, x) i1 (t, x), i2 (t, x) 6= miss
miss if i1 (t, x) = miss
i2 (t, x) = miss
ge
Greater equal
gt
Greater than
Example
To create a mask containing 1 if the elements of two fields are the same and 0 if the elements are
different use:
cdo eq i f i l e 1
40
ifile2
ofile
Reference manual
Comparison
Description
This module compares all fields of a dataset with a constant. The resulting field is a mask containing
1 if the comparison is true and 0 if not. The type of comparison depends on the chosen operator.
Operators
eqc
Equal constant
1
o(t, x) =
0
miss
nec
lec
ltc
gec
gtc
if i(t, x) = c
if i(t, x) 6= c
if i(t, x) = miss
Not equalconstant
if i(t, x) 6= c
1
o(t, x) =
0
if i(t, x) = c
Less equal
constant
if i(t, x) c
1
o(t, x) =
0
if i(t, x) > c
Less thanconstant
if i(t, x) < c
1
o(t, x) =
0
if i(t, x) c
Greater equal
constant
if i(t, x) c
1
o(t, x) =
0
if i(t, x) < c
Greater than
constant
if i(t, x) > c
1
o(t, x) =
0
if i(t, x) c
Parameter
c
FLOAT
Constant
Example
To create a mask containing 1 if the field element is greater than 273.15 and 0 if not use:
cdo gtc , 2 7 3 . 1 5
ifile
ofile
41
Modification
Reference manual
2.6. Modification
This section contains modules to modify the metadata, fields or part of a field in a dataset.
Here is a short overview of all operators in this section:
42
setpartab
setcode
setname
setlevel
setltype
Set
Set
Set
Set
Set
parameter table
code number
variable name
level
GRIB level type
setdate
settime
setday
setmon
setyear
settunits
settaxis
setreftime
setcalendar
shifttime
Set date
Set time of the day
Set day
Set month
Set year
Set time units
Set time axis
Set reference time
Set calendar
Shift time steps
chcode
chname
chlevel
chlevelc
chlevelv
Change
Change
Change
Change
Change
setgrid
setgridtype
Set grid
Set grid type
setzaxis
Set z-axis
setgatt
setgatts
invertlat
Invert latitudes
invertlev
Invert levels
maskregion
Mask regions
masklonlatbox
maskindexbox
setclonlatbox
setcindexbox
enlarge
Enlarge fields
setmissval
setctomiss
setmisstoc
setrtomiss
setvrange
Set
Set
Set
Set
Set
code number
variable name
level
level of one code
level of one variable
Reference manual
Modification
Description
This module sets some field information. Depending on the chosen operator the parameter table,
code number, variable name or level is set.
Operators
setpartab
setcode
setname
setlevel
Set level
Sets the first level of all variables.
setltype
Parameter
table
STRING
code
INTEGER
Code number
name
STRING
Variable name
level
FLOAT
New level
ltype
INTEGER
Example
To assign the parameter table echam5 to the input dataset use:
cdo s e t p a r t a b , echam5 i f i l e
ofile
43
Modification
Reference manual
Description
This module sets the time axis or part of the time axis. Which part of the time axis is overwritten
depends on the chosen operator.
Operators
44
setdate
Set date
Sets the date in every time step to the same given value.
settime
setday
Set day
Sets the day in every time step to the same given value.
setmon
Set month
Sets the month in every time step to the same given value.
setyear
Set year
Sets the year in every time step to the same given value.
settunits
settaxis
setreftime
setcalendar
Set calendar
Sets the calendar of a relative time axis.
shifttime
Reference manual
Modification
Parameter
day
INTEGER
month
INTEGER
year
INTEGER
units
STRING
Base units of the time axis (seconds, minutes, hours, days, months, years)
date
STRING
time
STRING
inc
STRING
0hour]
calendar
STRING
sval
STRING
Example
To set the time axis to 1987-01-16 12:00 with an increment of one month for each time step use:
cdo s e t t a x i s ,1987 01 16 ,12:00 ,1mon i f i l e
ofile
ofile
45
Modification
Reference manual
Description
This module reads fields from ifile, changes some header values and writes the results to ofile.
The kind of changes depends on the chosen operator.
Operators
chcode
chname
chlevel
Change level
Changes some user given levels to new user given values.
chlevelc
chlevelv
Parameter
code
INTEGER
Code number
oldcode,newcode,...
INTEGER
name
STRING
Variable name
oldname,newname,...
STRING
oldlev
FLOAT
Old level
newlev
FLOAT
New level
oldlev,newlev,...
FLOAT
Example
To change the code number 98 to 179 and 99 to 211 use:
cdo chcode , 9 8 , 1 7 9 , 9 9 , 2 1 1 i f i l e
46
ofile
Reference manual
Modification
Description
This module sets the grid description of all fields with the same grid size as the new grid.
Operators
setgrid
Set grid
Sets the grid description of all fields.
setgridtype
Parameter
grid
STRING
gridtype
STRING
Example
Assuming a dataset has fields with 2048 gridpoints without or with wrong grid description. To set
the grid description of all input fields to a T21 Gaussian grid (2048 gridpoints) use:
cdo s e t g r i d , t 2 1 g r i d i f i l e
ofile
Description
This operator sets the z-axis description of all variables with the same number of level as the new
z-axis.
Parameter
zaxis
STRING
47
Modification
Reference manual
Description
This module sets global text attributes of a dataset. Depending on the chosen operator the attributes
are read from a file or can be specified by a parameter.
Operators
setgatt
setgatts
Parameter
attname,attstring
STRING
attfile
STRING
Note
Besides netCDF none of the supported data formats supports global attributes.
Example
To set the global text attribute myatt to myattcontents in a netCDF file use:
cdo s e t g a t t , myatt , m y a t t c o n t e n t s i f i l e
...
// g l o b a l a t t r i b u t e s :
: myatt = m y a t tc o n t e n s ;
}
48
ofile
Reference manual
Modification
Description
This operator inverts the latitudes of all fields with a regular lon/lat grid.
Example
To invert the latitudes of a 2D field from N->S to S->N use:
cdo i n v e r t l a t
ifile
ofile
Description
This operator inverts the levels of all non hybrid 3D variables.
49
Modification
Reference manual
Description
Masks different regions of fields with a regular lon/lat grid. The elements inside a region are untouched, the elements outside are set to missing value. All input fields must have the same horizontal
grid. The user has to give ASCII formatted files with different regions. A region is defined by a
polygon. Each line of a polygon description file contains the longitude and latitude of one point.
Each polygon description file can contain one or more polygons separated by a line with the character
&.
Parameter
regions
STRING
Example
To mask the region with the longitudes from 120E to 90W and latitudes from 20N to 20S on all input
fields use:
cdo maskregion , myregion i f i l e
ofile
For this example the polygon description file myregion should contain the following four coordinates:
120 20
120 20
270 20
270 20
50
Reference manual
Modification
Description
Masks a box of the rectangular understood field. The elements inside the box are untouched, the
elements outside are set to missing value. All input fields need to have the same horizontal grid. Use
sellonlatbox or selindexbox if only the data inside the box are needed.
Operators
masklonlatbox
maskindexbox
Parameter
lon1
FLOAT
Western longitude
lon2
FLOAT
Eastern longitude
lat1
FLOAT
lat2
FLOAT
idx1
INTEGER
idx2
INTEGER
idy1
INTEGER
idy2
INTEGER
Example
To mask the region with the longitudes from 120E to 90W and latitudes from 20N to 20S on all input
fields use:
cdo mas kl onl atb ox ,120 , 90 ,20 , 20 i f i l e
ofile
If the input dataset has fields on a T21 Gaussian grid, the same box can be masked with maskindexbox
by:
cdo maskindexbox , 2 3 , 4 8 , 1 3 , 2 0 i f i l e
ofile
51
Modification
Reference manual
Description
Sets a box of the rectangular understood field to a constant value. The elements outside the box are
untouched, the elements inside are set to the given constant. All input fields need to have the same
horizontal grid.
Operators
setclonlatbox
setcindexbox
Parameter
c
FLOAT
Constant
lon1
FLOAT
Western longitude
lon2
FLOAT
Eastern longitude
lat1
FLOAT
lat2
FLOAT
idx1
INTEGER
idx2
INTEGER
idy1
INTEGER
idy2
INTEGER
Example
To set all values in the region with the longitudes from 120E to 90W and latitudes from 20N to 20S
to the constant value -1.23 use:
cdo s e t c l o n l a t b o x , 1.23 ,120 , 90 ,20 , 20 i f i l e
ofile
If the input dataset has fields on a T21 Gaussian grid, the same box can be set with setcindexbox by:
cdo s e t c i n d e x b o x , 1 . 2 3 , 2 3 , 4 8 , 1 3 , 2 0 i f i l e
52
ofile
Reference manual
Modification
Description
Enlarge all fields of ifile to a user given grid. Normally only the last field element is used for the
enlargement. If however the input and output grid are regular lon/lat grids, a zonal or meridional
enlargement is possible. Zonal enlargement takes place, if the xsize of the input field is 1 and the
ysize of both grids are the same. For meridional enlargement the ysize have to be 1 and the xsize of
both grids should have the same size.
Parameter
grid
STRING
Example
Assumed you want to add two datasets. The first dataset is on a T21 grid (2048 field elements) and
the second dataset is only a global mean (1 field element). Before you can add these two datasets the
second dataset have to be enlarged to the grid size of the first dataset:
cdo e n l a r g e , t 2 1 g r i d i f i l e 2 t m p f i l e
cdo add i f i l e 1 t m p f i l e o f i l e
ofile
53
Modification
Reference manual
Description
This module sets part of a field to missing value or missing values to a constant value. Which part of
the field is set depends on the chosen operator.
Operators
setmissval
setctomiss
Set constant
to missing value
miss if i(t, x) = c
o(t, x) =
i(t, x) if i(t, x) 6= c
setmisstoc
Set missing
value to constant
c
if i(t, x) = miss
o(t, x) =
i(t, x) if i(t, x) 6= miss
setrtomiss
setvrange
Set valid
range
miss
o(t, x) =
i(t, x)
Parameter
54
newmiss
FLOAT
FLOAT
Constant
rmin
FLOAT
Lower bound
rmax
FLOAT
Upper bound
Reference manual
Modification
Example
Assume an input dataset has one field with temperatures in the range from 246 to 304 Kelvin. To set
all values below 273.15 Kelvin to missing value use:
cdo s e t r t o m i s s , 0 , 2 7 3 . 1 5
ifile
ofile
Size
2048
Miss :
0 :
Minimum
246.27
Mean
276.75
Maximum
303.71
Size
2048
Miss :
871 :
Minimum
273.16
Mean
287.08
Maximum
303.71
55
Arithmetic
Reference manual
2.7. Arithmetic
This section contains modules to arithmetically process datasets.
Here is a short overview of all operators in this section:
56
expr
exprf
Evaluate expressions
Evaluate expressions from script file
abs
int
nint
pow
sqr
sqrt
exp
ln
log10
sin
cos
tan
asin
acos
reci
Absolute value
Integer value
Nearest integer value
Power
Square
Square root
Exponential
Natural logarithm
Base 10 logarithm
Sine
Cosine
Tangent
Arc sine
Arc cosine
Reciprocal value
addc
subc
mulc
divc
Add a constant
Subtract a constant
Multiply with a constant
Divide by a constant
add
sub
mul
div
min
max
atan2
monadd
monsub
monmul
mondiv
ymonadd
ymonsub
ymonmul
ymondiv
muldpm
divdpm
muldpy
divdpy
Reference manual
Arithmetic
Description
This module arithmetically processes every time step of the input dataset. Each individual assignment
statement have to end with a semi-colon. The basic arithmetic operations addition +, subtraction ,
multiplication , division / and exponentiation can be used. The following intrinsic functions are
available:
sqrt(x)
Square Root of x
exp(x)
Exponential of x
log(x)
Natural logarithm of x
log10(x)
Base 10 logarithm of x
sin(x)
cos(x)
tan(x)
asin(x)
acos(x)
atan(x)
Operators
expr
Evaluate expressions
The processing instructions are read from the parameter.
exprf
Parameter
instr
STRING
filename
STRING
Example
Assume an input dataset contains at least the variables aprl, aprc and ts. To create a new variable
var1 with the sum of aprl and aprc and a variable var2 which convert the temperature ts from
Kelvin to Celsius use:
cdo expr , var1=a p r l+a p r c ; var2=t s 2 7 3 . 1 5 ; i f i l e
ofile
The same example, but the instructions are read from a file:
cdo e x p r f , myexpr i f i l e
ofile
57
Arithmetic
Reference manual
Description
This module contains some standard mathematical functions. All trigonometric functions calculate
with radians.
Operators
abs
Absolute value
o(t, x) = abs(i(t, x))
int
Integer value
o(t, x) = int(i(t, x))
nint
pow
Power
y
o(t, x) = i(t, x)
sqr
Square
2
o(t, x) = i(t, x)
sqrt
Square root
p
o(t, x) = i(t, x)
exp
Exponential
o(t, x) = ei(t,x)
ln
Natural logarithm
o(t, x) = ln(i(t, x))
log10
Base 10 logarithm
o(t, x) = log10 (i(t, x))
sin
Sine
o(t, x) = sin(i(t, x))
cos
Cosine
o(t, x) = cos(i(t, x))
tan
Tangent
o(t, x) = tan(i(t, x))
asin
Arc sine
o(t, x) = arcsin(i(t, x))
acos
Arc cosine
o(t, x) = arccos(i(t, x))
reci
Reciprocal value
o(t, x) = 1/i(t, x)
Example
To calculate the square root for all field elements use:
cdo s q r t
58
ifile
ofile
Reference manual
Arithmetic
Description
This module performs simple arithmetic with all field elements of a dataset and a constant. The fields
in ofile inherit the meta data from ifile.
Operators
addc
Add a constant
o(t, x) = i(t, x) + c
subc
Subtract a constant
o(t, x) = i(t, x) c
mulc
divc
Divide by a constant
o(t, x) = i(t, x)/c
Parameter
c
FLOAT
Constant
Example
To sum all input fields with the constant -273.15 use:
cdo addc , 273.15 i f i l e
ofile
59
Arithmetic
Reference manual
Description
This module performs simple arithmetic of two datasets. The number of fields in ifile1 should be
the same as in ifile2. One of the input files can contain only one time step or one field. The fields
in ofile inherit the meta data from ifile1 or ifile2.
Operators
add
sub
mul
div
min
max
atan2
Example
To sum all fields of the first input file with the corresponding fields of the second input file use:
cdo add i f i l e 1
60
ifile2
ofile
Reference manual
Arithmetic
Description
This module performs simple arithmetic of a time series and one time step with the same month
and year. For each field in ifile1 the corresponding field of the time step in ifile2 with the same
month and year is used. The header information in ifile1 have to be the same as in ifile2. Usually
ifile2 is generated by a call of the module MONSTAT.
Operators
monadd
monsub
monmul
mondiv
Example
To subtract a monthly time average from a time series use:
cdo monsub i f i l e monavg i f i l e
ofile
61
Arithmetic
Reference manual
Description
This module performs simple arithmetic of a time series and one time step with the same month of
year. For each field in ifile1 the corresponding field of the time step in ifile2 with the same month
of year is used. The header information in ifile1 have to be the same as in ifile2. Usually ifile2
is generated by a call of the module YMONSTAT.
Operators
ymonadd
ymonsub
ymonmul
ymondiv
Example
To subtract a multi-year monthly time average from a time series use:
cdo ymonsub i f i l e ymonavg i f i l e
62
ofile
Reference manual
Arithmetic
Description
This module multiplies or divides each time step of a dataset with the corresponding days per month
or days per year.
Operators
muldpm
divdpm
muldpy
divdpy
Example
Assume an input dataset is a monthly mean time series. To compute the yearly mean from the correct
weighted monthly mean use:
cdo muldpm i f i l e t m p f i l e 1
cdo y e a r a v g t m p f i l e 1 t m p f i l e 2
cdo mulc , 1 2 divdpy t m p f i l e 2 o f i l e
ofile
63
Statistical values
Reference manual
This section contains modules to compute statistical values of datasets. In this program there is the
different notion of mean and average to distinguish two different kinds of treatment of missing values.
While computing the mean, only the not missing values are considered to belong to the sample with the
side effect of a probably reduced sample size. Computing the average is just adding the sample members
and divide the result by the sample size. For example, the mean of 1, 2, miss and 3 is (1+2+3)/3 = 2,
whereas the average is (1+2+miss+3)/4 = miss/4 = miss. If there are no missing values in the sample,
the average and the mean are identical.
In this section the abbreviations as in the following table are used:
sum
n
X
xi
i=1
n
X
xi
i=1
Variance
var
n1
Standard deviation
std
std weighted by
{wi , i = 1, ..., n}
1
wj
j=1
n
X
wi xi
i=1
n
X
(xi x)2
i=1
var weighted by
{wi , i = 1, ..., n}
n
X
n
X
1
wj
j=1
n
X
wi xi
i=1
64
n
X
1
wj
j=1
n
X
wj xj
j=1
v
u
n
X
u
tn1
(xi x)2
i=1
2
u
1
1
u n
n
n
n
u X
X
X
X
u
wj
wi xi
wj
wj xj
t
j=1
i=1
ensmin
ensmax
enssum
ensmean
ensavg
ensvar
ensstd
enspctl
Ensemble
Ensemble
Ensemble
Ensemble
Ensemble
Ensemble
Ensemble
Ensemble
minimum
maximum
sum
mean
average
variance
standard deviation
percentiles
j=1
j=1
Reference manual
Statistical values
fldmin
fldmax
fldsum
fldmean
fldavg
fldvar
fldstd
fldpctl
Field
Field
Field
Field
Field
Field
Field
Field
minimum
maximum
sum
mean
average
variance
standard deviation
percentiles
zonmin
zonmax
zonsum
zonmean
zonavg
zonvar
zonstd
zonpctl
Zonal
Zonal
Zonal
Zonal
Zonal
Zonal
Zonal
Zonal
minimum
maximum
sum
mean
average
variance
standard deviation
percentiles
mermin
mermax
mersum
mermean
meravg
mervar
merstd
merpctl
Meridional
Meridional
Meridional
Meridional
Meridional
Meridional
Meridional
Meridional
vertmin
vertmax
vertsum
vertmean
vertavg
vertvar
vertstd
Vertical
Vertical
Vertical
Vertical
Vertical
Vertical
Vertical
timselmin
timselmax
timselsum
timselmean
timselavg
timselvar
timselstd
Time
Time
Time
Time
Time
Time
Time
timselpctl
runmin
runmax
runsum
runmean
runavg
runvar
runstd
Running
Running
Running
Running
Running
Running
Running
runpctl
Running percentiles
minimum
maximum
sum
mean
average
variance
standard deviation
percentiles
minimum
maximum
sum
mean
average
variance
standard deviation
range
range
range
range
range
range
range
minimum
maximum
sum
mean
average
variance
standard deviation
minimum
maximum
sum
mean
average
variance
standard deviation
65
Statistical values
66
Reference manual
timmin
timmax
timsum
timmean
timavg
timvar
timstd
Time
Time
Time
Time
Time
Time
Time
minimum
maximum
sum
mean
average
variance
standard deviation
timpctl
Time percentiles
hourmin
hourmax
hoursum
hourmean
houravg
hourvar
hourstd
Hourly
Hourly
Hourly
Hourly
Hourly
Hourly
Hourly
hourpctl
Hourly percentiles
daymin
daymax
daysum
daymean
dayavg
dayvar
daystd
Daily
Daily
Daily
Daily
Daily
Daily
Daily
daypctl
Daily percentiles
monmin
monmax
monsum
monmean
monavg
monvar
monstd
Monthly
Monthly
Monthly
Monthly
Monthly
Monthly
Monthly
monpctl
Monthly percentiles
yearmin
yearmax
yearsum
yearmean
yearavg
yearvar
yearstd
Yearly
Yearly
Yearly
Yearly
Yearly
Yearly
Yearly
yearpctl
Yearly percentiles
seasmin
seasmax
seassum
seasmean
seasavg
seasvar
seasstd
Seasonal
Seasonal
Seasonal
Seasonal
Seasonal
Seasonal
Seasonal
minimum
maximum
sum
mean
average
variance
standard deviation
minimum
maximum
sum
mean
average
variance
standard deviation
minimum
maximum
sum
mean
average
variance
standard deviation
minimum
maximum
sum
mean
average
variance
standard deviation
minimum
maximum
sum
mean
average
variance
standard deviation
Reference manual
Statistical values
seaspctl
Seasonal percentiles
yhourmin
yhourmax
yhoursum
yhourmean
yhouravg
yhourvar
yhourstd
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
hourly
hourly
hourly
hourly
hourly
hourly
hourly
ydaymin
ydaymax
ydaysum
ydaymean
ydayavg
ydayvar
ydaystd
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
daily
daily
daily
daily
daily
daily
daily
ydaypctl
ymonmin
ymonmax
ymonsum
ymonmean
ymonavg
ymonvar
ymonstd
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
ymonpctl
yseasmin
yseasmax
yseassum
yseasmean
yseasavg
yseasvar
yseasstd
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
yseaspctl
ydrunmin
ydrunmax
ydrunsum
ydrunmean
ydrunavg
ydrunvar
ydrunstd
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
Multi-year
ydrunpctl
minimum
maximum
sum
mean
average
variance
standard deviation
minimum
maximum
sum
mean
average
variance
standard deviation
monthly
monthly
monthly
monthly
monthly
monthly
monthly
seasonal
seasonal
seasonal
seasonal
seasonal
seasonal
seasonal
daily
daily
daily
daily
daily
daily
daily
minimum
maximum
sum
mean
average
variance
standard deviation
minimum
maximum
sum
mean
average
variance
standard deviation
running
running
running
running
running
running
running
minimum
maximum
sum
mean
average
variance
standard deviation
67
Statistical values
Reference manual
Description
This module computes statistical values over an ensemble of input files. Depending on the chosen
operator the minimum, maximum, sum, average, variance, standard deviation, or a certain percentile
over all input files is written to ofile. The date information of a time step in ofile is the date of
the first input file.
Operators
ensmin
Ensemble minimum
o(t, x) = min{i1 (t, x), i2 (t, x), , in (t, x)}
ensmax
Ensemble maximum
o(t, x) = max{i1 (t, x), i2 (t, x), , in (t, x)}
enssum
Ensemble sum
o(t, x) = sum{i1 (t, x), i2 (t, x), , in (t, x)}
ensmean
Ensemble mean
o(t, x) = mean{i1 (t, x), i2 (t, x), , in (t, x)}
ensavg
Ensemble average
o(t, x) = avg{i1 (t, x), i2 (t, x), , in (t, x)}
ensvar
Ensemble variance
o(t, x) = var{i1 (t, x), i2 (t, x), , in (t, x)}
ensstd
enspctl
Ensemble percentiles
o(t, x) = pth percentile{i1 (t, x), i2 (t, x), , in (t, x)}
Parameter
p
68
INTEGER
Reference manual
Statistical values
Example
To compute the ensemble mean over 6 input files use:
cdo ensmean i f i l e 1
ifile2
ifile3
ifile4
ifile5
ifile6
ofile
ifile2
ifile3
ifile4
ifile5
ifile6
ofile
69
Statistical values
Reference manual
Description
This module computes statistical values of the input fields. According to the chosen operator the field
minimum, maximum, sum, average, variance, standard deviation or a certain percentile is written to
ofile.
Operators
fldmin
Field minimum
For every gridpoint x1 , ..., xn of the same field it is:
o(t, 1) = min{i(t, x0 ), x1 < x0 xn }
fldmax
Field maximum
For every gridpoint x1 , ..., xn of the same field it is:
o(t, 1) = max{i(t, x0 ), x1 < x0 xn }
fldsum
Field sum
For every gridpoint x1 , ..., xn of the same field it is:
o(t, 1) = sum{i(t, x0 ), x1 < x0 xn }
fldmean
Field mean
For every gridpoint x1 , ..., xn of the same field it is:
o(t, 1) = mean{i(t, x0 ), x1 < x0 xn }
weighted by area weights obtained by the input field.
fldavg
Field average
For every gridpoint x1 , ..., xn of the same field it is:
o(t, 1) = avg{i(t, x0 ), x1 < x0 xn }
weighted by area weights obtained by the input field.
fldvar
Field variance
For every gridpoint x1 , ..., xn of the same field it is:
o(t, 1) = var{i(t, x0 ), x1 < x0 xn }
weighted by area weights obtained by the input field.
fldstd
fldpctl
70
Field percentiles
For every gridpoint x1 , ..., xn of the same field it is:
o(t, 1) = pth percentile{i(t, x0 ), x1 < x0 xn }
Reference manual
Statistical values
Parameter
p
INTEGER
Example
To compute the field mean of all input fields use:
cdo fldmean i f i l e
ofile
ofile
71
Statistical values
Reference manual
Description
This module computes zonal statistical values of the input fields. According to the chosen operator
the zonal minimum, maximum, sum, average, variance, standard deviation or a certain percentile is
written to ofile. All input fields need to have the same regular quadrilateral grid.
Operators
zonmin
Zonal minimum
For every latitude the minimum over all longitudes is computed.
zonmax
Zonal maximum
For every latitude the maximum over all longitudes is computed.
zonsum
Zonal sum
For every latitude the sum over all longitudes is computed.
zonmean
Zonal mean
For every latitude the mean over all longitudes is computed.
zonavg
Zonal average
For every latitude the average over all longitudes is computed.
zonvar
Zonal variance
For every latitude the variance over all longitudes is computed.
zonstd
zonpctl
Zonal percentiles
For every latitude the pth percentile over all longitudes is computed.
Parameter
p
72
INTEGER
Reference manual
Statistical values
Example
To compute the zonal mean of all input fields use:
cdo zonmean i f i l e
ofile
To compute the 50th meridional percentile (median) of all input fields use:
cdo z o n p c t l , 5 0 i f i l e
ofile
73
Statistical values
Reference manual
Description
This module computes meridional statistical values of the input fields. According to the chosen
operator the meridional minimum, maximum, sum, average, variance, standard deviation or a certain
percentile is written to ofile. All input fields need to have the same regular lon/lat grid.
Operators
mermin
Meridional minimum
For every longitude the minimum over all latitudes is computed.
mermax
Meridional maximum
For every longitude the maximum over all latitudes is computed.
mersum
Meridional sum
For every longitude the sum over all latitudes is computed.
mermean
Meridional mean
For every longitude the area weighted mean over all latitudes is computed.
meravg
Meridional average
For every longitude the area weighted average over all latitudes is computed.
mervar
Meridional variance
For every longitude the variance over all latitudes is computed.
merstd
merpctl
Meridional percentiles
For every longitude the pth percentile over all latitudes is computed.
Parameter
p
74
INTEGER
Reference manual
Statistical values
Example
To compute the meridional mean of all input fields use:
cdo mermean i f i l e
ofile
To compute the 50th meridional percentile (median) of all input fields use:
cdo merpctl , 5 0 i f i l e
ofile
75
Statistical values
Reference manual
Description
This module computes statistical values over all levels of the input variables. According to chosen
operator the vertical minimum, maximum, sum, average, variance or standard deviation is written to
ofile.
Operators
vertmin
Vertical minimum
For every gridpoint the minimum over all levels is computed.
vertmax
Vertical maximum
For every gridpoint the maximum over all levels is computed.
vertsum
Vertical sum
For every gridpoint the sum over all levels is computed.
vertmean
Vertical mean
For every gridpoint the mean over all levels is computed.
vertavg
Vertical average
For every gridpoint the average over all levels is computed.
vertvar
Vertical variance
For every gridpoint the variance over all levels is computed.
vertstd
Example
To compute the vertical sum of all input variables use:
cdo vertsum i f i l e
76
ofile
Reference manual
Statistical values
Description
This module computes statistical values for a selected number of time steps. According to the chosen
operator the minimum, maximum, sum, average, variance or standard deviation of the selected time
steps is written to ofile. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
Operators
timselmin
timselmax
timselsum
timselmean
timselavg
timselvar
timselstd
Parameter
nsets
INTEGER
noffset
INTEGER
Number of input time steps skipped before the first time step range (optional)
nskip
INTEGER
Number of input time steps skipped between time step ranges (optional)
77
Statistical values
Reference manual
Example
Assume an input dataset has monthly means over several years. To compute seasonal means from
monthly means the first two month have to be skipped:
cdo timselmean , 3 , 2
ifile
ofile
Description
This operator computes percentile values over a selected number of time steps in ifile1. The algorithm uses histograms with minimum and maximum bounds given in ifile2 and ifile3, respectively.
The default number of histogram bins is 101. The default can be overridden by setting the environment variable CDO PCTL NBINS to a different value. The files ifile2 and ifile3 should be the result
of corresponding timselmin and timselmax operations, respectively. The date information of a time
step in ofile is the date of the last contributing time step in ifile.
For every adjacent sequence t1 , ..., tn of time steps of the same selected time range it is:
o(t, x) = pth percentile{i(t0 , x), t1 < t0 tn }
Parameter
p
INTEGER
nsets
INTEGER
noffset
INTEGER
Number of input time steps skipped before the first time step range (optional)
nskip
INTEGER
Number of input time steps skipped between time step ranges (optional)
Environment
CDO PCTL NBINS
78
Reference manual
Statistical values
Description
This module computes running statistical values over a selected number of time steps. Depending
on the chosen operator the minimum, maximum, sum, average, variance or standard deviation of a
selected number of consecutive time steps read from ifile is written to ofile. The date information
in ofile is the date of the middle contributing time step in ifile.
Operators
runmin
Running minimum
o(t + (nts 1)/2, x) = min{i(t, x), i(t + 1, x), ..., i(t + nts 1, x)}
runmax
Running maximum
o(t + (nts 1)/2, x) = max{i(t, x), i(t + 1, x), ..., i(t + nts 1, x)}
runsum
Running sum
o(t + (nts 1)/2, x) = sum{i(t, x), i(t + 1, x), ..., i(t + nts 1, x)}
runmean
Running mean
o(t + (nts 1)/2, x) = mean{i(t, x), i(t + 1, x), ..., i(t + nts 1, x)}
runavg
Running average
o(t + (nts 1)/2, x) = avg{i(t, x), i(t + 1, x), ..., i(t + nts 1, x)}
runvar
Running variance
o(t + (nts 1)/2, x) = std{i(t, x), i(t + 1, x), ..., i(t + nts 1, x)}
runstd
Parameter
nts
INTEGER
Environment
RUNSTAT DATE
Sets the date information in ofile to the first, last or middle contributing
time step in ifile.
Example
To compute the running mean over 9 time steps use:
cdo runmean , 9
ifile
ofile
79
Statistical values
Reference manual
Description
This module computes running percentiles over a selected number of time steps in ifile1. The date
information in ofile is the date of the medium contributing time step in ifile1.
o(t + (nts 1)/2, x) = pth percentile{i(t, x), i(t + 1, x), ..., i(t + nts 1, x)}
Parameter
p
INTEGER
nts
INTEGER
Example
To compute the running 50th percentile (median) over 9 time steps use:
cdo r u n p c t l , 5 0 , 9 i f i l e runmin , 9
80
i f i l e runmax , 9
ifile
ofile
Reference manual
Statistical values
Description
This module computes statistical values over all time steps in ifile. Depending on the chosen
operator the minimum, maximum, sum, average, variance or standard deviation of all time steps read
from ifile is written to ofile. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
Operators
timmin
Time minimum
o(1, x) = min{i(t0 , x), t1 < t0 tn }
timmax
Time maximum
o(1, x) = max{i(t0 , x), t1 < t0 tn }
timsum
Time sum
o(1, x) = sum{i(t0 , x), t1 < t0 tn }
timmean
Time mean
o(1, x) = mean{i(t0 , x), t1 < t0 tn }
timavg
Time average
o(1, x) = avg{i(t0 , x), t1 < t0 tn }
timvar
Time variance
o(1, x) = var{i(t0 , x), t1 < t0 tn }
timstd
Example
To compute the mean over all input time steps use:
cdo timmean i f i l e
ofile
81
Statistical values
Reference manual
Description
This operator computes percentiles over all time steps in ifile1. The algorithm uses histograms
with minimum and maximum bounds given in ifile2 and ifile3, respectively. The default number of histogram bins is 101. The default can be overridden by setting the environment variable
CDO PCTL NBINS to a different value. The files ifile2 and ifile3 should be the result of corresponding timmin and timmax operations, respectively. The date information of a time step in ofile is the
date of the last contributing time step in ifile1.
o(1, x) = pth percentile{i(t0 , x), t1 < t0 tn }
Parameter
p
INTEGER
Environment
CDO PCTL NBINS
Example
To compute the 90th percentile over all input time steps use:
cdo timmin i f i l e m i n f i l e
cdo timmax i f i l e m a x f i l e
cdo t i m p c t l , 9 0 i f i l e m i n f i l e m a x f i l e o f i l e
82
ofile
Reference manual
Statistical values
Description
This module computes statistical values over time steps of the same hour. Depending on the chosen
operator the minimum, maximum, sum, average, variance or standard deviation of time steps of the
same hour is written to ofile. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
Operators
hourmin
Hourly minimum
For every adjacent sequence t1 , ..., tn of time steps of the same hour it is:
o(t, x) = min{i(t0 , x), t1 < t0 tn }
hourmax
Hourly maximum
For every adjacent sequence t1 , ..., tn of time steps of the same hour it is:
o(t, x) = max{i(t0 , x), t1 < t0 tn }
hoursum
Hourly sum
For every adjacent sequence t1 , ..., tn of time steps of the same hour it is:
o(t, x) = sum{i(t0 , x), t1 < t0 tn }
hourmean
Hourly mean
For every adjacent sequence t1 , ..., tn of time steps of the same hour it is:
o(t, x) = mean{i(t0 , x), t1 < t0 tn }
houravg
Hourly average
For every adjacent sequence t1 , ..., tn of time steps of the same hour it is:
o(t, x) = avg{i(t0 , x), t1 < t0 tn }
hourvar
Hourly variance
For every adjacent sequence t1 , ..., tn of time steps of the same hour it is:
o(t, x) = var{i(t0 , x), t1 < t0 tn }
hourstd
Example
To compute the hourly mean of a time series use:
cdo hourmean i f i l e
ofile
83
Statistical values
Reference manual
Description
This operator computes percentiles over all time steps of the same hour in ifile1. The algorithm
uses histograms with minimum and maximum bounds given in ifile2 and ifile3, respectively. The
default number of histogram bins is 101. The default can be overridden by setting the environment
variable CDO PCTL NBINS to a different value. The files ifile2 and ifile3 should be the result of
corresponding hourmin and hourmax operations, respectively. The date information of a time step in
ofile is the date of the last contributing time step in ifile1.
For every adjacent sequence t1 , ..., tn of time steps of the same hour it is:
o(t, x) = pth percentile{i(t0 , x), t1 < t0 tn }
Parameter
p
INTEGER
Environment
CDO PCTL NBINS
Example
To compute the hourly 90th percentile of a time series use:
cdo hourmin i f i l e m i n f i l e
cdo hourmax i f i l e m a x f i l e
cdo h o u r p c t l , 9 0 i f i l e m i n f i l e m a x f i l e o f i l e
84
ofile
Reference manual
Statistical values
Description
This module computes statistical values over time steps of the same day. Depending on the chosen
operator the minimum, maximum, sum, average, variance or standard deviation of time steps of the
same day is written to ofile. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
Operators
daymin
Daily minimum
For every adjacent sequence t1 , ..., tn of time steps of the same day it is:
o(t, x) = min{i(t0 , x), t1 < t0 tn }
daymax
Daily maximum
For every adjacent sequence t1 , ..., tn of time steps of the same day it is:
o(t, x) = max{i(t0 , x), t1 < t0 tn }
daysum
Daily sum
For every adjacent sequence t1 , ..., tn of time steps of the same day it is:
o(t, x) = sum{i(t0 , x), t1 < t0 tn }
daymean
Daily mean
For every adjacent sequence t1 , ..., tn of time steps of the same day it is:
o(t, x) = mean{i(t0 , x), t1 < t0 tn }
dayavg
Daily average
For every adjacent sequence t1 , ..., tn of time steps of the same day it is:
o(t, x) = avg{i(t0 , x), t1 < t0 tn }
dayvar
Daily variance
For every adjacent sequence t1 , ..., tn of time steps of the same day it is:
o(t, x) = var{i(t0 , x), t1 < t0 tn }
daystd
Example
To compute the daily mean of a time series use:
cdo daymean i f i l e
ofile
85
Statistical values
Reference manual
Description
This operator computes percentiles over all time steps of the same day in ifile1. The algorithm
uses histograms with minimum and maximum bounds given in ifile2 and ifile3, respectively. The
default number of histogram bins is 101. The default can be overridden by defining the environment
variable CDO PCTL NBINS. The files ifile2 and ifile3 should be the result of corresponding daymin
and daymax operations, respectively. The date information of a time step in ofile is the date of the
last contributing time step in ifile1.
For every adjacent sequence t1 , ..., tn of time steps of the same day it is:
o(t, x) = pth percentile{i(t0 , x), t1 < t0 tn }
Parameter
p
INTEGER
Environment
CDO PCTL NBINS
Example
To compute the daily 90th percentile of a time series use:
cdo daymin i f i l e m i n f i l e
cdo daymax i f i l e m a x f i l e
cdo d a y p c t l , 9 0 i f i l e m i n f i l e m a x f i l e o f i l e
86
ofile
Reference manual
Statistical values
Description
This module computes statistical values over time steps of the same month. Depending on the chosen
operator the minimum, maximum, sum, average, variance or standard deviation of time steps of the
same month is written to ofile. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
Operators
monmin
Monthly minimum
For every adjacent sequence t1 , ..., tn of time steps of the same month it is:
o(t, x) = min{i(t0 , x), t1 < t0 tn }
monmax
Monthly maximum
For every adjacent sequence t1 , ..., tn of time steps of the same month it is:
o(t, x) = max{i(t0 , x), t1 < t0 tn }
monsum
Monthly sum
For every adjacent sequence t1 , ..., tn of time steps of the same month it is:
o(t, x) = sum{i(t0 , x), t1 < t0 tn }
monmean
Monthly mean
For every adjacent sequence t1 , ..., tn of time steps of the same month it is:
o(t, x) = mean{i(t0 , x), t1 < t0 tn }
monavg
Monthly average
For every adjacent sequence t1 , ..., tn of time steps of the same month it is:
o(t, x) = avg{i(t0 , x), t1 < t0 tn }
monvar
Monthly variance
For every adjacent sequence t1 , ..., tn of time steps of the same month it is:
o(t, x) = var{i(t0 , x), t1 < t0 tn }
monstd
Example
To compute the monthly mean of a time series use:
cdo monmean i f i l e
ofile
87
Statistical values
Reference manual
Description
This operator computes percentiles over all time steps of the same month in ifile1. The algorithm
uses histograms with minimum and maximum bounds given in ifile2 and ifile3, respectively. The
default number of histogram bins is 101. The default can be overridden by setting the environment
variable CDO PCTL NBINS to a different value. The files ifile2 and ifile3 should be the result of
corresponding monmin and monmax operations, respectively. The date information of a time step in
ofile is the date of the last contributing time step in ifile1.
For every adjacent sequence t1 , ..., tn of time steps of the same month it is:
o(t, x) = pth percentile{i(t0 , x), t1 < t0 tn }
Parameter
p
INTEGER
Environment
CDO PCTL NBINS
Example
To compute the monthly 90th percentile of a time series use:
cdo monmin i f i l e m i n f i l e
cdo monmax i f i l e m a x f i l e
cdo monpctl , 9 0 i f i l e m i n f i l e m a x f i l e o f i l e
88
ofile
Reference manual
Statistical values
Description
This module computes statistical values over time steps of the same year. Depending on the chosen
operator the minimum, maximum, sum, average, variance or standard deviation of time steps of the
same year is written to ofile. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
Operators
yearmin
Yearly minimum
For every adjacent sequence t1 , ..., tn of time steps of the same year it is:
o(t, x) = min{i(t0 , x), t1 < t0 tn }
yearmax
Yearly maximum
For every adjacent sequence t1 , ..., tn of time steps of the same year it is:
o(t, x) = max{i(t0 , x), t1 < t0 tn }
yearsum
Yearly sum
For every adjacent sequence t1 , ..., tn of time steps of the same year it is:
o(t, x) = sum{i(t0 , x), t1 < t0 tn }
yearmean
Yearly mean
For every adjacent sequence t1 , ..., tn of time steps of the same year it is:
o(t, x) = mean{i(t0 , x), t1 < t0 tn }
yearavg
Yearly average
For every adjacent sequence t1 , ..., tn of time steps of the same year it is:
o(t, x) = avg{i(t0 , x), t1 < t0 tn }
yearvar
Yearly variance
For every adjacent sequence t1 , ..., tn of time steps of the same year it is:
o(t, x) = var{i(t0 , x), t1 < t0 tn }
yearstd
Note
The operators yearmean and yearavg compute only arithmetical means!
Example
To compute the yearly mean of a time series use:
cdo yearmean i f i l e
ofile
To compute the yearly mean from the correct weighted monthly mean use:
cdo mulc , 1 2 divdpy yearmean muldpm i f i l e
ofile
89
Statistical values
Reference manual
Description
This operator computes percentiles over all time steps of the same year in ifile1. The algorithm
uses histograms with minimum and maximum bounds given in ifile2 and ifile3, respectively. The
default number of histogram bins is 101. The default can be overridden by setting the environment
variable CDO PCTL NBINS to a different value. The files ifile2 and ifile3 should be the result of
corresponding yearmin and yearmax operations, respectively. The date information of a time step in
ofile is the date of the last contributing time step in ifile1.
For every adjacent sequence t1 , ..., tn of time steps of the same year it is:
o(t, x) = pth percentile{i(t0 , x), t1 < t0 tn }
Parameter
p
INTEGER
Environment
CDO PCTL NBINS
Example
To compute the yearly 90th percentile of a time series use:
cdo yearmin i f i l e m i n f i l e
cdo yearmax i f i l e m a x f i l e
cdo y e a r p c t l , 9 0 i f i l e m i n f i l e m a x f i l e o f i l e
90
ofile
Reference manual
Statistical values
Description
This module computes statistical values over time steps of the same season. Depending on the chosen
operator the minimum, maximum, sum, average, variance or standard deviation of time steps of the
same season is written to ofile. The date information of a time step in ofile is the date of the last
contributing time step in ifile. Be careful about the first and the last output time step, they may
be incorrect values if the seasons have incomplete time steps.
Operators
seasmin
Seasonal minimum
For every adjacent sequence t1 , ..., tn of time steps of the same season it is:
o(t, x) = min{i(t0 , x), t1 < t0 tn }
seasmax
Seasonal maximum
For every adjacent sequence t1 , ..., tn of time steps of the same season it is:
o(t, x) = max{i(t0 , x), t1 < t0 tn }
seassum
Seasonal sum
For every adjacent sequence t1 , ..., tn of time steps of the same season it is:
o(t, x) = sum{i(t0 , x), t1 < t0 tn }
seasmean
Seasonal mean
For every adjacent sequence t1 , ..., tn of time steps of the same season it is:
o(t, x) = mean{i(t0 , x), t1 < t0 tn }
seasavg
Seasonal average
For every adjacent sequence t1 , ..., tn of time steps of the same season it is:
o(t, x) = avg{i(t0 , x), t1 < t0 tn }
seasvar
Seasonal variance
For every adjacent sequence t1 , ..., tn of time steps of the same season it is:
o(t, x) = var{i(t0 , x), t1 < t0 tn }
seasstd
Example
To compute the seasonal mean of a time series use:
cdo seasmean i f i l e
ofile
91
Statistical values
Reference manual
Description
This operator computes percentiles over all time steps in ifile1 of the same season. The algorithm
uses histograms with minimum and maximum bounds given in ifile2 and ifile3, respectively. The
default number of histogram bins is 101. The default can be overridden by setting the environment
variable CDO PCTL NBINS to a different value. The files ifile2 and ifile3 should be the result of
corresponding seasmin and seasmax operations, respectively. The date information of a time step in
ofile is the date of the last contributing time step in ifile1. Be careful about the first and the last
output time step, they may be incorrect values if the seasons have incomplete time steps.
For every adjacent sequence t1 , ..., tn of time steps of the same season it is:
o(t, x) = pth percentile{i(t0 , x), t1 < t0 tn }
Parameter
p
INTEGER
Environment
CDO PCTL NBINS
Example
To compute the seasonal 90th percentile of a time series use:
cdo s e a s m i n i f i l e m i n f i l e
cdo seasmax i f i l e m a x f i l e
cdo s e a s p c t l , 9 0 i f i l e m i n f i l e m a x f i l e o f i l e
92
ofile
Reference manual
Statistical values
Description
This module computes statistical values of each hour and day of year. Depending on the chosen
operator the minimum, maximum, sum, average, variance or standard deviation of each hour and day
of year in ifile is written to ofile. The date information in an output field is the date of the last
contributing input field.
Operators
yhourmin
yhourmax
yhoursum
yhourmean
yhouravg
yhourstd
Example
To compute the hourly mean for all days over all input years use:
cdo yhourmean i f i l e
ofile
93
Statistical values
Reference manual
Description
This module computes statistical values of each day of year. Depending on the chosen operator the
minimum, maximum, sum, average, variance or standard deviation of each day of year in ifile is
written to ofile. The date information in an output field is the date of the last contributing input
field.
Operators
ydaymin
ydaymax
ydaysum
ydaymean
ydayvar
ydaystd
Example
To compute the daily mean over all input years use:
cdo ydaymean i f i l e
94
ofile
Reference manual
Statistical values
Description
This operator writes a certain percentile of each day of year in ifile1 to ofile. The algorithm
uses histograms with minimum and maximum bounds given in ifile2 and ifile3, respectively. The
default number of histogram bins is 101. The default can be overridden by setting the environment
variable CDO PCTL NBINS to a different value. The files ifile2 and ifile3 should be the result of
corresponding ydaymin and ydaymax operations, respectively. The date information in an output
field is the date of the last contributing input field.
o(001, x) = pth percentile{i(t, x), day(i(t)) = 001}
..
.
o(366, x) = pth percentile{i(t, x), day(i(t)) = 366}
Parameter
p
INTEGER
Environment
CDO PCTL NBINS
Example
To compute the daily 90th percentile over all input years use:
cdo ydaymin i f i l e m i n f i l e
cdo ydaymax i f i l e m a x f i l e
cdo y d a y p c t l , 9 0 i f i l e m i n f i l e m a x f i l e o f i l e
ofile
95
Statistical values
Reference manual
Description
This module computes statistical values of each month of year. Depending on the chosen operator the
minimum, maximum, sum, average, variance or standard deviation of each month of year in ifile is
written to ofile. The date information in an output field is the date of the last contributing input
field.
Operators
ymonmin
ymonmax
ymonsum
ymonmean
ymonvar
ymonstd
Example
To compute the monthly mean over all input years use:
cdo ymonmean i f i l e
96
ofile
Reference manual
Statistical values
Description
This operator writes a certain percentile of each month of year in ifile1 to ofile. The algorithm
uses histograms with minimum and maximum bounds given in ifile2 and ifile3, respectively. The
default number of histogram bins is 101. The default can be overridden by setting the environment
variable CDO PCTL NBINS to a different value. The files ifile2 and ifile3 should be the result of
corresponding ymonmin and ymonmax operations, respectively. The date information in an output
field is the date of the last contributing input field.
o(01, x) = pth percentile{i(t, x), month(i(t)) = 01}
..
.
o(12, x) = pth percentile{i(t, x), month(i(t)) = 12}
Parameter
p
INTEGER
Environment
CDO PCTL NBINS
Example
To compute the monthly 90th percentile over all input years use:
cdo ymonmin i f i l e m i n f i l e
cdo ymonmax i f i l e m a x f i l e
cdo ymonpctl , 9 0 i f i l e m i n f i l e m a x f i l e o f i l e
ofile
97
Statistical values
Reference manual
Description
This module computes statistical values of each season. Depending on the chosen operator the
minimum, maximum, sum, average, variance or standard deviation of each season in ifile is written
to ofile. The date information in an output field is the date of the last contributing input field.
Operators
yseasmin
yseasmax
yseassum
yseasmean
yseasavg
yseasvar
yseasstd
98
01,
04,
07,
10,
02}
05}
08}
11}
01,
04,
07,
10,
02}
05}
08}
11}
01,
04,
07,
10,
02}
05}
08}
11}
01,
04,
07,
10,
02}
05}
08}
11}
01,
04,
07,
10,
02}
05}
08}
11}
01,
04,
07,
10,
02}
05}
08}
11}
01,
04,
07,
10,
02}
05}
08}
11}
Reference manual
Statistical values
Example
To compute the seasonal mean over all input years use:
cdo yseasmean i f i l e
ofile
Description
This operator writes a certain percentile of each season in ifile1 to ofile. The algorithm uses
histograms with minimum and maximum bounds given in ifile2 and ifile3, respectively. The
default number of histogram bins is 101. The default can be overridden by setting the environment
variable CDO PCTL NBINS to a different value. The files ifile2 and ifile3 should be the result of
corresponding yseasmin and yseasmax operations, respectively. The date information in an output
field is the date of the last contributing input field.
o(1, x) = pth
o(2, x) = pth
o(3, x) = pth
o(4, x) = pth
01,
04,
07,
10,
02}
05}
08}
11}
Parameter
p
INTEGER
Environment
CDO PCTL NBINS
Example
To compute the seasonal 90th percentile over all input years use:
cdo yseasmin i f i l e m i n f i l e
cdo yseasmax i f i l e m a x f i l e
cdo y s e a s p c t l , 9 0 i f i l e m i n f i l e m a x f i l e o f i l e
ofile
99
Statistical values
Reference manual
Description
This module writes running statistical values for each day of year in ifile to ofile. Depending on
the chosen operator, the minimum, maximum, sum, average, variance or standard deviation of all
time steps in running windows of wich the medium time step corresponds to a certain day of year is
computed. The date information in an output field is the date of the medium time step in the last
contributing running window. Note that the operator have to be applied to a continuous time series
of daily measurements in order to yield physically meaningful results. Also note that the output time
series begins (nts-1)/2 time steps after the first time step of the input time series and ends (nts-1)/2
time steps before the last one. For input data which are complete but not continuous, such as time
series of daily measurements for the same month or season within different years, the operator yields
physically meaningful results only if the input time series does include the (nts-1)/2 days before and
after each period of interest.
Operators
ydrunmin
ydrunmax
ydrunsum
ydrunmean
ydrunavg
ydrunvar
ydrunstd
o(366, x) = var{i(t, x), i(t + 1, x), ..., i(t + nts 1, x); day[(i(t + (nts 1)/2)] = 366}
o(366, x) = std{i(t, x), i(t + 1, x), ..., i(t + nts 1, x); day[(i(t + (nts 1)/2)] = 366}
100
Reference manual
Statistical values
Parameter
nts
INTEGER
Example
Assume the input data provide a continuous time series of daily measurements. To compute the
running multi-year daily mean over all input time steps for a running window of five days use:
cdo ydrunmean , 5
ifile
ofile
Note that except for the standard deviation the results of the operators in this module are equivalent
to a composition of corresponding operators from the YDAYSTAT and RUNSTAT modules. For
instance, the above command yields the same result as:
cdo ydaymean runmean , 5
ifile
ofile
101
Statistical values
Reference manual
Description
This operator writes running percentile values for each day of year in ifile1 to ofile. A certain
percentile is computed for all time steps in running windows of which the medium time step corresponds to a certain day of year. The algorithm uses histograms with minimum and maximum bounds
given in ifile2 and ifile3, respectively. The default number of histogram bins is 101. The default
can be overridden by setting the environment variable CDO PCTL NBINS to a different value. The
files ifile2 and ifile3 should be the result of corresponding ydrunmin and ydrunmax operations,
respectively. The date information in an output field is the date of the medium time step in the last
contributing running window. Note that the operator have to be applied to a continuous time series
of daily measurements in order to yield physically meaningful results. Also note that the output time
series begins (nts-1)/2 time steps after the first time step of the input time series and ends (nts-1)/2
time steps before the last. For input data which are complete but not continuous, such as time series
of daily measurements for the same month or season within different years, the operator only yields
physically meaningful results if the input time series does include the (nts-1)/2 days before and after
each period of interest.
o(001, x) = pth percentile{i(t, x), i(t + 1, x), ..., i(t + nts 1, x); day[(i(t + (nts 1)/2)] = 001}
..
.
o(366, x) = pth percentile{i(t, x), i(t + 1, x), ..., i(t + nts 1, x); day[(i(t + (nts 1)/2)] = 366}
Parameter
p
INTEGER
nts
INTEGER
Environment
CDO PCTL NBINS
Example
Assume the input data provide a continuous time series of daily measurements. To compute the
running multi-year daily 90th percentile over all input time steps for a running window of five days
use:
cdo ydrunmin , 5 i f i l e m i n f i l e
cdo ydrunmax , 5 i f i l e m a x f i l e
cdo y d r u n p c t l , 9 0 , 5 i f i l e m i n f i l e m a x f i l e o f i l e
102
ofile
Reference manual
Regression
2.9. Regression
This sections contains modules for linear regression of time series.
Here is a short overview of all operators in this section:
regres
Regression
detrend
Detrend
trend
Trend
subtrend
Subtract trend
103
Regression
Reference manual
Description
The values of the input file ifile are assumed to be distributed as N (a + bt, 2 ) with unknown a, b
and 2 . This operator estimates the parameter b. For every field element x only those time steps t
belong to the sample S(x), which have i(t, x) 6= miss. It is
!
!
P
P
P
1
1
i(t, x) #S(x)
i(t0 , x)
t #S(x)
t0
o(1, x) =
t0 S(x)
tS(x)
t0 S(x)
!2
P
tS(x)
1
#S(x)
t0
P
t0 S(x)
Description
Every time series in ifile is linearly detrended. For every field element x only those time steps t
belong to the sample S(x), which have i(t, x) 6= miss. With
X
X
1
1
i(t, x) b(x)
t
a(x) =
#S(x)
#S(x)
tS(x)
tS(x)
and
!
!
P
b(x) =
i(t, x)
tS(x)
1
#S(x)
i(t , x)
t0 S(x)
1
#S(x)
t0 S(x)
!2
P
tS(x)
1
#S(x)
t0
t0 S(x)
it is
o(t, x) = i(t, x) (a(x) + b(x)t)
Note
This operator has to keep the fields of all time steps concurrently in the memory. If not enough
memory is available use the operators trend and subtrend.
Example
To detrend the data in ifile and to store the detrended data in ofile use:
cdo d e t r e n d i f i l e
104
ofile
Reference manual
Regression
Description
The values of the input file ifile are assumed to be distributed as N (a + bt, 2 ) with unknown a,
b and 2 . This operator estimates the parameter a and b. For every field element x only those time
steps t belong to the sample S(x), which have i(t, x) 6= miss. It is
X
X
1
1
i(t, x) b(x)
t
o1 (1, x) =
#S(x)
#S(x)
tS(x)
tS(x)
and
!
P
o2 (1, x) =
i(t, x)
tS(x)
1
#S(x)
i(t , x)
!
t
t0 S(x)
1
#S(x)
t0 S(x)
!2
P
tS(x)
1
#S(x)
t0
t0 S(x)
Thus the estimation for a is stored in ofile1 and that for b is stored in ofile2. To subtract the
trend from the data see operator subtrend.
Description
This operator is for subtracting a trend computed by the operator trend. It is
o(t, x) = i1 (t, x) (i2 (1, x) + i3 (1, x) t)
where t is the time steps.
Example
The typical call for detrending the data in ifile and storing the detrended data in ofile is:
cdo t r e n d i f i l e a f i l e b f i l e
cdo s u b t r e n d i f i l e a f i l e b f i l e
ofile
ofile
105
Interpolation
Reference manual
2.10. Interpolation
This section contains modules to interpolate datasets. There are several operators to interpolate horizontal
fields to a new grid. Some of those operators can handle only 2D fields on a regular rectangular grid. Vertical
interpolation of 3D variables is possible from hybrid model levels to height or pressure levels. Interpolation
in time is possible between time steps and years.
Here is a short overview of all operators in this section:
remapbil
remapbic
remapdis
remapnn
remapcon
remapcon2
remaplaf
Bilinear interpolation
Bicubic interpolation
Distance-weighted average remapping
Nearest neighbor remapping
First order conservative remapping
Second order conservative remapping
Largest area fraction remapping
genbil
genbic
gendis
gennn
gencon
gencon2
genlaf
Generate
Generate
Generate
Generate
Generate
Generate
Generate
remap
interpolate
remapeta
ml2pl
ml2hl
intlevel
inttime
intntime
intyear
106
Reference manual
Interpolation
Description
This module contains operators to remap all input fields to a new horizontal grid. Each operator uses
a different remapping method. The interpolation is based on an adapted SCRIP library version. For
a detailed description of the remapping methods see [SCRIP].
Operators
remapbil
Bilinear interpolation
Performs a bilinear interpolation on all input fields. This interpolation method only
works on regular quadrilateral grids.
remapbic
Bicubic interpolation
Performs a bicubic interpolation on all input fields. This interpolation method only
works on regular quadrilateral grids.
remapdis
remapnn
remapcon
remapcon2
remaplaf
Parameter
grid
STRING
Environment
NORMALIZE OPT
This variable is used to choose the normalization of the conservative remapping. By default NORMALIZE OPT is set to fracarea and will include
the destination area fraction in the output weights; other options are none
and destarea (for more information see [SCRIP]).
REMAP EXTRAPOLATE
Note
For this module the author has converted the original Fortran 90 SCRIP software to ANSI C99. If
there are any problems send a bug report to CDO and not to SCRIP!
107
Interpolation
Reference manual
Example
Say ifile contains fields on a regular quadrilateral grid. To remap all fields bilinear to a T42 Gaussian
grid type:
cdo remapbil , t 4 2 g r i d i f i l e
108
ofile
Reference manual
Interpolation
Description
Interpolation between different horizontal grids can be a very time-consuming process. Especially
if the data are on an unstructured or a large grid. In this case the SCRIP interpolation process
can be split into two parts. Firstly the generation of the interpolation weights, which is the most
time-consuming part. These interpolation weights can be reused for every remapping process with
the operator remap. This method should be used only if all input fields are on the same grid and a
possibly mask (missing values) does not change. This module contains operators to generate SCRIP
interpolation weights of the first input field. Each operator is using a different interpolation method.
Operators
genbil
genbic
gendis
gennn
gencon
gencon2
genlaf
Parameter
grid
STRING
Environment
NORMALIZE OPT
This variable is used to choose the normalization of the conservative interpolation. By default NORMALIZE OPT is set to fracarea and will
include the destination area fraction in the output weights; other options
are none and destarea (for more information see [SCRIP]).
REMAP EXTRAPOLATE
109
Interpolation
Reference manual
Note
For this module the author has converted the original Fortran 90 SCRIP software to ANSI C99. If
there are any problems send a bug report to CDO and not to SCRIP!
Example
Say ifile contains fields on a regular quadrilateral grid. To remap all fields bilinear to a T42 Gaussian
grid use:
cdo g e n b i l , t 4 2 g r i d i f i l e remapweights . nc
cdo remap , t 4 2 g r i d , remapweights . nc i f i l e o f i l e
Description
This operator remaps all input fields to a new horizontal grid. The remap type and the interpolation
weights of one input grid are read from a netCDF file. The netCDF file with the weights should follow
the SCRIP convention. Normally these weights come from a previous call to module GENWEIGHTS
or were created by the original SCRIP package.
Parameter
grid
STRING
weights
STRING
Environment
NORMALIZE OPT
This variable is used to choose the normalization of the conservative interpolation. By default NORMALIZE OPT is set to fracarea and will
include the destination area fraction in the output weights; other options
are none and destarea (for more information see [SCRIP]).
REMAP EXTRAPOLATE
Note
For this module the author has converted the original Fortran 90 SCRIP software to ANSI C99. If
there are any problems send a bug report to CDO and not to SCRIP!
Example
Say ifile contains fields on a regular quadrilateral grid. To remap all fields bilinear to a T42 Gaussian
grid use:
cdo g e n b i l , t 4 2 g r i d i f i l e remapweights . nc
cdo remap , t 4 2 g r i d , remapweights . nc i f i l e o f i l e
110
Reference manual
Interpolation
Description
This module contains operators to interpolate all input fields to a new grid. All interpolation methods
in this module only work on regular lon/lat grids.
This is the grid interpolation from PINGO. The base of the interpolation is an underlying continuous
field which is constructed in the following way:
For two neighboured longitudes x1 and x2 and two neighboured latitudes y1 and y2 of the input grid
every point at longitude x and latidude y with x1 x x2 and y1 y y2 is assigned the value
y y1
x x1
+ (a12 a11 )
x2 x1
y2 y1
(x x1 )(y y1 )
+ (a22 a21 a12 + a11 )
(x2 x1 )(y2 y1 )
where aij is the value at longitude xi and latitude yj . If one out of the four values a11 , a12 , a21 , a22
is the missing value then a is also the missing value. Afterwards the underlying continuous field is
expanded by a half mesh width. For a detailed description of this interpolation method see [PINGO].
Parameter
grid
STRING
Example
Say ifile contains fields on a regular lon/lat grid. To interpolate all fields bilinear to a T42 Gaussian
grid use:
cdo i n t g r i d b i l , t 4 2 g r i d i f i l e
ofile
111
Interpolation
Reference manual
Description
This operator interpolates between different vertical hybrid levels. This include the preparation of
consistent data for the free atmosphere. The procedure for the vertical interpolation is based on the
HIRLAM scheme and was adapted from [INTERA]. The vertical interpolation is based on the vertical
integration of the hydrostatic equation with few adjustments. The basic tasks are the following one:
at first integration of hydrostatic equation
extrapolation of surface pressure
Planetary Boundary-Layer (PBL) profile interpolation
interpolation in free atmosphere
merging of both profiles
final surface pressure correction
The vertical interpolation corrects the surface pressure. This is simply a cut-off or an addition of
air mass. This mass correction should not influence the geostrophic velocity field in the middle
troposhere. Therefore the total mass above a given reference level is conserved. As reference level the
geopotential height of the 500 hPa level is used. Near the surface the correction can affect the vertical
structure of the PBL. Therefore the interpolation is done using the potential temperature. But in
the free atmosphere above a certain n (n=0.8 defining the top of the PBL) the interpolation is done
linearly. After the interpolation both profiles are merged. With the resulting temperature/pressure
correction the hydrostatic equation is integrated again and adjusted to the reference level finding the
final surface pressure correction. A more detailed description of the interpolation can be found in
[INTERA]. All input fields have to be on the same horizontal grid.
Parameter
vct
STRING
oro
STRING
File name with the orography (surf. geopotential) of the target dataset (optional)
Note
The code numbers or the variable names of the required parameter have to follow the [ECHAM]
convention. The netCDF CF convention for vertical hybrid coordinates is not supported, yet!
Example
To remap between different hybrid model level data use:
cdo remapeta , v c t i f i l e
112
ofile
Reference manual
Interpolation
Description
Interpolate 3D variables on hybrid model levels to pressure or height levels. The input file should
contain the log. surface pressure or the surface pressure. To interpolate the temperature, the orography (surface geopotential) is also needed. The pressure, temperature, and orography are identified by
their code numbers. Supported parameter tables are: WMO standard table number 2 and ECMWF
local table number 128. Use the alias ml2plx/ml2hlx or the environment variable EXTRAPOLATE to
extrapolate missing values. All input fields have to be on the same horizontal grid.
Operators
ml2pl
ml2hl
Parameter
plevels
FLOAT
hlevels
FLOAT
Environment
EXTRAPOLATE
Note
The netCDF CF convention for vertical hybrid coordinates is not supported, yet!
Example
To interpolate hybrid model level data to pressure levels of 925, 850, 500 and 200 hPa use:
cdo ml2pl , 9 2 5 0 0 , 8 5 0 0 0 , 5 0 0 0 0 , 2 0 0 0 0 i f i l e
ofile
113
Interpolation
Reference manual
Description
This operator performs a linear vertical interpolation of non hybrid 3D variables.
Parameter
levels
FLOAT
Target levels
Example
To interpolate 3D variables on height levels to a new set of height levels use:
cdo i n t l e v e l , 1 0 , 5 0 , 1 0 0 , 5 0 0 , 1 0 0 0 i f i l e
114
ofile
Reference manual
Interpolation
Description
This module performs linear interpolation between time steps.
Operators
inttime
intntime
Parameter
date
STRING
time
STRING
inc
STRING
0hour]
n
INTEGER
Example
Assumed a 6 hourly dataset starts at 1987-01-01 12:00. To interpolate this time series to a one hourly
dataset use:
cdo i n t t i m e ,1987 01 01 ,12:00 ,1 hour i f i l e
ofile
115
Interpolation
Reference manual
Description
This operator performs linear interpolation between two years time step by time step. Appends four
digits with the year to oprefix to form the output file names.
Parameter
years
INTEGER
Example
Assume there are two monthly mean datasets over a year. The first dataset has 12 time steps for
the year 1985 and the second one for the year 1990. To interpolate the years between 1985 and 1990
month by month use:
cdo i n t y e a r , 1 9 8 6 , 1 9 8 7 , 1 9 8 8 , 1 9 8 9 i f i l e 1
i f i l e 2 year
116
Reference manual
Transformation
2.11. Transformation
This section contains modules to perform spectral transformations.
Here is a short overview of all operators in this section:
sp2gp
sp2gpl
gp2sp
gp2spl
sp2sp
spcut
Spectral to gridpoint
Spectral to gridpoint (linear)
Gridpoint to spectral
Gridpoint to spectral (linear)
Spectral to spectral
Cut spectral wave number
dv2uv
dv2uvl
uv2dv
uv2dvl
117
Transformation
Reference manual
Description
This module transforms fields on Gaussian grids to spectral coefficients and vice versa.
Operators
sp2gp
Spectral to gridpoint
Convert all fields with spectral coefficients to a regular Gaussian grid. The number of
latitudes of the resulting Gaussian grid is calculated from the triangular truncation by:
nlat = N IN T ((trunc 3 + 1.)/2.)
sp2gpl
gp2sp
Gridpoint to spectral
Convert all Gaussian gridpoint fields to spectral coefficients. The triangular truncation
of the resulting spherical harmonics is calculated from the number of latitudes by:
trunc = (nlat 2 1)/ 3
gp2spl
sp2sp
Spectral to spectral
Change the triangular truncation of all spectral fields. The operator performs downward
conversion by cutting the resolution. Upward conversions are achieved by filling in zeros.
spcut
Parameter
118
trunc
INTEGER
wnums
INTEGER
Reference manual
Transformation
Example
To transform spectral coefficients from T106 to N80 Gaussian grid use:
cdo sp2gp i f i l e
ofile
ofile
Description
This module converts relative divergence and vorticity to U and V wind and vice versa.
Operators
dv2uv
dv2uvl
uv2dv
uv2dvl
Example
Assume a dataset has at least spherical harmonic coefficients of divergence and vorticity. To transform
the spectral divergence and vorticity to U and V wind use:
cdo dv2uv i f i l e
ofile
119
Formatted I/O
Reference manual
ASCII input
SERVICE ASCII input
EXTRA ASCII input
output
outputf
outputint
outputsrv
outputext
ASCII output
Formatted output
Integer output
SERVICE ASCII output
EXTRA ASCII output
120
Reference manual
Formatted I/O
Description
This module reads time series of one 2D variable from standard input. All input fields need to have
the same horizontal grid. The format of the input depends on the chosen operator.
Operators
input
ASCII input
Reads fields with ASCII numbers from standard input and stores them in ofile. The
numbers read are exactly that ones which are written out by output.
inputsrv
inputext
Parameter
grid
STRING
Example
Assume an ASCII dataset contains a field on a global regular grid with 32 longitudes and 16 latitudes
(512 elements). To create a GRIB dataset from the ASCII dataset use:
cdo f grb input , r32x 16 o f i l e . grb < m y a s c i i d a t a
121
Formatted I/O
Reference manual
Description
This module prints all values of all input datasets to standard output. All input fields need to have
the same horizontal grid. The format of the output depends on the chosen operator.
Operators
output
ASCII output
Prints all values to standard output. Each row has 6 elements with the C-style format
%13.6g.
outputf
Formatted output
Prints all values to standard output. The format and number of elements for each
row have to be specified by the parameters format and nelem.
outputint
Integer output
Prints all values rounded to the nearest integer to standard output.
outputsrv
outputext
Parameter
format
STRING
nelem
INTEGER
Example
To print all field elements of a dataset formatted with %8.4g and 8 values per line use:
cdo o u t p u t f , % 8 . 4 g , 8
ifile
122
262
252.6
266.2
267.4
275.5
284.5
290.5
292.6
257.8
253.9
259.8
272.2
276.4
280.3
293.9
291.2
252.5
254.8
261.6
266.7
278.4
280.3
292.6
292.6
248.8
252
257.2
259.6
282
280
292.7
293.2
247.7
246.6
253.4
255.2
269.6
281.5
292.8
292.8
246.3
249.7
251
272.9
278.7
284.7
294.1
291
246.1
257.9
263.7
277.1
279.5
283.6
293.6
291.2
Reference manual
Miscellaneous
2.13. Miscellaneous
This section contains miscellaneous modules which do not fit to the other sections before.
Here is a short overview of all operators in this section:
gridarea
gridweights
gradsdes1
gradsdes2
smooth9
9 point smoothing
setrtoc
setrtoc2
timsort
const
random
rotuvb
Backward rotation
mastrfu
histcount
histsum
histmean
histfreq
Histogram
Histogram
Histogram
Histogram
wct
Windchill temperature
fdns
strwin
strbre
strgal
hurr
import amsr
import cmsaf
import binary
count
sum
mean
frequency
123
Miscellaneous
Reference manual
Description
This module reads the grid cell area of the first grid from the input stream. If the grid cell area is
missing it will be computed from the grid description. Depending on the chosen operator the grid
cell area or weights are written to the output stream.
Operators
gridarea
gridweights
Environment
PLANET RADIUS
124
This variable is used to scale the computed grid cell areas to square meters. By
default PLANET RADIUS is set to an earth radius of 6371000 meter.
Reference manual
Miscellaneous
Description
Creates a GrADS data descriptor file. Supported file formats are GRIB, SERVICE, EXTRA and
IEG. For GRIB files the GrADS map file is also generated. For SERVICE and EXTRA files the grid
have to be specified with the CDO option -g <grid>. This module takes ifile in order to create
filenames for the descriptor (ifile.ctl) and the map (ifile.gmp) file. gradsdes is an alias for
gradsdes2.
Operators
gradsdes1
gradsdes2
Example
To create a GrADS data descriptor file from a GRIB dataset use:
cdo g r a d s d e s 2 i f i l e . grb
This will create a descriptor file with the name ifile.ctl and the map file ifile.gmp.
Assumed the input GRIB dataset has 3 variables over 12 time steps on a T21 grid. The contents of
the resulting GrADS data description file is approximately:
DSET i f i l e . grb
DTYPE GRIB
INDEX i f i l e . gmp
XDEF 64 LINEAR 0 . 0 0 0 0 0 0 5 . 6 2 5 0 0 0
YDEF 32 LEVELS 85.761 80.269 74.745 69.213 63.679 58.143
52.607 47.070 41.532 35.995 30.458 24.920
19.382 13.844 8.307 2.769
2.769
8.307
13.844 19.382 24.920 30.458 35.995 41.532
47.070 52.607 58.143 63.679 69.213 74.745
80.269 85.761
ZDEF 4 LEVELS 925 850 500 200
TDEF 12 LINEAR 1 2 : 0 0 Z1jan1987 1mo
TITLE i f i l e . grb T21 g r i d
OPTIONS y r e v
UNDEF 9e+33
VARS 3
geosp
0 129 ,1 ,0
s u r f a c e g e o p o t e n t i a l ( or og ra ph y )
[m2/ s 2 ]
t
4 130 ,99 ,0 temperature
[K]
tslm1
0 139 ,1 ,0
s u r f a c e temperature of land
[K]
ENDVARS
125
Miscellaneous
Reference manual
Description
Performs a 9 point smoothing on all fields with a regular quadrilateral grid. The result at each grid
point is a weighted average of the grid point plus the 8 surrounding points. The center point receives
a weight of 1.0, the points at each side and above and below receive a weight of 0.5, and corner points
receive a weight of 0.3. All 9 points are multiplied by their weights and summed, then divided by
the total weight to obtain the smoothed value. Any missing data points are not included in the sum;
points beyond the grid boundary are considered to be missing. Thus the final result may be the result
of an averaging with less than 9 points.
Description
This module sets part of a field to a constant value or missing values. Which part of the field is set
depends on the chosen operator.
Operators
setrtoc
setrtoc2
Parameter
126
rmin
FLOAT
Lower bound
rmax
FLOAT
Upper bound
FLOAT
c2
FLOAT
Reference manual
Miscellaneous
Description
Sorts the elements in ascending order over all time steps for every field position. After sorting it is:
(t1 < t2 ), x
Example
To sort all field elements of a dataset over all time steps use:
cdo t i m s o r t i f i l e
ofile
Description
Generates a dataset with one field. The size of the field is specified by the user given grid description.
According to the chosen operator all field elements are constant or filled with random numbers.
Operators
const
random
Parameter
const
FLOAT
Constant
grid
STRING
127
Miscellaneous
Reference manual
Description
This is a special operator for datsets with wind components on a rotated grid, e.g. data from the
regional model REMO. It performs a backward transformation of velocity components U and V from
a rotated spherical system to a geographical system.
Parameter
u,v,...
STRING
Example
To transform the u and v velocity of a dataset from a rotated spherical system to a geographical
system use:
cdo rotuvb , u , v i f i l e
ofile
Description
This is a special operator for the post processing of the atmospheric general circulation model
ECHAM. It computes the mass stream function (code number 272). The input dataset have to
be a zonal mean of v-velocity (code number 132) on pressure levels.
Example
To compute the mass stream function from a zonal mean v-velocity dataset use:
cdo m a s t r f u i f i l e
128
ofile
Reference manual
Miscellaneous
Description
This module creates bins for a histogram of the input data. The bins have to be adjacent and have
non-overlapping intervals. The user has to define the bounds of the bins. The first value is the lower
bound and the second value the upper bound of the first bin. The bounds of the second bin are
defined by the second and third value, aso. Only 2-dimensional input fields are allowed. The ouput
file contains one vertical level for each of the bins requested.
Operators
histcount
Histogram count
Number of elements in the bin range.
histsum
Histogram sum
Sum of elements in the bin range.
histmean
Histogram mean
Mean of elements in the bin range.
histfreq
Histogram frequency
Frequency of elements in the bin range.
Parameter
bounds
FLOAT
Comma separated list of the bin bounds (-inf and inf valid)
129
Miscellaneous
Reference manual
Description
Let ifile1 and ifile2 be time series of temperature and wind speed records, then a corresponding
time series of resulting windchill temperatures is written to ofile. The wind chill temperature calculation is only valid for a temperature of T <= 33 and a wind speed of v >= 1.39 m/s. Whenever
these conditions are not satisfied, a missing value is written to ofile. Note that temperature and
wind speed records have to be given in units of and m/s, respectively.
2.13.11. FDNS - Frost days where no snow index per time period
Synopsis
fdns ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily minimum temperatures TN and ifile2 be a corresponding series
of daily surface snow amounts. Then counted is the number of days where TN < 0 and the surface
snow amount is less than 1 cm. The temperature TN have to be given in units of Kelvin. The date
information of a time step in ofile is the date of the last contributing time step in ifile.
Description
Let ifile be a time series of daily maximum horizontal wind speeds VX, then counted is the number
of days where VX > v. The horizontal wind speed v is an optional parameter with default v = 10.5
m/s. A further output variable is the maximum number of consecutive days with maximum wind
speed greater than or equal to v. Note that both VX and v have to be given in units of m/s. Also
note that the horizontal wind speed is defined as the square root of the sum of squares of the zonal
and meridional wind speeds. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
Parameter
v
130
FLOAT
Reference manual
Miscellaneous
Description
Let ifile be a time series of daily maximum horizontal wind speeds VX, then counted is the number
of days where VX is greater than or equal to 10.5 m/s. A further output variable is the maximum
number of consecutive days with maximum wind speed greater than or equal to 10.5 m/s. Note that
VX is defined as the square root of the sum of squares of the zonal and meridional wind speeds and
have to be given in units of m/s. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
Description
Let ifile be a time series of daily maximum horizontal wind speeds VX, then counted is the number
of days where VX is greater than or equal to 20.5 m/s. A further output variable is the maximum
number of consecutive days with maximum wind speed greater than or equal to 20.5 m/s. Note that
VX is defined as the square root of the sum of square of the zonal and meridional wind speeds and
have to be given in units of m/s. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
Description
Let ifile be a time series of daily maximum horizontal wind speeds VX, then counted is the number
of days where VX is greater than or equal to 32.5 m/s. A further output variable is the maximum
number of consecutive days with maximum wind speed greater than or equal to 32.5 m/s. Note that
VX is defined as the square root of the sum of squares of the zonal and meridional wind speeds and
have to be given in units of m/s. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
131
Miscellaneous
Reference manual
Description
This operator imports gridded binary AMSR (Advanced Microwave Scanning Radiometer) data. The
binary data files are available from the AMSR ftp site (ftp://ftp.ssmi.com/amsre). Each file consists
of twelve (daily) or five (averaged) 0.25 x 0.25 degree grid (1440,720) byte maps. For daily files,
six daytime maps in the following order, Time (UTC), Sea Surface Temperature (SST), 10 meter
Surface Wind Speed (WSPD), Atmospheric Water Vapor (VAPOR), Cloud Liquid Water (CLOUD),
and Rain Rate (RAIN), are followed by six nighttime maps in the same order. Time-Averaged files
contain just the geophysical layers in the same order [SST, WSPD, VAPOR, CLOUD, RAIN]. More
information to the data is available on the AMSR homepage http://www.remss.com/amsr.
Example
To convert monthly binary AMSR files to netCDF use:
cdo f nc amsre yyyymmv5 amsre yyyymmv5 . nc
132
Reference manual
Miscellaneous
Description
This operator imports gridded CM-SAF (Satellite Application Facility on Climate Monitoring) HDF5
files. CM-SAF exploits data from polar-orbiting and geostationary satellites in order to provide
climate monitoring products of the following parameters:
Cloud parameters: cloud fraction (CFC), cloud type (CTY), cloud phase (CPH), cloud top height,
pressure and temperature (CTH,CTP,CTT), cloud optical thickness (COT), cloud
water path (CWP).
Surface radiation components: Surface albedo (SAL); surface incoming (SIS) and net (SNS)
shortwave radiation; surface downward (SDL) and outgoing (SOL) longwave radiation, surface net longwave radiation (SNL) and surface radiation budget (SRB).
Top-of-atmosphere radiation components: Incoming (TIS) and reflected (TRS) solar radiative
flux at top-of-atmosphere. Emitted thermal radiative flux at top-of-atmosphere
(TET).
Water vapour: Vertically integrated water vapour (HTW), layered vertically integrated water
vapour and layer mean temperature and relative humidity for 5 layers (HLW), temperature and mixing ratio at 6 pressure levels.
Daily and monthly mean products can be ordered via the CM-SAF web page (www.cmsaf.eu). Products with higher spatial and temporal resolution, i.e. instantaneous swath-based products, are available on request ([email protected]). All products are distributed free-of-charge. More information on the data is available on the CM-SAF homepage (www.cmsaf.eu).
Daily and monthly mean products are provided in equal-area projections. CDO reads the projection
parameters from the metadata in the HDF5-headers in order to allow spatial operations like remapping. For spatial operations with instantaneous products on original satellite projection, additional
files with arrays of latitudes and longitudes are needed. These can be obtained from CM-SAF together
with the data.
Note
To use this operator, it is necessary to build CDO with HDF5 support (version 1.6 or higher). The
PROJ.4 library (version 4.6 or higher) is needed for full support of the remapping functionality.
Example
A typical sequence of commands with this operator could look like this:
cdo f nc remapbil , r3 60 x 18 0 i m p o r t c m s a f c m s a f p r o d u c t . hdf output . nc
(bilinear remapping to a predefined global grid with 1 deg resolution and conversion to netcdf).
If you work with CM-SAF data on original satellite project, an additional file with information on
geolocation is required, to perform such spatial operations:
cdo f nc remapbil , r7 20 x 36 0 s e t g r i d , c m s a f l a t l o n . h5 i m p o r t c m s a f cmsaf . hdf output . nc
Some CM-SAF data are stored as scaled integer values. For some operations, it could be desirable
(or necessary) to increase the accuracy of the converted products:
cdo b f 3 2 f nc fldmean s e l l o n l a t b o x , 0 , 1 0 , 0 , 1 0 remapbil , r7 20 x 36 0 \
i m p o r t c m s a f c m s a f p r o d u c t . hdf output . nc
133
Miscellaneous
Reference manual
Description
This operator imports gridded binary data sets via a GrADS data descriptor file. The GrADS data
descriptor file contains a complete description of the binary data as well as instructions on where to
find the data and how to read it. The descriptor file is an ASCII file that can be created easily with
a text editor. The general contents of a gridded data descriptor file are as follows:
Filename for the binary data
Missing or undefined data value
Mapping between grid coordinates and world coordinates
Description of variables in the binary data set
A detailed description of the components of a GrADS data descriptor file can be found in [GrADS].
Here is a list of the supported components: BYTESWAPPED, CHSUB, DSET, ENDVARS,
FILEHEADER, HEADERBYTES, OPTIONS, TDEF, TITLE, TRAILERBYTES, UNDEF, VARS,
XDEF, XYHEADER, YDEF, ZDEF
Example
To convert a binary data file to netCDF use:
cdo f nc i m p o r t b i n a r y i f i l e . c t l o f i l e . nc
The binary data file ifile.bin contains one parameter on a global 1 degree lon/lat grid written with
FORTRAN record length headers (sequential).
134
Reference manual
Climate indices
eca cfd
eca csu
eca cwd
eca cwdi
eca cwfi
eca etr
eca fd
eca gsl
eca hd
eca hwdi
eca hwfi
eca id
eca r10mm
eca r20mm
eca r75p
eca r75ptot
eca r90p
eca r90ptot
eca r95p
eca r95ptot
eca r99p
eca r99ptot
eca rr1
eca rx1day
eca rx5day
eca sdii
135
Climate indices
Reference manual
eca su
eca tg10p
eca tg90p
eca tn10p
eca tn90p
eca tr
eca tx10p
eca tx90p
136
Reference manual
Climate indices
Description
Let ifile be a time series of daily precipitation amounts RR, then counted is the largest number of
consecutive days where RR is less than 1 mm. A further output variable is the number of dry periods
of more than 5 days. The date information of a time step in ofile is the date of the last contributing
time step in ifile.
Example
To get the largest number of consecutive dry days of a time series of daily precipitation amounts use:
cdo e c a c d d r r f i l e
ofile
Description
Let ifile be a time series of daily minimum temperatures TN, then counted is the largest number
of consecutive days where TN < 0 . Note that TN have to be given in units of Kelvin. The date
information of a time step in ofile is the date of the last contributing time step in ifile.
Example
To get the largest number of consecutive frost days of a time series of daily minimum temperatures
use:
cdo e c a c f d t n f i l e
ofile
137
Climate indices
Reference manual
Description
Let ifile be a time series of daily maximum temperatures TX, then counted is the largest number
of consecutive days where TX > T. 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. The
date information of a time step in ofile is the date of the last contributing time step in ifile.
Parameter
T
FLOAT
Example
To get the largest number of consecutive summer days of a time series of daily minimum temperatures
use:
cdo e c a c s u t x f i l e
ofile
Description
Let ifile be a time series of daily precipitation amounts RR, then counted is the largest number of
consecutive days where RR is at least 1 mm. A further output variable is the number of wet periods
of more than 5 days. The date information of a time step in ofile is the date of the last contributing
time step in ifile.
Example
To get the largest number of consecutive wet days of a time series of daily precipitation amounts use:
cdo eca cwd r r f i l e
138
ofile
Reference manual
Climate indices
2.14.5. ECACWDI - Cold wave duration index wrt mean of reference period
Synopsis
eca cwdi[,nday[,T]] ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily minimum temperatures TN, and let ifile2 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. Note that both TN and TNnorm have to be given
in the same units. The date information of a time step in ofile is the date of the last contributing
time step in ifile1.
Parameter
nday
INTEGER
FLOAT
Example
To compute the cold wave duration index of a time series of daily minimum temperatures use:
cdo e c a c w d i t n f i l e t n n o r m f i l e o f i l e
2.14.6. ECACWFI - Cold-spell days index wrt 10th percentile of reference period
Synopsis
eca cwfi[,nday] ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily mean temperatures TG, and ifile2 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. Note that both TG and TGn10 have to be given in the same units. The
date information of a time step in ofile is the date of the last contributing time step in ifile1.
Parameter
nday
INTEGER
Example
To compute the number of cold-spell days of a time series of daily mean temperatures use:
cdo e c a c w f i t g f i l e t g n 1 0 f i l e o f i l e
139
Climate indices
Reference manual
Description
Let ifile1 and ifile2 be time series of maximum and minimum temperatures 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 time
step in ofile is the date of the last contributing time steps in ifile1 and ifile2.
Example
To get the intra-period extreme temperature range for two time series of maximum and minimum
temperatures use:
cdo e c a e t r t x f i l e
tnfile
ofile
Description
Let ifile be a time series of daily minimum temperatures TN, then counted is the number of days
where TN < 0 . Note that TN have to be given in units of Kelvin. The date information of a time
step in ofile is the date of the last contributing time step in ifile.
Example
To get the number of frost days of a time series of daily minimum temperatures use:
cdo e c a f d t n f i l e
140
ofile
Reference manual
Climate indices
Description
Let ifile1 be a time series of daily mean temperatures TG, and ifile2 be a land-water mask. Then
counted are the number of days between the first occurrence of at least nday consecutive days with
TG > T and the first occurrence after 1 July of at least nday consecutive days with TG < T. The
numbers nday and T are optional parameter with default nday = 6 and T = 5 . The number fland
is an optional parameter with default value fland = 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 time step in ofile is the date of the
last contributing time step in ifile.
Parameter
nday
INTEGER
FLOAT
fland
FLOAT
Example
To get the growing season length of a time series of daily mean temperatures use:
cdo e c a g s l t g f i l e m a s k f i l e o f i l e
141
Climate indices
Reference manual
Description
Let ifile be a time series of daily mean temperatures TG, then the heating degree days are defined
as the sum of T1 - TG, where only values TG < T2 are considered. If T1 and T2 are omitted, a
temperature of 17 is used for both parameters. If only T1 is given, T2 is set to T1. Note that TG
have to be given in units of kelvin, whereas T1 and T2 have to be given in degrees Celsius. The date
information of a time step in ofile is the date of the last contributing time step in ifile.
Parameter
T1
FLOAT
T2
FLOAT
Example
To compute the heating degree days of a time series of daily mean temperatures use:
cdo e c a h d t g f i l e
ofile
2.14.11. ECAHWDI - Heat wave duration index wrt mean of reference period
Synopsis
eca hwdi[,nday[,T]] ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily maximum temperatures TX, and let ifile2 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. Note that both TX and TXnorm have to be given
in the same units. The date information of a time step in ofile is the date of the last contributing
time step in ifile1.
Parameter
nday
INTEGER
FLOAT
Example
To compute the heat wave duration index of a time series of daily maximum temperatures use:
cdo e c a h w d i t x f i l e t x n o r m f i l e o f i l e
142
Reference manual
Climate indices
2.14.12. ECAHWFI - Warm spell days index wrt 90th percentile of reference period
Synopsis
eca hwfi[,nday] ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily mean temperatures TG, and ifile2 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. Note that both TG and TGn90 have to be given in the
same units. The date information of a time step in ofile is the date of the last contributing time
step in ifile1.
Parameter
nday
INTEGER
Example
To compute the number of warm-spell days of a time series of daily mean temperatures use:
cdo e c a h w f i t g f i l e t g n 9 0 f i l e o f i l e
Description
Let ifile be a time series of daily maximum temperatures TX, then counted is the number of days
where TX < 0 . Note that TX have to be given in units of Kelvin. The date information of a time
step in ofile is the date of the last contributing time step in ifile.
Example
To get the number of ice days of a time series of daily maximum temperatures use:
cdo e c a i d t x f i l e
ofile
143
Climate indices
Reference manual
Description
Let ifile be a time series of daily precipitation amounts RR, then counted is the number of days
where RR is at least 10 mm. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
Example
To get the number of days with precipitation greater than 10 mm for a time series of daily precipitation
amounts use:
cdo eca r10mm r r f i l e
ofile
2.14.15. ECAR20MM - Very heavy precipitation days index per time period
Synopsis
eca r20mm ifile ofile
Description
Let ifile be a time series of daily precipitation amounts RR, then counted is the number of days
where RR is at least 20 mm. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
Example
To get the number of days with precipitation greater than 20 mm for a time series of daily precipitation
amounts use:
cdo eca r20mm r r f i l e
144
ofile
Reference manual
Climate indices
2.14.16. ECAR75P - Moderate wet days wrt 75th percentile of reference period
Synopsis
eca r75p ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily precipitation amounts RR, and ifile2 be the 75th percentile
RRn75 of daily precipitation amounts at wet days for any period used as reference. Then calculated
is the percentage of wet days with RR > RRn75. The date information of a time step in ofile is the
date of the last contributing time step in ifile1.
Example
To compute the percentage of wet days where the daily precipitation amount is greater than the 75th
percentile of the daily precipitation amount at wet days for a given reference period use:
cdo e c a r 7 5 p r r f i l e
rrn75file
ofile
Description
Let ifile1 be a time series of daily precipitation amounts RR, and ifile2 be the 75th percentile
RRn75 of daily precipitation amounts at wet days for any period used as reference. Then calculated
is the ratio of the precipitation sum at wet days with RR > RRn75 to the total precipitation sum.
The date information of a time step in ofile is the date of the last contributing time step in ifile1.
145
Climate indices
Reference manual
Description
Let ifile1 be a time series of daily precipitation amounts RR, and ifile2 be the 90th percentile
RRn90 of daily precipitation amounts at wet days for any period used as reference. Then calculated
is the percentage of wet days with RR > RRn90. The date information of a time step in ofile is the
date of the last contributing time step in ifile1.
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 e c a r 9 0 p r r f i l e
rrn90file
ofile
Description
Let ifile1 be a time series of daily precipitation amounts RR, and ifile2 be the 90th percentile
RRn90 of daily precipitation amounts at wet days for any period used as reference. Then calculated
is the ratio of the precipitation sum at wet days with RR > RRn90 to the total precipitation sum.
The date information of a time step in ofile is the date of the last contributing time step in ifile1.
146
Reference manual
Climate indices
2.14.20. ECAR95P - Very wet days wrt 95th percentile of reference period
Synopsis
eca r95p ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily precipitation amounts RR, and ifile2 be the 95th percentile
RRn95 of daily precipitation amounts at wet days for any period used as reference. Then calculated
is the percentage of wet days with RR > RRn95. The date information of a time step in ofile is the
date of the last contributing time step in ifile1.
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 e c a r 9 5 p r r f i l e
rrn95file
ofile
Description
Let ifile1 be a time series of daily precipitation amounts RR, and ifile2 be the 95th percentile
RRn95 of daily precipitation amounts at wet days for any period used as reference. Then calculated
is the ratio of the precipitation sum at wet days with RR > RRn95 to the total precipitation sum.
The date information of a time step in ofile is the date of the last contributing time step in ifile1.
147
Climate indices
Reference manual
2.14.22. ECAR99P - Extremely wet days wrt 99th percentile of reference period
Synopsis
eca r99p ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily precipitation amounts RR, and ifile2 be the 99th percentile
RRn99 of daily precipitation amounts at wet days for any period used as reference. Then calculated
is the percentage of wet days with RR > RRn99. The date information of a time step in ofile is the
date of the last contributing time step in ifile1.
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 e c a r 9 9 p r r f i l e
rrn99file
ofile
Description
Let ifile1 be a time series of daily precipitation amounts RR, and ifile2 be the 99th percentile
RRn99 of daily precipitation amounts at wet days for any period used as reference. Then calculated
is the ratio of the precipitation sum at wet days with RR > RRn99 to the total precipitation sum.
The date information of a time step in ofile is the date of the last contributing time step in ifile1.
148
Reference manual
Climate indices
Description
Let ifile be a time series of daily precipitation amounts RR, then counted is the number of days
where RR is at least 1 mm. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
Example
To get the number of wet days of a time series of daily precipitation amounts use:
cdo e c a r r 1 r r f i l e
ofile
2.14.25. ECARX1DAY - Highest one day precipitation amount per time period
Synopsis
eca rx1day[,mode] ifile ofile
Description
Let ifile be a time series of daily precipitation amounts RR, then the maximum of RR is written
to ofile. If the optional parameter mode is set to m, then maximum daily precipitation amounts
are determined for each month. The date information of a time step in ofile is the date of the last
contributing time step in ifile.
Parameter
mode
Example
To get the maximum of a time series of daily precipitation amounts use:
cdo e c a r x 1 d a y r r f i l e
ofile
If you are interested in the maximum daily precipitation for each month, use:
cdo e c a r x 1 d a y ,m r r f i l e
ofile
Apart from metadata information, both operations yield the same as:
cdo timmax r r f i l e
cdo monmax r r f i l e
ofile
ofile
149
Climate indices
Reference manual
Description
Let ifile be a time series of 5-day precipitation totals RR, then the maximum of RR is written to
ofile. 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. The date information of a time
step in ofile is the date of the last contributing time step in ifile.
Parameter
x
FLOAT
Example
To get the maximum of a time series of 5-day precipitation totals use:
cdo e c a r x 5 d a y r r f i l e
ofile
Apart from metadata information, the above operation yields the same as:
cdo timmax r r f i l e
ofile
Description
Let ifile be a time series of daily precipitation amounts RR, then the mean precipitation amount
at wet days (RR > 1 mm) is written to ofile. The date information of a time step in ofile is the
date of the last contributing time step in ifile.
Example
To get the daily intensity index of a time series of daily precipitation amounts use:
cdo e c a s d i i
rrfile
ofile
150
Reference manual
Climate indices
Description
Let ifile be a time series of daily maximum temperatures TX, then counted is the number of days
where TX > T. 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. The date information
of a time step in ofile is the date of the last contributing time step in ifile.
Parameter
T
FLOAT
Example
To get the number of summer days of a time series of daily maximum temperatures use:
cdo e c a s u t x f i l e
ofile
151
Climate indices
Reference manual
2.14.29. ECATG10P - Cold days percent wrt 10th percentile of reference period
Synopsis
eca tg10p ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily mean temperatures TG, and ifile2 be the 10th percentile TGn10
of daily mean temperatures for any period used as reference. Then calculated is the percentage of
time where TG < TGn10. Note that both TG and TGn10 have to be given in the same units. The
date information of a time step in ofile is the date of the last contributing time step in ifile1.
Example
To compute the percentage of time where the daily mean temperature is less than the 10th percentile
of the daily mean temperature for a given reference period use:
cdo e c a t g 1 0 p t g f i l e t g n 1 0 f i l e o f i l e
2.14.30. ECATG90P - Warm days percent wrt 90th percentile of reference period
Synopsis
eca tg90p ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily mean temperatures TG, and ifile2 be the 90th percentile TGn90
of daily mean temperatures for any period used as reference. Then calculated is the percentage of
time where TG > TGn90. Note that both TG and TGn90 have to be given in the same units. The
date information of a time step in ofile is the date of the last contributing time step in ifile1.
Example
To compute the percentage of time where the daily mean temperature is greater than the 90th
percentile of the daily mean temperature for a given reference period use:
cdo e c a t g 9 0 p t g f i l e t g n 9 0 f i l e o f i l e
152
Reference manual
Climate indices
2.14.31. ECATN10P - Cold nights percent wrt 10th percentile of reference period
Synopsis
eca tn10p ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily minimum temperatures TN, and ifile2 be the 10th percentile
TNn10 of daily minimum temperatures for any period used as reference. Then calculated is the
percentage of time where TN < TNn10. Note that both TN and TNn10 have to be given in the same
units. The date information of a time step in ofile is the date of the last contributing time step in
ifile1.
Example
To compute the percentage of time where the daily minimum temperature is less than the 10th
percentile of the daily minimum temperature for a given reference period use:
cdo e c a t n 1 0 p t n f i l e t n n 1 0 f i l e o f i l e
2.14.32. ECATN90P - Warm nights percent wrt 90th percentile of reference period
Synopsis
eca tn90p ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily minimum temperatures TN, and ifile2 be the 90th percentile
TNn90 of daily minimum temperatures for any period used as reference. Then calculated is the
percentage of time where TN > TNn90. Note that both TN and TNn90 have to be given in the same
units. The date information of a time step in ofile is the date of the last contributing time step in
ifile1.
Example
To compute the percentage of time where the daily minimum temperature is greater than the 90th
percentile of the daily minimum temperature for a given reference period use:
cdo e c a t n 9 0 p t n f i l e t n n 9 0 f i l e o f i l e
153
Climate indices
Reference manual
Description
Let ifile be a time series of daily minimum temperatures TN, then counted is the number of days
where TN > T. 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. The date information
of a time step in ofile is the date of the last contributing time step in ifile.
Parameter
T
FLOAT
Example
To get the number of tropical nights of a time series of daily minimum temperatures use:
cdo e c a t r t n f i l e
ofile
2.14.34. ECATX10P - Very cold days percent wrt 10th percentile of reference
period
Synopsis
eca tx10p ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily maximum temperatures TX, and ifile2 be the 10th percentile
TNx10 of daily maximum temperatures for any period used as reference. Then calculated is the
percentage of time where TX < TXn10. Note that both TX and TXn10 have to be given in the same
units. The date information of a time step in ofile is the date of the last contributing time step in
ifile1.
Example
To compute the percentage of time where the daily maximum temperature is less than the 10th
percentile of the daily maximum temperature for a given reference period use:
cdo e c a t x 1 0 p t x f i l e t x n 1 0 f i l e o f i l e
154
Reference manual
Climate indices
2.14.35. ECATX90P - Very warm days percent wrt 90th percentile of reference
period
Synopsis
eca tx90p ifile1 ifile2 ofile
Description
Let ifile1 be a time series of daily maximum temperatures TX, and ifile2 be the 90th percentile
TXn90 of daily maximum temperatures for any period used as reference. Then calculated is the
percentage of time where TX > TXn90. Note that both TX and TXn90 have to be given in the same
units. The date information of a time step in ofile is the date of the last contributing time step in
ifile1.
Example
To compute the percentage of time where the daily maximum temperature is greater than the 90th
percentile of the daily maximum temperature for a given reference period use:
cdo e c a t x 9 0 p t x f i l e t x n 9 0 f i l e o f i l e
155
Bibliography
[CDI]
Climate Data Interface, from the Max Planck Institute for Meteorologie
[CM-SAF]
Satellite Application Facility on Climate Monitoring, from the German Weather Service (Deutscher
Wetterdienst, DWD)
[ECHAM]
The atmospheric general circulation model ECHAM5, from the Max Planck Institute for Meteorologie
[GrADS]
Grid Analysis and Display System, from the Center for Ocean-Land-Atmosphere Studies (COLA)
[GRIB]
GRIB version 1, from the World Meteorological Organisation (WMO)
[HDF5]
HDF version 5, from the HDF Group
[INTERA]
INTERA Software Package, from the Max Planck Institute for Meteorologie
[MPIOM]
Ocean and sea ice model, from the Max Planck Institute for Meteorologie
[netCDF]
NetCDF Software Package, from the UNIDATA Program Center of the University Corporation for
Atmospheric Research
[PINGO]
The PINGO package, from the Model & Data group at the Max Planck Institute for Meteorologie
[REMO]
Regional Model, from the Max Planck Institute for Meteorologie
[PROJ.4]
Cartographic Projections Library, originally written by Gerald Evenden then of the USGS.
[SCRIP]
SCRIP Software Package, from the Los Alamos National Laboratory
[szip]
Szip compression software, developed at University of New Mexico.
156
CDO
PINGO
min
max
daymean
daymin
daymax
monmean
monmin
monmax
seasmean
Time minimum
Time maximum
Multi-year daily mean
Multi-year daily minimum
Multi-year daily maximum
Multi-year monthly mean
Multi-year monthly minimum
Multi-year monthly maximum
Multi-year seasonally mean
There are also some CDO operators with the same functionality as in PINGO but the name is different.
The following table gives an overview of those operators.
CDO
PINGO
max
min
fldmean, fldmin, fldmax
timmean, timmin, timmax
daymean, daymin, daymax
monmean, monmin, monmax
yearmean, yearmin, yearmax
runmean
seasmean
ydaymean
ymonmean
yseasmean
max2
min2
meanr minr, maxr
mean, min, max
daymeans, daymins, daymaxs
monmeans, monmins, monmaxs
yearmeans, yearmins, yearmaxs
runmeans
seasmeans
daymean
monmean
seasmean
157
xbounds
yvals
ybounds
=
=
=
=
=
curvilinear
30
6
5
21 11
0
25
36 31
0
21
38
= 23 14 17
5
14
17
28 17 21
6
17
21
34 21 27
7
21
27
41 27 35
9
27
35
51 35 51
13
35
51
=
29
32
32
39
35
48
62
61
57
=
23
26
36
27
26
36
32
36
45
37
36
45
41
45
55
47
45
55
50
55
64
57
55
64
58
64
72
67
64
72
11
16
52
28
6
34
7
41
9
51
13
67
21
32
51
51
32
37
41
47
50
57
58
67
64
77
21
0
51
29
52
65
30
16
30
14
14
17
17
21
21
27
27
35
35
26
51
70
26
26
36
36
45
45
55
55
64
64
25
31
0
5
23
6
28
7
34
9
41
13
51
39
48
72
27
23
37
32
47
41
57
50
67
58
13
43
30
6
28
7
34
9
41
13
51
21
67
42
43
70
37
32
47
41
57
50
67
58
77
64
0
38
51
17
17
21
21
27
27
35
35
51
51
42
57
65
36
36
45
45
55
55
64
64
72
72
13
21
64
5
23
6
28
7
34
9
41
13
51
5
32
6
38
7
44
9
52
13
63
6
38
7
44
9
52
13
63
21
77
6
28
7
34
9
41
13
51
21
67
27
23
37
32
47
41
57
50
67
58
27
19
37
28
47
36
57
44
67
51
37
28
47
36
57
44
67
51
77
56
37
32
47
41
57
50
67
58
77
64
42
61
58
158
xbounds
yvals
ybounds
= cell
= 30
= 6
= 36
144
0
= 339
0
20
72
92
144
164
216
236
268
345
20
92
164
236
=
58
32
58
=
41
11
19
11
19
11
19
11
19
19
41
19
19
19
19
36
126
72
0
16
36
88
108
160
180
232
252
288
324
15
87
159
231
58
0
58
53
19
11
19
11
19
11
19
11
7
53
41
41
41
41
0 18
18 108
72
162 108 144 162 126
36 144 108 144 180
0 288 288 309
21
0 339 344
36
16
0
0
93
72
51
56
108
88
72
72
165 144 123 128
180 160 144 144
237 216 195 200
252 232 216 216
288 272 252 252
324
36
36
15
36
57
52
36
108 129 124 108
180 201 196 180
252 273 268 252
32
0
0
58
32
0
58
32
0
0
32 58 32 58 32
71
71
53
41
41
53
41
19
7
19
11
7
41
53
41
19
7
19
11
7
41
53
41
19
7
19
11
7
41
53
41
19
7
19
11
7
11
19
7 11
71 71 53 41
53 41 19 11
53 41 19 11
53 41 19 11
53 41 19 11
54
90
72 90
72 108
21
51
340
0
93 123
52
72
165 195
124 144
237 267
196 216
288 304
308 324
36
36
108 108
180 180
252 252
308 303
0
0
32
0
58 32
41
41
19
7
41
41
19
7
41
41
19
7
41
41
19
7
11
19
19 11
53 71
53 71
53 71
53 71
19 41
180
54
36
72
0
144
72
216
144
288
216
309
324
108
180
252
324
324
58
0
32
53
11
53
11
53
11
53
11
41
7
71
71
71
71
53
72
344
144
56
216
128
288
200
288
304
108
180
252
324
345
0
324
72
36
144
108
216
180
267
288
87
159
231
303
340
0
324
72
36
144
108
216
180
272
288
57
129
201
273
324
71
19
71
19
71
19
71
19
53
19
53
53
53
53
41
71
7
71
7
71
7
71
7
41
11
41
41
41
41
19
53
11
53
11
53
11
53
11
19
7
41
41
41
41
11
Figure B.2.: Orthographic and Robinson projection of the unstructured grid cells
159
Operator index
A
abs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
acos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
addc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
asin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
atan2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
58
58
60
59
58
60
C
cat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
chcode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
chlevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
chlevelc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
chlevelv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
chname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
const . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
copy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
cos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
D
dayavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
daymax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
daymean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
daymin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
daypctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
daystd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
daysum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
dayvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
delcode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
delname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
detrend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
diff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
diffv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
div . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
divc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
divdpm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
divdpy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
dv2uv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
dv2uvl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
E
eca
eca
eca
eca
eca
eca
eca
eca
eca
cdd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
cfd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
csu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
cwd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
cwdi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
cwfi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
etr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
fd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gsl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
160
137
137
138
138
139
139
140
140
141
eca hd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
eca hwdi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
eca hwfi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
eca id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
eca r10mm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
eca r20mm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
eca r75p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
eca r75ptot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
eca r90p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
eca r90ptot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
eca r95p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
eca r95ptot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
eca r99p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
eca r99ptot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
eca rr1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
eca rx1day . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
eca rx5day . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
eca sdii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
eca su . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
eca tg10p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
eca tg90p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
eca tn10p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
eca tn90p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
eca tr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
eca tx10p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
eca tx90p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
enlarge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
ensavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
ensmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
ensmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
ensmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
enspctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
ensstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
enssum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
ensvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
eq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
eqc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
exp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
expr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
exprf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
F
fdns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
fldavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
fldmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
fldmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
fldmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
fldpctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
fldstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
fldsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
Operator index
Operator index
fldvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
G
ge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
genbic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
genbil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gencon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gencon2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gendis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
genlaf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gennn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gp2sp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gp2spl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gradsdes1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gradsdes2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gridarea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
griddes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gridweights . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
gtc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
invertlev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
40
41
109
109
109
109
109
109
109
118
118
125
125
124
23
124
40
41
H
histcount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
histfreq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
histmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
histsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
houravg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
hourmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
hourmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
hourmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
hourpctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
hourstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
hoursum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
hourvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
hurr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
I
ifnotthen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
ifnotthenc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
ifthen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
ifthenc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
ifthenelse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
import amsr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
import binary . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
import cmsaf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
info . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
infov . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
inputext . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
inputsrv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
int . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
interpolate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
intlevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
intntime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
inttime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
intyear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
invertlat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
le . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
log10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
lt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ltc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
40
41
58
58
40
41
M
map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
maskindexbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
masklonlatbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
maskregion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
mastrfu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
meravg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
merge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
mergetime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
mermax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
mermean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
mermin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
merpctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
merstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
mersum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
mervar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
min . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
ml2hl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
ml2pl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
monadd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
monavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
mondiv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
monmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
monmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
monmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
monmul . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
monpctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
monstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
monsub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
monsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
monvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
mul . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
mulc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
muldpm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
muldpy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
N
ndate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
nec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
nint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
nlevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
nmon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
npar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ntime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
nyear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
40
41
58
21
21
21
21
21
O
161
Operator index
Operator index
output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
outputext . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
outputf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
outputint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
outputsrv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
122
122
122
122
122
P
pardes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
pow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
R
random . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
reci . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
regres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
remap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
remapbic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
remapbil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
remapcon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
remapcon2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
remapdis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
remapeta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
remaplaf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
remapnn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
replace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
rotuvb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
runavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
runmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
runmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
runmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
runpctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
runstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
runsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
runvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
S
seasavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
seasmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
seasmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
seasmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
seaspctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
seasstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
seassum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
seasvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
selcode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
seldate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
selday . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
selgrid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
selgridname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
selhour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
selindexbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
sellevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
sellevidx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
sellonlatbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
selltype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
selmon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
selname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
selseas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
selsmon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
162
91
91
91
91
92
91
91
91
31
33
33
31
31
33
35
31
31
35
31
33
31
33
33
selstdname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
seltabnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
seltime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
seltimestep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
selyear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
selzaxis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
selzaxisname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
setcalendar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
setcindexbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
setclonlatbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
setcode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
setctomiss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
setdate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
setday . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
setgatt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
setgatts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
setgrid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
setgridtype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
setlevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
setltype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
setmisstoc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
setmissval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
setmon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
setname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
setpartab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
setreftime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
setrtoc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
setrtoc2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
setrtomiss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
settaxis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
settime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
settunits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
setvrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
setyear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
setzaxis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
shifttime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
showcode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
showdate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
showformat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
showlevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
showltype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
showmon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
showname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
showstdname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
showtime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
showyear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
sin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
sinfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
sinfop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
sinfov . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
smooth9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
sp2gp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
sp2gpl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
sp2sp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
spcut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
splitcode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
splitday . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
splitgrid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Operator index
Operator index
splithour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
splitlevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
splitmon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
splitname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
splitseas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
splitsel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
splityear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
splitzaxis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
sqr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
sqrt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
strbre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
strgal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
strwin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
sub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
subc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
subtrend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
T
tan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
timavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
timmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
timmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
timmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
timpctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
timselavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
timselmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
timselmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
timselmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
timselpctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
timselstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
timselsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
timselvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
timsort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
timstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
timsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
timvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
trend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
U
uv2dv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
uv2dvl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
V
vct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vertavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vertmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vertmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vertmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vertstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vertsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vertvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
76
76
76
76
76
76
76
W
wct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Y
ydayavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
ydaymax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
ydaymean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
ydaymin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
ydaypctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
ydaystd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
ydaysum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
ydayvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
ydrunavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
ydrunmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
ydrunmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
ydrunmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
ydrunpctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
ydrunstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
ydrunsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
ydrunvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
yearavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
yearmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
yearmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
yearmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
yearpctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
yearstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
yearsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
yearvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
yhouravg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
yhourmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
yhourmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
yhourmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
yhourstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
yhoursum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
yhourvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
ymonadd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
ymonavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
ymondiv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
ymonmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
ymonmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
ymonmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
ymonmul . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
ymonpctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
ymonstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
ymonsub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
ymonsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
ymonvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
yseasavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
yseasmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
yseasmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
yseasmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
yseaspctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
yseasstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
yseassum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
yseasvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Z
zaxisdes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
zonavg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
zonmax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
zonmean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
zonmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
zonpctl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
zonstd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
zonsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
72
72
72
72
72
72
72
163
Operator index
zonvar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
164
Operator index