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

Uwe Schulzweida's avatar
Uwe Schulzweida committed
4
Version 1.6.6 (27 November 2014):
5

Uwe Schulzweida's avatar
Uwe Schulzweida committed
6
7
   New operators:
     * outputtab: table output
8
   Fixed bugs:
9
10
     * option -t table: segmentation fault if parameter table entry longname is missing
     * merge: check number of timesteps [Bug #5338]
11
     * seasmean: sets all time_bnds to the same values [Bug #5329]
12
13
14
     * histcount: doesn't recognize missing values
     * filesdes: doesn't work for GRIB2 files [Bug #5307]

15
Version 1.6.5 (23 October 2014):
16

17
18
19
   New operators:
     * distgrid: distribute horizonal grid
     * collgrid: collect horizontal grid
20
   Changed operators:
21
     * cat: added support for option -O (overwrite existing output file)
22
     * remaplaf: changed calculation of weights from SCRIP to YAC
23
24
   Fixed bugs:
     * gridarea: added support for concave grid cells
25
     * gradsdes: added support for option 365_day_calendar
26
     * import_binary: option 365_day_calendar does not work
27
28
     * select: wrong result when select only one timestep

Uwe Schulzweida's avatar
Uwe Schulzweida committed
29
Version 1.6.4 (26 June 2014):
30
31

   New features:
32
33
     * Option --history: Do not append to netCDF "history" global attribute
     * Option --netcdf_hdr_pad <nbr>: Pad netCDF output header with nbr bytes
34
   New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
35
36
     * setpartabn: set parameter table by name
     * setpartabp: set parameter table by parameter ID
37
38
     * sealevelpressure: sea level pressure
   Changed operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
39
     * Sinfo: changed format of grid and zaxis section
Uwe Schulzweida's avatar
Uwe Schulzweida committed
40
     * Filter: disable zero-padding
41
     * diff: print number of different values
42
     * Ymonstat: sorts output by month of year
Uwe Schulzweida's avatar
Uwe Schulzweida committed
43
   Fixed bugs:
44
     * eof3d: set sum of weights to 1
Uwe Schulzweida's avatar
Uwe Schulzweida committed
45
46
     * eofcoeff: remove scaling with grid cell area weights
     * eofcoeff3d: remove scaling with grid cell area weights
47

48
Version 1.6.3 (18 February 2014):
49

50
   New features:
51
     * remapbil, remapbic, remapdis, remapnn: performance optimization for regular 2D source grids
52
     * gradsdes: added support for GRIB files >2GB
53
54
     * eca_csu: added number of csu periods with more than 5days per time period
     * eca_cfd: added number of cfd periods with more than 5days per time period
55
     * expr: select variables by name
56
57
   Changed operators:
     * gradsdes: added parameter map_version and removed specific operators gradsdes1 and gradsdes2
58
   Fixed bugs:
59
     * gradsdes: changed LCC to LCCR in PDEF definition [Bug #4344]
60
     * cat: "Segmentation fault" if the output file already exist [Bug #4291]
61
62
     * delete: parameter level does not work [Bug #4216]

Uwe Schulzweida's avatar
Uwe Schulzweida committed
63
Version 1.6.2 (12 November 2013):
64

65
66
67
   New features:
     * select: added support for key >timestep_of_year<
     * mastrfu: added missing value support
68
     * splitmon: added optional parameter to set the format string for the month
69
70
   Fixed bugs:
     * selyear: wrong result for negative years [Bug #3836]
71
     * eca_gsl: start date of growing season is wrong if the length of growing season is zero
72

73
Version 1.6.1 (27 June 2013):
74

75
76
   New features:
     * support of blanks in filenames and parameter
77
   Changed operators:
78
     * gradsdes: added support for netCDF files
79
     * Info: add chunking information of netcdf files (only with verbose output) [Feature #3489]
80
     * select: added support for key >hour<
81
82
   Fixed bugs:
     * fldcor: check missing value of 2. input file
83
     * enscrps: wrong result since CDO version 1.5.6 [Bug #3403]
84
     * selmon: month not found for negative years [Bug #3439]
85
     * shifttime: wrong result for negative hours and days [Bug #3440]
86
     * inttime: removes last time step [Bug #3611]
87

Uwe Schulzweida's avatar
Uwe Schulzweida committed
88
Version 1.6.0 (14 March 2013):
89
90

   New operators:
91
     * select: Select fields from an unlimited number of input files
Uwe Schulzweida's avatar
Uwe Schulzweida committed
92
     * mergegrid: Merge horizontal grids
Uwe Schulzweida's avatar
Uwe Schulzweida committed
93
     * yearmonmean: yearly mean from monthly data
Uwe Schulzweida's avatar
Uwe Schulzweida committed
94
     * duplicate: Duplicates a dataset
Uwe Schulzweida's avatar
Uwe Schulzweida committed
95
96
     * adisit: Potential temperature to in-situ temperature
     * rhopot: Calculates potential density
97
   Changed operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
98
99
100
     * setcalendar: changed CDO calendar names to CF calendar names (Feature #3123)
                    (standard, proleptic_gregorian, 360_day, 365_day, 366_day)
     * masklonlatbox: added support for curvilinear grids
101
     * diff: print only records that differ
102
   Fixed bugs:
103
     * sellonlatbox: wrong result with overlapped lonlatbox on curvilinear grids
Uwe Schulzweida's avatar
Uwe Schulzweida committed
104
     * ensrkhisttime: fixed memory fault
105
     * expr: wrong result for operation var1/var2 where var2 = 0
106
     * Runstat: added support for time bounds (Bug #3127)
107
     * merge: uses size of the first input file for the output buffer
108

Uwe Schulzweida's avatar
Uwe Schulzweida committed
109
Version 1.5.9 (17 December 2012):
110
111
112

   New features:
     * cdo option -z zip: added optional compression level -z zip[_1-9]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
113
     * cdo: added option -k <chunktype> to set the chunk type to auto, grid or lines
114
     * Added workaround to combine CDO operators with the result of mergetime, merge, copy, cat, ens<STAT>
Uwe Schulzweida's avatar
Uwe Schulzweida committed
115
       - use one input parameter with wildcards in single quotes, e.g.: 'ifile?_*' 
116
117
   Changed operators:
     * enlarge: added missing value support
118
   Fixed bugs:
119
     * gradsdes: failed
120
     * sellevel: loosing level bounds
121
122
123
     * wrong result for user defined lonlat grids with xfirst < 0
       (This bug was introduced in CDO version 1.5.8)

124
Version 1.5.8 (30 October 2012):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
125

126
   New features:
127
     * Added support for netCDF4(HDF5) formatted SCRIP grid description files
128
129
     * added CDO option -L to lock all I/O calls. This option is neccessary if external I/O libraries like 
       netCDF4 (HDF5) were installed without thread-safe support.
130
131
132
   New operators:
     * setunit: Set variable unit
     * chunit:  Change variable unit
Uwe Schulzweida's avatar
Uwe Schulzweida committed
133
   Changed operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
134
     * Info:  changed output format
Uwe Schulzweida's avatar
Uwe Schulzweida committed
135
     * Sinfo: changed output format
Uwe Schulzweida's avatar
Uwe Schulzweida committed
136
     * Diff:  changed output format
137
   Fixed bugs:
138
     * remaplaf: fixed bug in binary_search_int()
139
     * eca_rr1: result has wrong long name attribute
Uwe Schulzweida's avatar
Uwe Schulzweida committed
140

141
142
143
Version 1.5.6.1 (26 July 2012):

   Fixed bugs:
144
145
146
147
148
149
150
     * Wrong results with the following statistical functions:
         *mean, *avg, *sum, *var, *std
       only if all of the following conditions are complied:
         - x86_64 machine (tornado, squall, thunder, lizard)
         - dataset has no missing values
         - the horizontal grid size is > 1 and not multiple of 8
       This bug was introduced in CDO version 1.5.6.
151

152
Version 1.5.6 (23 July 2012):
153

154
155
156
157
158
   New features:
     * Runstat: OpenMP parallelization over parameter nts
     * import_binary: added support for 64-bit floats via extra OPTION keyword flt64 
   New operators:
     * showunit: show unit of a parameter
159
   Changed operators:
160
     * Arith: added support for 3D masks
161
162
     * mastrfu: use grid coordinates from input file
   Fixed bugs:
163
     * ymonsub: added support for time bounds
164
     * Wrong netCDF output for unscaled uint8, int8, int16, int32 variables [Bug #2516]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
165

Uwe Schulzweida's avatar
Uwe Schulzweida committed
166
Version 1.5.5 (15 May 2012):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
167
168
169

   New operators:
     * yhouradd, yhoursub, yhourmul, yhourdiv: Multi-year hourly arithmetic
170
171
   Fixed bugs:
     * ECA operators: wrong result if missing value is not the default missing value (-9e33)
172
     * ml2pl: added support for GRIB2 parameter names
173
     * replace: removed debug output 
Uwe Schulzweida's avatar
Uwe Schulzweida committed
174

Uwe Schulzweida's avatar
Uwe Schulzweida committed
175
Version 1.5.4 (30 January 2012):
176

177
178
   New features:
     * setgridtype: added parameter lonlat to convert curvilinear to regular lon/lat grids
179
     * remapcon: added env REMAP_AREA_MIN, to set the minimum area fraction
180
181
   New operators:
     * timcovar: covariance over time
182
     * fldcovar: covariance in grid space
183
   Fixed bugs:
184
     * splitsel: added support for constant fields [Bug #1701]
185
     * combination of selection commands (e.g. selmon -selyear) do not terminate, if no result found [Bug #1640]
186

187
Version 1.5.3 (20 October 2011):
188

189
   New features:
190
     * Variable input parameter for ECA operators: eca_cdd, eca_cwd, eca_rr1, eca_sdii
191
   Fixed bugs:
192
     * deflate compression with netCDF4 doesn't work (option: -z zip)
193
     * sellonlatbox: correct lon bounds if necessary
Uwe Schulzweida's avatar
Uwe Schulzweida committed
194
     * ifthen, ifthenelse: uses only the first time step of the first input file
195
     * module Monarith (monadd, monsub, monmul, mondiv): wrong result for 3D variables
196

Uwe Schulzweida's avatar
Uwe Schulzweida committed
197
Version 1.5.2 (22 August 2011):
198
199
200

   New features:
     * replace: added support to replace single levels
201
202
203
204
   Changed operators:
     * remapeta: Changed minimum pressure level for condensation from 1000Pa to 0Pa.
                 Use the environment variable REMAPETA_PTOP to set the minimum pressure level for condensation. 
                 Above this level the humidity is set to the constant 1.E-6.
205
   Fixed bugs:
206
     * invertlat: bug fix for CURVILINEAR grids
207
     * ymon<stat>: preserve time axis attributes (type and calendar)
208
     * import_binary: added support for OPTION ZREV
209
210
     * expr/exprf: wrong result for expression 'constant-field' and 'constant/field' (e.g. 1-field)
                   This bug was introduced in CDO version 1.5.1.
211
212
213
214
215
     * eof, eoftime, eofspatial, eof3d - Empirical Orthogonal Functions: 
            There was a bug in the calculation of the Frobenius norm, which has only been triggered in some cases
            when using a low precision. The normalization has been changed thus that the eigenvectors are not weighted 
            and their absolute is 1. The default settings for convergence have been changed to be more conservative:
            CDO_SVD_MODE=jacobi    MAX_JACOBI_ITER=12   FNORM_PRECISION=1.e-12
216

Uwe Schulzweida's avatar
Uwe Schulzweida committed
217
Version 1.5.1 (12 July 2011):
218

219
220
   New features:
     * Added support for netCDF4 classic format; option -f nc4c
221
     * import_binary: Added support for 1 and 2 byte integer
222
   New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
223
     * intlevel3d: vertical interpolation to/from 3d vertical coordinates
224
225
226
227
228
     * ensrkhistspace: Ranked Histogram averaged over time
     * ensrkhisttime:  Ranked Histogram averaged over space
     * ensroc:  Ensemble Receiver Operating characteristics
     * enscrps: Ensemble CRPS and decomposition
     * ensbrs:  Ensemble Brier score
229
   Fixed bugs:
230
     * Exprf: wrong result for missing values != (double) -9.e33
231
     * detrend: added support for time bounds
232
     * Filter: added support for time bounds
233
     * eofspatial: integer overflow; wrong result for grid size > 46340
234
     * eca_*: use the input calendar for the output streams
235

Uwe Schulzweida's avatar
Uwe Schulzweida committed
236
Version 1.5.0 (15 March 2011):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
237

Uwe Schulzweida's avatar
Uwe Schulzweida committed
238
   New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
239
     * GRIB2 support via ECMWF GRIB_API
Uwe Schulzweida's avatar
Uwe Schulzweida committed
240
     * Added support for netCDF level bounds
241
     * Added option -O to overwrite existing output file (only for ens<STAT>, merge, mergetime)
242
243
244
   New operators:
     * selparam: Select parameters by identifier
     * delparam: Delete parameters by identifier
245
     * splitparam: Split parameter identifiers
246
     * chparam: Change parameter identifier
247
248
   Changed operators:
     * expr: added functions abs(), int(), nint(), sqr()
249
250
251
     * sinfo: changed output of table and code number to parameter identifier
     * info:  changed output of code number to parameter identifier
     * diff:  changed output of code number to parameter identifier
Uwe Schulzweida's avatar
Uwe Schulzweida committed
252
   Fixed bugs:
253
     * sellonlatbox: does not work as expected when selecting all longitudes
254
     * sellonlatbox: initialization missing for unstructured grids
255
     * ml2pl and ml2hl: wrong result if input file contains full *and* half level data
256
     * trend and detrend: integer overflow; wrong result for ntimesteps > 46340
257
     * spcut: only correct results with continuous wave numbers starting at 1
258
     * remaplib: fixed data race in calculation of bin_addr (OpenMP)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
259

260
Version 1.4.7 (06 January 2011):
261

262
263
   New features:
     * improved support for netCDF output from WRF model (import time and grid variables)
264
265
   New operators:
     * ydayadd, ydaysub, ydaymul, ydaydiv: Multi-year daily arithmetic
266
     * eca_pd: Precipitation days index per time period
267
     * dv2ps: Divergence and vorticity to velocity potential and stream function
268
269
   Changed operators:
     * import_cmsaf: added time information also for time constant fields
270
   Fixed bugs:
271
272
     * eof: fix memory access violation
     * eofcoeff: fix memory access violation
273
     * fldmean: gives wrong result for grid units [radian]
274
     * Yseasstat: bug fix for datasets with time constant fields
275
276
     * sellevel: fix problem with hybrid model levels and netCDF output
     * sellonlatbox: fix rounding error of the last lon index
277
     * Settime: bug fix for time independent variables in combination with other operators (pipes)
278

Uwe Schulzweida's avatar
Uwe Schulzweida committed
279
Version 1.4.6 (17 September 2010):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
280

281
   New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
282
     * Using libtool for linking (rpath)
283
     * Changed predefined gaussian grid names from t<RES>grid to n<N>
284
       Use n80 instead of t106grid to define a Gaussian N80 grid
285
     * Changed percentile parameter type from integer to float
Uwe Schulzweida's avatar
Uwe Schulzweida committed
286
287
288
289
   New operators:
     * bandpass: Bandpass filtering
     * lowpass:  Lowpass filtering
     * highpass: Highpass filtering
290
   Changed operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
291
     * eca_gsl: adjust implementation to fit definition by ECA
292
     * expr, exprf: added missing values support
293
   Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
294
     * sellevel: copy zaxis meta data name and units
295
     * seldate: open output file only when time steps found
296
     * sellonlatbox: fix rounding error of the last lon index
Uwe Schulzweida's avatar
Uwe Schulzweida committed
297
298

Version 1.4.5.1 (05 July 2010):
299

Uwe Schulzweida's avatar
Uwe Schulzweida committed
300
301
   New features:
     * GRIB1 decode: Correct ZeroShiftError of simple packed spherical harmonics
302
   Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
303
     * wrong result of SZIP compressed GRIB1 records with 24 bit packing and a compression ratio < 1.05 
304

Uwe Schulzweida's avatar
Uwe Schulzweida committed
305
Version 1.4.5 (28 June 2010):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
306
307
308
309
310

   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
311
     * eofcoeff: Principal coefficients of EOFs
Uwe Schulzweida's avatar
Uwe Schulzweida committed
312
313
     * consecsum: Consecutive Sum
     * consects: Consecutive Timesteps
Uwe Schulzweida's avatar
Uwe Schulzweida committed
314
     * setvals: Set list of old values to new values
Uwe Schulzweida's avatar
Uwe Schulzweida committed
315

Uwe Schulzweida's avatar
Uwe Schulzweida committed
316
Version 1.4.4 (29 April 2010):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
317

Uwe Schulzweida's avatar
Uwe Schulzweida committed
318
319
320
   New operators:

     * fldcor: correlation in grid space
Uwe Schulzweida's avatar
Uwe Schulzweida committed
321
     * timcor: correlation over time
Uwe Schulzweida's avatar
Uwe Schulzweida committed
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
     * 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
340

341
342
343
Version 1.4.3 (22 February 2010):

   * New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
344
345
      o using CDI library version 1.4.3
        improved GRIB1 support and performance
346
347
      o changed GRIB1 default packing type of spherical harmonics to complex

Uwe Schulzweida's avatar
Uwe Schulzweida committed
348
349
350
351
352
353
354
355
356
357
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
358
359
360
Version 1.4.1 (15 December 2009):

   * New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
361
362
      o using CDI library version 1.4.1
        improved GRIB and netCDF support and performance
Uwe Schulzweida's avatar
Uwe Schulzweida committed
363
364
365
366
367
368
369
370
371
   * 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
372
Version 1.4.0.1 (21 October 2009):
373
374

   * Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
375
      o seltime: bug fix for scanning of input parameter
376
377
378
      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
379
380
381
382
383
384
385
386
387
388
389
390
391
392
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
393
      o import_cmsaf: read native float datatype
Uwe Schulzweida's avatar
Uwe Schulzweida committed
394

Uwe Schulzweida's avatar
Uwe Schulzweida committed
395
396
397
398
399
400
401
402
403
404
405
406
407
408
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
409
Version 1.3.1 (16 April 2009):
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427

   * 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

428
Version 1.3.0 (15 January 2009):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
429
430
431
432
433
434
435

   * 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
436
      o Reciprocal value - reci
Uwe Schulzweida's avatar
Uwe Schulzweida committed
437
438
439
440
   * 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
441
      o setzaxis: changed datatype from float to double
Uwe Schulzweida's avatar
Uwe Schulzweida committed
442
443
444
445
      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
446
      o yseasstd, yseasvar: fixed wrong array index
Uwe Schulzweida's avatar
Uwe Schulzweida committed
447

Uwe Schulzweida's avatar
Uwe Schulzweida committed
448
Version 1.2.1 (13 November 2008):
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465

   * 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
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480

   * 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
481
Version 1.1.1 (8 April 2008):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
482

Uwe Schulzweida's avatar
Uwe Schulzweida committed
483
   * New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
484
      o Module Vertint: add support for GME data
Uwe Schulzweida's avatar
Uwe Schulzweida committed
485
486

   * New operators:
487
      o Regression - regres
488
      o Grid cell area/weights - gridarea, gridweights
Uwe Schulzweida's avatar
Uwe Schulzweida committed
489
490
491
492
493
      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
494
      o Module Arithc: recalculate number of missing values
Uwe Schulzweida's avatar
Uwe Schulzweida committed
495
496
      o Operator splitsel: bug fix for multilevel/multivar datasets

Uwe Schulzweida's avatar
Uwe Schulzweida committed
497
498
Version 1.1.0 (25 January 2008):

Uwe Schulzweida's avatar
Uwe Schulzweida committed
499
   * New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
500
501
      o Support for Lambert conformal grids in GRIB format
      o Improved support for netCDF attributes
502
503
504
505

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

Uwe Schulzweida's avatar
Uwe Schulzweida committed
506
507
508
509
510
511
   * 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
512
Version 1.0.9 (22 October 2007):
513
514
515
516

   * New operators:
      o Multi-year hourly statistical values
         - yhourmin, yhourmax, yhoursum, yhourmean, yhouravg, yhourstd, yhourvar
Uwe Schulzweida's avatar
Uwe Schulzweida committed
517
518
519
   * Changed operators:
      o ymonstat: write original order of timesteps
      o gradsdes: add GRIB level type to VARS
520
521
522
523
   * Fixed bugs:
      o Operator ifthen: bug fix for masks that varies not with time


Uwe Schulzweida's avatar
Uwe Schulzweida committed
524
Version 1.0.8 (27 June 2007):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
525
526

   * New operators:
527
      o Remap vertical hybrid level - remapeta
Uwe Schulzweida's avatar
Uwe Schulzweida committed
528
      o 9 point smoothing - smooth9
Uwe Schulzweida's avatar
Uwe Schulzweida committed
529
      o Mask region - maskregion
Uwe Schulzweida's avatar
Uwe Schulzweida committed
530
531
532
      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
533
534
      o Show GRIB level types - showltype
      o Select GRIB level types - selltype
Uwe Schulzweida's avatar
Uwe Schulzweida committed
535
      o Set GRIB level type - setltype
Uwe Schulzweida's avatar
Uwe Schulzweida committed
536
537
538
   * Changed operators:
      o Renamed chvar, selvar, delvar, showvar, setvar and splitvar
             to chname, selname, delname, showname, setname and splitname
539
540
541
      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
542
      o Renamed nvar to npar and vardes to pardes
543
544
545
   * Fixed bugs:
      o Module Ymonstat gave wrong results with missing values
        Affected operators: ymonmean, ymonstd, ymonvar
Uwe Schulzweida's avatar
Uwe Schulzweida committed
546
      o Library ieglib has had a memory leak for IEG output
Uwe Schulzweida's avatar
Uwe Schulzweida committed
547

Uwe Schulzweida's avatar
Uwe Schulzweida committed
548
Version 1.0.7 (8 March 2007):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
549
550

   * New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
551
552
      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
553
      o Select single month - selsmon
Uwe Schulzweida's avatar
Uwe Schulzweida committed
554
555
556
557
558
559
   * 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
560

Uwe Schulzweida's avatar
Uwe Schulzweida committed
561
562
563
564
565
566
567
568
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
569
570

  * New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
571
572
573
574
575
      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
576

Uwe Schulzweida's avatar
Uwe Schulzweida committed
577
Developer version 1.0.4 (7 November 2006):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
578
579

  * New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
580
581
582
583
584
585
586
587
      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
588

Uwe Schulzweida's avatar
Uwe Schulzweida committed
589
Developer version 1.0.3 (3 November 2006):
590
591

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

595
596
597
598
599
600
601
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
602
603
604
      o ydaysum - Multi-year daily sum
      o ymonsum - Multi-year monthly sum
      o yseassum - Multi-year seasonally sum
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
      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.