NEWS 16.6 KB
Newer Older
Uwe Schulzweida's avatar
Uwe Schulzweida committed
1
2
3
CDO NEWS
--------

Uwe Schulzweida's avatar
Uwe Schulzweida committed
4
5
Version 1.5.0 (?? March 2011):

Uwe Schulzweida's avatar
Uwe Schulzweida committed
6
   New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
7
     * Added GRIB2 support via ECMWF GRIB_API
Uwe Schulzweida's avatar
Uwe Schulzweida committed
8
     * Added support for netCDF level bounds
Uwe Schulzweida's avatar
Uwe Schulzweida committed
9
10
   Fixed bugs:
     * sellonlatbox: does not work as expected when selecting all longitutes
11
     * sellonlatbox: initialization missing for unstructured grids
Uwe Schulzweida's avatar
Uwe Schulzweida committed
12
     * detrend: integer overflow; wrong result for ntimesteps > 46340
13
     * spcut: only correct results with continuous wave numbers starting at 1
Uwe Schulzweida's avatar
Uwe Schulzweida committed
14
     * remaplib: fix data race in calculation of bin_addr (OpenMP)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
15

16
Version 1.4.7 (06 January 2011):
17

18
19
   New features:
     * improved support for netCDF output from WRF model (import time and grid variables)
20
21
   New operators:
     * ydayadd, ydaysub, ydaymul, ydaydiv: Multi-year daily arithmetic
22
     * eca_pd: Precipitation days index per time period
23
     * dv2ps: Divergence and vorticity to velocity potential and stream function
24
25
   Changed operators:
     * import_cmsaf: added time information also for time constant fields
26
   Fixed bugs:
27
28
     * eof: fix memory access violation
     * eofcoeff: fix memory access violation
29
     * fldmean: gives wrong result for grid units [radian]
30
     * Yseasstat: bug fix for datasets with time constant fields
31
32
     * sellevel: fix problem with hybrid model levels and netCDF output
     * sellonlatbox: fix rounding error of the last lon index
33
     * Settime: bug fix for time independent variables in combination with other operators (pipes)
34

Uwe Schulzweida's avatar
Uwe Schulzweida committed
35
Version 1.4.6 (17 September 2010):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
36

37
   New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
38
     * Using libtool for linking (rpath)
39
     * Changed predefined gaussian grid names from t<RES>grid to n<N>
40
       Use n80 instead of t106grid to define a Gaussian N80 grid
41
     * Changed percentile parameter type from integer to float
Uwe Schulzweida's avatar
Uwe Schulzweida committed
42
43
44
45
   New operators:
     * bandpass: Bandpass filtering
     * lowpass:  Lowpass filtering
     * highpass: Highpass filtering
46
   Changed operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
47
     * eca_gsl: adjust implementation to fit definition by ECA
48
     * expr, exprf: added missing values support
49
   Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
50
     * sellevel: copy zaxis meta data name and units
51
     * seldate: open output file only when time steps found
52
     * sellonlatbox: fix rounding error of the last lon index
Uwe Schulzweida's avatar
Uwe Schulzweida committed
53
54

Version 1.4.5.1 (05 July 2010):
55

Uwe Schulzweida's avatar
Uwe Schulzweida committed
56
57
   New features:
     * GRIB1 decode: Correct ZeroShiftError of simple packed spherical harmonics
58
   Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
59
     * wrong result of SZIP compressed GRIB1 records with 24 bit packing and a compression ratio < 1.05 
60

Uwe Schulzweida's avatar
Uwe Schulzweida committed
61
Version 1.4.5 (28 June 2010):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
62
63
64
65
66

   New operators:
     * eof: Calculate EOFs in spatial or time space
     * eoftime: Calculate EOFs in time space
     * eofspatial: Calculate EOFs in spatial space
Uwe Schulzweida's avatar
Uwe Schulzweida committed
67
     * eofcoeff: Principal coefficients of EOFs
Uwe Schulzweida's avatar
Uwe Schulzweida committed
68
69
     * consecsum: Consecutive Sum
     * consects: Consecutive Timesteps
Uwe Schulzweida's avatar
Uwe Schulzweida committed
70
     * setvals: Set list of old values to new values
Uwe Schulzweida's avatar
Uwe Schulzweida committed
71

Uwe Schulzweida's avatar
Uwe Schulzweida committed
72
Version 1.4.4 (29 April 2010):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
73

Uwe Schulzweida's avatar
Uwe Schulzweida committed
74
75
76
   New operators:

     * fldcor: correlation in grid space
Uwe Schulzweida's avatar
Uwe Schulzweida committed
77
     * timcor: correlation over time
Uwe Schulzweida's avatar
Uwe Schulzweida committed
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
     * gridbox<stat>: computes statistical values over surrounding grid boxes

   Changed operators:

     * import_binary: added support for variables with different number of levels
     * random: added optional parameter 'seed'

   Fixed bugs:

     * standard deviation: changed the result from missval to zero, if variance is zero
     * fldsum: change result from 0 to missval, if only missing values found
     * intyear: set the interpolation result always to missval, if missing values found
     * Added support for netCDF time bounds
     * sellonlatbox: parameter lon2 was not inclusiv
     * expr: added support for calculations of const/var
     * setday: writes sometimes wrong date information with GRIB result from afterburner
     * inputsrv: added level information
     * merge: added support to merge levels with datasets in netCDF format
Uwe Schulzweida's avatar
Uwe Schulzweida committed
96

97
98
99
Version 1.4.3 (22 February 2010):

   * New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
100
101
      o using CDI library version 1.4.3
        improved GRIB1 support and performance
102
103
      o changed GRIB1 default packing type of spherical harmonics to complex

Uwe Schulzweida's avatar
Uwe Schulzweida committed
104
105
106
107
108
109
110
111
112
113
Version 1.4.2 (8 February 2010):

   * Changed operators:
      o remapcon, remaplaf: speed up by fast store of links
      o replace: added support for time constant fields
      o module Genweights: use netCDF2 (64bit) for large remap weights files
      o module Zonstat, Merstat: added support for generic grids
      o module Ensstat: don't overwrite existing files
      o import_cmsaf: added more corrections for wrong projection parameter

Uwe Schulzweida's avatar
Uwe Schulzweida committed
114
115
116
Version 1.4.1 (15 December 2009):

   * New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
117
118
      o using CDI library version 1.4.1
        improved GRIB and netCDF support and performance
Uwe Schulzweida's avatar
Uwe Schulzweida committed
119
120
121
122
123
124
125
126
127
   * New operators:
      o splittabnum - Split parameter table numbers
      o sethalo - Set the left and right bounds of a field
   * Changed operators:
      o merge, mergetime: don't overwrite existing files
      o showtime: removed output of date, only print time string hh:mm:ss
   * Fixed bugs:
      o remap: bug fix for weights from gennn (set remap_extrapolate = TRUE)

Uwe Schulzweida's avatar
Uwe Schulzweida committed
128
Version 1.4.0.1 (21 October 2009):
129
130

   * Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
131
      o seltime: bug fix for scanning of input parameter
132
133
134
      o IEG format: bug fix for identification of lonlat grids
      o GRIB format: bug fix for decoding of missing values (scalar version only)

Uwe Schulzweida's avatar
Uwe Schulzweida committed
135
136
137
138
139
140
141
142
143
144
145
146
147
148
Version 1.4.0 (5 October 2009):

   * New features:
      o added support of time units 'seconds' to all operators
   * New operators:
      o Import binary data sets (via a GrADS data descriptor file) - import_binary
      o Set valid range - setvrange
   * Changed operators:
      o gridarea: added support for hexagonal GME grid and tripolar MPIOM grid
      o remapnn: added support for unstructured grids without bounds (full grid search)
      o Seasstat: added env. CDO_SEASON_START to set the start month of seasons
      o ieg format: added support for Gaussian grids
   * Fixed bugs:
      o shifttime: bug fix for negative time increments
Uwe Schulzweida's avatar
Uwe Schulzweida committed
149
      o import_cmsaf: read native float datatype
Uwe Schulzweida's avatar
Uwe Schulzweida committed
150

Uwe Schulzweida's avatar
Uwe Schulzweida committed
151
152
153
154
155
156
157
158
159
160
161
162
163
164
Version 1.3.2 (15 June 2009):

   * New features:
      o Changed compiler to ANSI C99
      o Added option -Q to sort netCDF variable names
   * Changed operators:
      o splitsel: changed the number of output digits from 3 to 6
      o remapeta: correct humidity up to highest level *nctop* where condensation is allowed
      o remapcon: change max_subseg from 1000 to 100000
   * Fixed bugs:
      o settaxis: bug fix for time increment 'months'
      o remaplaf: fixed buffer overflow
      o remapdis, remapnn: set num_srch_bins to 1 if REMAP_EXTRAPOLATE=OFF

Uwe Schulzweida's avatar
Uwe Schulzweida committed
165
Version 1.3.1 (16 April 2009):
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183

   * New features:
      o The default calendar is now set to "proleptic gregorian".
        To use a standard calendar set the environment variable CDI_CALENDAR=standard.
      o Added support for Lambert Conformal Conic projections
      o Added support for missval = NaN
   * Changed operators:
      o ml2pl: added support for Geopotential Height
      o Settime: added "seconds" support to operator "settunits", "settaxis" and "shifttime"
      o percentile: change default number of bins from 100 to 101
   * Fixed bugs:
      o import_cmsaf: bug fix for datasets with gain/offset and more than 1 timestep
      o remaplaf: bug fix for fields with missing values
      o remapnn: bug fix for distance equal zero
      o mermean: bug fix for weights from 'zonmean' (cdo mermean -zonmean)
      o chlevel: fixed bug that happens when the list of oldlev,newlev 
                 contains the same level more than once

184
Version 1.3.0 (15 January 2009):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
185
186
187
188
189
190
191

   * New features:
      o add support for Sinusoidal and Lambert Azimuthal Equal Area projections
   * New operators:
      o Second order conservative remapping - remapcon2
      o Nearest neighbor remapping - remapnn
      o Largest area fraction remapping - remaplaf
192
      o Reciprocal value - reci
Uwe Schulzweida's avatar
Uwe Schulzweida committed
193
194
195
196
   * Changed operators:
      o import_cmsaf: add support for monthly mean diurnal cycle
      o remap: set num_srch_bins to nlat/2 (speedup)
   * Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
197
      o setzaxis: changed datatype from float to double
Uwe Schulzweida's avatar
Uwe Schulzweida committed
198
199
200
201
      o sellonlatbox: bug fix for curvilinear grids
      o merge: bug fix for usage in CDO pipes
      o gridarea, gridweights: bug fix for gridboxes with delta lon >= 180 degree
      o intlevel: bug fix for datasets with missing values
202
      o yseasstd, yseasvar: fixed wrong array index
Uwe Schulzweida's avatar
Uwe Schulzweida committed
203

Uwe Schulzweida's avatar
Uwe Schulzweida committed
204
Version 1.2.1 (13 November 2008):
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221

   * New features:
      o Option '-u' to determinate whether to overwrite existing files
   * New operators:
      o Import CM-SAF files - import_cmsaf
      o Mathematical function 'power' - pow
   * Changed operators:
      o sellonlatbox: add support for grid type 'CELL' and units 'radians'
      o remapdis: add support for grid type 'CELL' without bounds (full grid search)
      o Timstat: use time axis with bounds from input
      o copy, cat: concatenate time constant fields
   * Fixed bugs:
      o zonvar: activation was missing
      o ifthen:  bug fix for datasets with different missing values
      o runmean: bug fix for datasets with missing values

Version 1.2.0 (13 August 2008):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236

   * New features:
      o add support for netCDF4 classic with deflate (option -z zip)
   * New operators:
      o Linear level interpolation - intlevel
      o Invert levels - invertlev
      o Select levels by index - sellevidx
      o Import AMSR binary files - import_amsr
   * Changed operators:
      o remapeta: add missing value support
   * Fixed bugs:
      o Operator yseasmean, yhourmean and ydaymean: bug fix for datasets with missing values
      o Module Ninfo and Showinfo: bug fix for datasets with time constant parameter only
        Affected operators: ndate, nmon, nyear, showdate, showtime, showmon, showyear

Uwe Schulzweida's avatar
Uwe Schulzweida committed
237
Version 1.1.1 (8 April 2008):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
238

Uwe Schulzweida's avatar
Uwe Schulzweida committed
239
   * New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
240
      o Module Vertint: add support for GME data
Uwe Schulzweida's avatar
Uwe Schulzweida committed
241
242

   * New operators:
243
      o Regression - regres
244
      o Grid cell area/weights - gridarea, gridweights
Uwe Schulzweida's avatar
Uwe Schulzweida committed
245
246
247
248
249
      o Z-axis description - zaxisdes

   * Fixed bugs:
      o Module Exprf: using MT safe version of bison and flex
      o Module Vertint: bug fix for input with time constant fields
Uwe Schulzweida's avatar
Uwe Schulzweida committed
250
      o Module Arithc: recalculate number of missing values
Uwe Schulzweida's avatar
Uwe Schulzweida committed
251
252
      o Operator splitsel: bug fix for multilevel/multivar datasets

Uwe Schulzweida's avatar
Uwe Schulzweida committed
253
254
Version 1.1.0 (25 January 2008):

Uwe Schulzweida's avatar
Uwe Schulzweida committed
255
   * New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
256
257
      o Support for Lambert conformal grids in GRIB format
      o Improved support for netCDF attributes
258
259
260
261

   * New operators:
      o Monthly arithmetic - monadd, monsub, monmul, mondiv

Uwe Schulzweida's avatar
Uwe Schulzweida committed
262
263
264
265
266
267
   * Fixed bugs:
      o Operator setlevel and chlevel: bug fix for usage in pipes
      o Operator cat: bug fix for large existing output files (>2GB) on 32-bit machines
      o Operator gradsdes: bug fix for monthly mean data with start day > 28
      o Operator expr: change exponent precedence from left to right

Uwe Schulzweida's avatar
Uwe Schulzweida committed
268
Version 1.0.9 (22 October 2007):
269
270
271
272

   * New operators:
      o Multi-year hourly statistical values
         - yhourmin, yhourmax, yhoursum, yhourmean, yhouravg, yhourstd, yhourvar
Uwe Schulzweida's avatar
Uwe Schulzweida committed
273
274
275
   * Changed operators:
      o ymonstat: write original order of timesteps
      o gradsdes: add GRIB level type to VARS
276
277
278
279
   * Fixed bugs:
      o Operator ifthen: bug fix for masks that varies not with time


Uwe Schulzweida's avatar
Uwe Schulzweida committed
280
Version 1.0.8 (27 June 2007):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
281
282

   * New operators:
283
      o Remap vertical hybrid level - remapeta
Uwe Schulzweida's avatar
Uwe Schulzweida committed
284
      o 9 point smoothing - smooth9
Uwe Schulzweida's avatar
Uwe Schulzweida committed
285
      o Mask region - maskregion
Uwe Schulzweida's avatar
Uwe Schulzweida committed
286
287
288
      o Split selected time steps - splitsel
      o Set range to constant - setrtoc, setrtoc2
      o Histogram - histcount, histsum, histmean, histfreq
Uwe Schulzweida's avatar
Uwe Schulzweida committed
289
290
      o Show GRIB level types - showltype
      o Select GRIB level types - selltype
Uwe Schulzweida's avatar
Uwe Schulzweida committed
291
      o Set GRIB level type - setltype
Uwe Schulzweida's avatar
Uwe Schulzweida committed
292
293
294
   * Changed operators:
      o Renamed chvar, selvar, delvar, showvar, setvar and splitvar
             to chname, selname, delname, showname, setname and splitname
295
296
297
      o Renamed selmin, selmax, selsum, selmean, selavg, selvar, selstd
             to timselmin, timselmax, timselsum, timselmean, timselavg, timselvar, timselstd
      o Renamed selpctl to timselpctl
Uwe Schulzweida's avatar
Uwe Schulzweida committed
298
      o Renamed nvar to npar and vardes to pardes
299
300
301
   * Fixed bugs:
      o Module Ymonstat gave wrong results with missing values
        Affected operators: ymonmean, ymonstd, ymonvar
Uwe Schulzweida's avatar
Uwe Schulzweida committed
302
      o Library ieglib has had a memory leak for IEG output
Uwe Schulzweida's avatar
Uwe Schulzweida committed
303

Uwe Schulzweida's avatar
Uwe Schulzweida committed
304
Version 1.0.7 (8 March 2007):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
305
306

   * New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
307
308
      o Divergence and vorticity to U and V wind (linear) - dv2uvl
      o U and V wind to divergence and vorticity (linear) - uv2dvl
Uwe Schulzweida's avatar
Uwe Schulzweida committed
309
      o Select single month - selsmon
Uwe Schulzweida's avatar
Uwe Schulzweida committed
310
311
312
313
314
315
   * Changed operators:
      o tchill is renamed to wct
      o eca_strwind is split into eca_strwin, eca_strbre, eca_strgal and eca_hurr
   * Fixed bugs:
      o fldmax has had wrong results if the field has
        missing values and all other values are less than zero.
Uwe Schulzweida's avatar
Uwe Schulzweida committed
316

Uwe Schulzweida's avatar
Uwe Schulzweida committed
317
318
319
320
321
322
323
324
Version 1.0.6 (12 December 2006):

   * New operators:
      o Variance for all statistic modules
         - vertvar, timvar, yearvar, monvar, dayvar, hourvar,
           runvar, seasvar, selvar, ydayvar, ydrunvar, ymonvar, yseasvar

Developer version 1.0.5 (30 November 2006):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
325
326

  * New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
327
328
329
330
331
      o Show file format - showformat 
      o Windchill temperature - tchill
      o Humidity index - hi
      o ECA Indices of Daily Temperature and Precipitation Extremes
        - eca_* (37 different indices!)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
332

Uwe Schulzweida's avatar
Uwe Schulzweida committed
333
Developer version 1.0.4 (7 November 2006):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
334
335

  * New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
336
337
338
339
340
341
342
343
      o Multi-year daily running statistical values
         - ydrunmin, ydrunmax, ydrunsum, ydrunmean, ydrunavg, ydrunstd
      o Percentile values for different time ranges
         - timpctl, hourpctl, daypctl, monpctl, yearpctl, selpctl, runpctl, seaspctl
      o Multi-year percentile values
         - ydaypctl, ymonpctl, yseaspctl, ydrunpctl
      o Ensemble and field percentiles
         - enspctl, fldpctl, zonpctl, merpctl
Uwe Schulzweida's avatar
Uwe Schulzweida committed
344

Uwe Schulzweida's avatar
Uwe Schulzweida committed
345
Developer version 1.0.3 (3 November 2006):
346
347

  * New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
348
349
      o Time interpolation - intntime 
      o Backward transformation of velocity components U and V from MPIOM - mrotuvb
350

351
352
353
354
355
356
357
Version 1.0.2 (18 September 2006):

  * Rename operator gradsdes to gradsdes1 and set the alias gradsdes to gradsdes2
  * Remapping of rotated lonlat grids with remapbi* and genbi* has been changed at the bounds.
    Generated interpolation weights with older CDO versions can't be used anymore and must
    be recalculated with genbi*.
  * New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
358
359
360
      o ydaysum - Multi-year daily sum
      o ymonsum - Multi-year monthly sum
      o yseassum - Multi-year seasonally sum
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
      o int - Convert to integer value
      o nint - Convert to nearest integer value

Version 1.0.1 (1 August 2006):

  * New CDO option '-b' to set the number of bits for the output precision
  * New operators:
      o selstdname - Select standard names
      o showstdname - Show standard names
      o setclonlatbox - Set a longitude/latitude box to constant [Etienne Tourigny]
      o setcindexbox - Set an index box to constant

Version 1.0.0 (15 June 2006):

  * New operators:
      o dv2ps - Divergence and vorticity to velocity potential and stream function

Version 0.9.13 (4 May 2006):

  * New operators:
      o mergetime - Merge datasets sorted by date and time
      o input, inputext, inputsrv - ASCII input
      o abs - Absolute value
      o atan2 - Arc tangent of two fields

Version 0.9.12 (6 March 2006):

  * New operators:
      o uv2dv, dv2uv - Wind transformation

Version 0.9.11 (1 Februar 2006):

  * Support of GME grids
  * New operators:
      o selmin, selmax, selsum, selmean, selavg, selstd - Time range statistic
      o sp2gpl, gp2spl - Spectral transformation of TL-Model data (e.g. ERA40)
      o replace - Replace variables

Version 0.9.10 (19 December 2005):

  * Support of REMO IEG format
  * New operators:
      o ifthenelse - IF ifile1 THEN ifile2 ELSE ifile3

Version 0.9.9 (19 October 2005):

  * New operators:
      o ensmin, ensmax, enssum, ensmean, ensavg, ensstd, ensvar - Ensemble statistic
      o gradsdes2 - Creates a GrADS data descriptor file with a portable GrADS map
      o enlarge - Enlarge all fields to a user given grid
      o gencon - Generate conservative interpolation weights
      o remap - Remapping with the interpolation weights from a netCDF file 

Version 0.9.8 (19 July 2005):

  * New operators:
      o setlevel - Set level
      o chlevel - Change level 
      o chlevelc - Change level of one code
      o chlevelv - Change level of one variable

Version 0.9.7 (26 May 2005):

  * New operators:
      o setcalendar - Set calendar
      o masklonlatbox - Mask lon/lat box
      o maskindexbox - Mask index box
      o muldpm - Multiply with days per month
      o divdpm - Divide with days per month
 

Version 0.9.6 (4 April 2005):

  * Support of rotated regular grids.
  * New operator:
      o detrend - Linear detrending of time series. 

Version 0.9.4 (3 Jan 2005):
 
  * Support of PINGO grid description files. 
  * New operator: 
      o gradsdes - Creates a GrADS data descriptor file.
                   Supported file formats are GRIB, SERVICE and EXTRA.