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

Uwe Schulzweida's avatar
Uwe Schulzweida committed
4 5
Improvement

Uwe Schulzweida's avatar
Uwe Schulzweida committed
6 7
Version 1.9.10 (29 January 2021):

8 9
   New features:
     * Added option --ignore_time_bounds to ignore time bounds for time range statistics
Uwe Schulzweida's avatar
Uwe Schulzweida committed
10
   Fixed bugs:
11
     * timselmean: failed with variables on different grids [Bug #9978]
12
     * Ymonarith: failed with variables on different grids
Uwe Schulzweida's avatar
Uwe Schulzweida committed
13 14 15 16
     * Detrend: wrong result with parameter equal=false [Bug #9961]
     * Fldstat: optional parameter weights failed
     * Wind: check that numLPE is > 0

Uwe Schulzweida's avatar
Uwe Schulzweida committed
17 18 19
Version 1.9.9 (29 October 2020):

   New features:
20
     * New environment variable CDO_DOWNLOAD_PATH: Path where CDO stores downloads
21
     * New environment variable CDO_ICON_GRIDS: Root directory of the ICON grids (e.g. /pool/data/ICON)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
22
     * splitsel: added support for negative skip values [Feature #9798]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
23 24
     * showattribute: added wildcard support
     * Diff: added option maxcount=<num>: Stop after num different fields
Uwe Schulzweida's avatar
Uwe Schulzweida committed
25
     * Select: added parameter dom (day of month, e.g. 29feb)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
26
     * Ymonstat: added support for option timestat_date
Uwe Schulzweida's avatar
Uwe Schulzweida committed
27
   New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
28
     * Yearly arithmetic: yearadd, yearsub, yearmul, yeardiv
Uwe Schulzweida's avatar
Uwe Schulzweida committed
29
     * apply: Apply an operator on each input file
Uwe Schulzweida's avatar
Uwe Schulzweida committed
30
     * gh2hl: Interpolate 3D geometric height to height levels
Uwe Schulzweida's avatar
Uwe Schulzweida committed
31
     * pack: Pack data (NetCDF attribute add_offset/scale_factor)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
32
     * verifygrid: Verify grid coordinates
Uwe Schulzweida's avatar
Uwe Schulzweida committed
33 34
     * addtrend: Add trend
     * isosurface: Extract isosurface
35 36
   Changed operators:
     * intlevel3d: changed interface
Uwe Schulzweida's avatar
Uwe Schulzweida committed
37
   Fixed bugs:
38
     * Selbox: wrong result of grid cell area (if present) on curvilinear grids
39
     * sellonlatbox,-180,180,-90,90 "breaks" lon_bnds [Bug #9801]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
40
     * Ensval: does not work
41
     * intyear: doesn't work; segmentation fault
Uwe Schulzweida's avatar
Uwe Schulzweida committed
42 43
     * intlevel3d: wrong result since v1.9.4 [Bug #9468]
     * dv2uv, uv2dv: wrong result works only on first level since v1.9.8 [Bug #9441]
44
     * Vertintap: process only 3D variables on hybrid sigma height coordinates with correct number of levels
Uwe Schulzweida's avatar
Uwe Schulzweida committed
45 46
     * Arith: Inconsistent missing value handling in v1.9.8 [Bug #9396]

47
Version 1.9.8 (29 October 2019):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
48 49

   New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
50
     * Proj 4 to 6 API Migration
51
     * smooth/smooth9: Added support for gridtype PROJECTION [Feature #9202]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
52
     * Expr: Added function rand(x) and isMissval(x)
53 54
     * Remap: Added support for Gaussian reduced grids
     * trend, detrend: Added parameter equal=false for unequal timesteps
55
     * Option --no_remap_weights: Switch off generation of remap weights
Uwe Schulzweida's avatar
Uwe Schulzweida committed
56
   New operators:
57
     * deltat: Difference between timesteps
Uwe Schulzweida's avatar
Uwe Schulzweida committed
58
   Fixed bugs:
59 60
     * ensavg: Wrong result if data contains missing values (same result as ensmean)
     * Ydrunstat: Fix seg. fault
Uwe Schulzweida's avatar
Uwe Schulzweida committed
61

Uwe Schulzweida's avatar
Uwe Schulzweida committed
62
Version 1.9.7 (7 June 2019):
63

Uwe Schulzweida's avatar
Uwe Schulzweida committed
64 65 66
   New features:
     * added option --worker <num>: Number of worker to decode/decompress GRIB records
     * added option --pedantic: Warnings count as errors
Uwe Schulzweida's avatar
Uwe Schulzweida committed
67
     * Yhourstat: added time bounds support
Uwe Schulzweida's avatar
Uwe Schulzweida committed
68
     * expr: added support for ctimestep() in ternary conditional
69 70 71
   New operators:
     * yearmaxidx: Yearly maximum indices
     * yearminidx: Yearly minimum indices
Uwe Schulzweida's avatar
Uwe Schulzweida committed
72 73 74 75 76 77 78 79 80 81 82 83
   Changed operators:
     * for: renamed to seq
   Fixed bugs:
     * Build failed with GCC 9 (OpenMP data sharing) [Bug #9038]
     * compile error: EXIT_FAILURE not declared in cdoDebugOutput.h [Bug #8899]
     * eca_gsl: the 2nd input file was not closed [Bug #9033]
     * ensrkhisttime/ensrkhistspace: don't work
     * detrend: seg. fault if time series containts time constant fields
     * inttime, intntime: handling of missing values is incorrect
     * select: combination of some parameter (var, grid, zaxis) doesn't work
     * expr:zonSTAT: wrong result
     * expr::vertmean: fix wrong warning message about layer bounds
Uwe Schulzweida's avatar
Uwe Schulzweida committed
84
     * mergetime: SKIP_SAME_TIME doesn't work in release 1.9.6
85

Uwe Schulzweida's avatar
Uwe Schulzweida committed
86
Version 1.9.6 (7 February 2019):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
87 88 89 90

   New features:
     * Added support for polar stereographic projection
     * Download ICON grids if necessary (http://icon-downloads.mpimet.mpg.de)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
91 92 93 94 95
     * Added global option --eccodes:  Use ecCodes to decode/encode GRIB1 messages
     * Operator chname: Added support to change coordinate names [Feature #8746]
     * Operator diff: set exit status to 1 if inputs differ
     * Renamed remapcon/gencon to remapscon/genscon
     * Replaced remapcon/gencon by remapycon/genycon
Uwe Schulzweida's avatar
Uwe Schulzweida committed
96
   New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
97
     * vars<stat> - Statistical values over all variables
Uwe Schulzweida's avatar
Uwe Schulzweida committed
98 99 100 101 102
     * minc - Minimum of a field and a constant
     * maxc - Maximum of a field and a constant
   Fixed bugs:
     * Gradsdes.test fails [Bug #8614]
     * Option --reduce_dim gives wrong result on time dimension [Bug #8615]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
103
     * Module Selbox: added support for grid cell area
104
     * Operator setgridtype,regular: set nx=4*N+16 for octahedral reduced Gaussian grids
Uwe Schulzweida's avatar
Uwe Schulzweida committed
105 106 107 108
     * Operator distgrid: seg. fault if last segment is larger than first segment
     * Operator sellonlatbox: abort if grid coordinates missing
     * Operator masklonlatbox: wrong result if lon1 > first lon || lon2 < last lon (bug introduce in 1.9.4) [Bug #8695]
     * Operator maskindexbox: wrong result if idx1 > 1 || idx2 < nlon (bug introduce in 1.9.4) [Bug #8695]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
109
     * Absolute time axis (-a) returns wrong units in operator chain for NetCDF [Bug #8777]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
110
     * Relative time axis (-r) returns wrong first timestep in operator chain for NetCDF
Uwe Schulzweida's avatar
Uwe Schulzweida committed
111
     * Wrong result with fldmean on zonal mean data (bug introduce in 1.9.5) [Bug #8834]
112
     * OPeNDAP support was broken in 1.9.5 [Bug #9761]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
113 114

Version 1.9.5 (9 August 2018):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
115 116 117

   New features:
     * Changed type of date from 32 to 64-bit integer to support years > 214748
Uwe Schulzweida's avatar
Uwe Schulzweida committed
118
     * remapycon: optimized by changing cell search method
Uwe Schulzweida's avatar
Uwe Schulzweida committed
119 120 121 122 123 124 125
     * expr: added support for zon<STAT> functions
     * expr: added function sellevelrange() and sellevidxrange()
     * expr: added support for constants
     * gridfile: added extension ":N" to select grid number N from data file
   New operators:
     * dhour<stat> - Multi-day hourly statistics
   Fixed bugs:
126
     * seldate: segmentation fault (bug introduce in 1.9.4) [Bug #8499]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
127 128
     * select: wrong timestamp when combining select with selyear (bug introduce in 1.8.1) [Bug #8576]
     * gradsdes: bug fix for rotated lon/lat grids
Uwe Schulzweida's avatar
Uwe Schulzweida committed
129 130 131
     * silent option produces newlines [Bug #8538]
     * remapnn/remapdis: wrong result with regular 2D source grids if nlat > nlon  [Bug #8498]

Uwe Schulzweida's avatar
Uwe Schulzweida committed
132
Version 1.9.4 (9 May 2018):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
133 134 135 136 137 138 139 140 141

   New features:
     * Large data support: changed type of gridsize from 32 to 64-bit integer
     * remapbil, remapbic, remapnn, remapdis: optimized by changing point search method
     * Fldstat, Vertstat: added option weight=false to disable weighting
   Fixed bugs:
     * option -r doesn't work [Bug #8334]
     * enspctl: changed parameter type from int to float [Bug #8386]
     * segfault with chained operators on timeseries data [Bug #8230]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
142
     * setattribute: added support for \n in text attributes
Uwe Schulzweida's avatar
Uwe Schulzweida committed
143 144
     * expr: removed character [LlDd] from definition of float constants
     
Uwe Schulzweida's avatar
Uwe Schulzweida committed
145
Version 1.9.3 (29 January 2018):
146 147 148 149 150 151 152 153 154

   New features:
     * expr: added time coordinate function cdate(), ctime(), cdeltat(), ctimestep() ...
   New operators:
     * not - logical NOT (1, if x equal 0; else 0)
   Fixed bugs:
     * uvDestag: target grid undefined in output
     * runpctl: fails since release 1.8.0
     * read of reduced Gaussian grid description file failed [Bug #8146]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
155
     * read error on grid description file [Bug #8099]
156

Uwe Schulzweida's avatar
Uwe Schulzweida committed
157 158 159 160 161
Version 1.9.2 (23 November 2017):

   Fixed bugs:
     * sign of grid size increment changes [Bug #7974]
     * compilation fails on OpenBSD [Bug #7961]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
162 163
     * expr: nesting of ternary operator lost in cdo-1.9.1 [Bug #7992]
     * rotuvb changed behavior in different versions [Bug #8084]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
164 165
     * select with start=end range aborts with 'Invalid character' [Bug #7976]

Uwe Schulzweida's avatar
Uwe Schulzweida committed
166 167
Version 1.9.1 (27 September 2017):

Uwe Schulzweida's avatar
Uwe Schulzweida committed
168 169 170
   New features:
     * Added support for NC_FORMAT_CDF5
     * Extend option --reduce_dim to all dimension for all operators
Uwe Schulzweida's avatar
Uwe Schulzweida committed
171 172
   New operators:
     * tee - Duplicate a data stream
Uwe Schulzweida's avatar
Uwe Schulzweida committed
173
   Changes operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
174
     * eof, eof3d: set default value of environment variable CDO_WEIGHT_MODE to off
Uwe Schulzweida's avatar
Uwe Schulzweida committed
175 176
     * sinfo: Added time type
     * ap2pl: added support for input data on half levels
Uwe Schulzweida's avatar
Uwe Schulzweida committed
177
   Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
178 179
     * selindexbox: breaks uvRelativeToGrid flag [Bug #7901]
     * expr: AND fall through OR
Uwe Schulzweida's avatar
Uwe Schulzweida committed
180
     * --cmor option doesn't work for lon/lat bounds (introduced in 1.9.0)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
181
     * eof3d: weight array was allocated for only one level
Uwe Schulzweida's avatar
Uwe Schulzweida committed
182

Uwe Schulzweida's avatar
Uwe Schulzweida committed
183
Version 1.9.0 (27 July 2017):
184 185

   New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
186
     * Code changed from ANSI C99 to ISO C++11
Uwe Schulzweida's avatar
Uwe Schulzweida committed
187
     * Added configure option for ecCodes --with-eccodes=<yes|no|directory>
188
     * Added range operator to all statistic modules (e.g. yearrange, zonrange)
189 190 191
   Fixed bugs:
     * expr: improve ternary operator, no brackets needed anymore.
     * expr: added support for clev in ternary operator.
Uwe Schulzweida's avatar
Uwe Schulzweida committed
192 193
     * remapcon/remapycon produces wrong results for some grid combinations (introduced in 1.8.0) [Bug #7821]
     * mergetime: wrong time information if first input file does not contain the first time step (bug introduced in 1.8.1) [Bug #7760]
194
     * percentile: fix wrong result with method numpy (linear interpolation) and nist [Bug #7798]
195

Uwe Schulzweida's avatar
Uwe Schulzweida committed
196 197 198 199 200 201 202
Version 1.8.2 (15 May 2017):

   Fixed bugs:
     * setpartab: variable name does not change [Bug #7681]
     * cmorlite: skipped empty key values [Bug #7681]
     * setcalendar, settaxis memory error (bug introduce in 1.8.1) [Bug #7691]

203
Version 1.8.1 (6 April 2017):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
204

Uwe Schulzweida's avatar
Uwe Schulzweida committed
205 206
   New features:
     * selindexbox: added support for LCC grid
Uwe Schulzweida's avatar
Uwe Schulzweida committed
207 208 209
   New operators:
     * selgridcell - Select grid cells
     * delgridcell - Delete grid cells
210 211 212 213 214
   New operators (KMNI contribution):
     * selmulti - Select multiple fields
     * delmulti - Delete multiple fields
     * changemulti - Change identication of multiple fields
     * samplegrid - Resample grid
Uwe Schulzweida's avatar
Uwe Schulzweida committed
215 216 217
     * uvDestag - Destaggering of wind components
     * rotuvNorth - Rotate u/v wind to North pole
     * projuvLatLon - Cylindrical Equidistant projection
Uwe Schulzweida's avatar
Uwe Schulzweida committed
218
   Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
219
     * collgrid: combination of nx and names does not work
Uwe Schulzweida's avatar
Uwe Schulzweida committed
220 221
     * Remapping bug for non global grids [Bug #7625]
     * remapdis and remapcon produces wrong results for some grid combinations [Bug #7626] (introduced in last revision)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
222

Uwe Schulzweida's avatar
Uwe Schulzweida committed
223 224 225 226 227 228
Version 1.8.0 (26 October 2016):

   New features:
     * NetCDF: Improved support for horizontal and vertical grids 
     * Changed default of option -f nc to netCDF2
     * masklonlatbox: added support for unstructured grids
Uwe Schulzweida's avatar
Uwe Schulzweida committed
229
     * setpartabn: added support for user defined attributes
230
     * Reverse: adjust date/time by -1 second (introduced in last revision)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
231
   New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
232
     * setattribute: Set attributes
Uwe Schulzweida's avatar
Uwe Schulzweida committed
233
     * cmorlite: Apply variable_entry of cmor tables
Uwe Schulzweida's avatar
Uwe Schulzweida committed
234
     * timcumsum: Cumulative sum over time.
Uwe Schulzweida's avatar
Uwe Schulzweida committed
235
     * shiftx/shifty: Shift fields on rectilinear/curvilinear grids in x/y direction
Uwe Schulzweida's avatar
Uwe Schulzweida committed
236
   Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
237
     * Cond: bug fix for ntsteps1 == 1 && ntsteps2 != 1
Uwe Schulzweida's avatar
Uwe Schulzweida committed
238 239
     * ml2pl: interpolation failed for data on hybrid half levels [Bug #7225]

Uwe Schulzweida's avatar
Uwe Schulzweida committed
240
Version 1.7.2 (28 June 2016):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
241

242 243 244
   New features:
     * Adjust date/time by -1 second if the varification time is 00:00:00 and
       the verification date is equal to upper time bound
Uwe Schulzweida's avatar
Uwe Schulzweida committed
245 246 247 248 249 250 251
   New operators:
     * smooth: Smooth grid points
     * ap2hl: Air pressure to height level interpolation
     * ngrids: Show number of grids
     * ngridpoints: Show number of gridpoints per variable
     * reducegrid: Select gridpoints wrt. given mask
     * settbounds: Set time bounds
252 253
   Changed operators:
     * input: added optional zaxis parameter
Uwe Schulzweida's avatar
Uwe Schulzweida committed
254 255
     * setpartab: renamed to setcodetab
     * pardes: renamed to codetab
Uwe Schulzweida's avatar
Uwe Schulzweida committed
256
   Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
257
     * Error reading Gaussian reduced GRIB files [Bug #6780 #6819]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
258
     * Installation error with OpenMP [Bug #6523]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
259
     * mul: wrong result for missval*0 (bug was introduced in 1.7.1)
260
     * nint: wrong result (replaced round() by lround())
Uwe Schulzweida's avatar
Uwe Schulzweida committed
261
     * shaded, contour, grfill: set NAN missvals to -9e33 [Bug: #6677]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
262
     * expr: fix problem with missing values in time constant mask and a timeseries
Uwe Schulzweida's avatar
Uwe Schulzweida committed
263

264
Version 1.7.1 (25 February 2016):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
265

266
   New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
267
     * select: added search key steptype, gridnum, gridname, zaxisnum, zaxisname
268 269 270 271
     * expr, exprf, aexpr, aexprf: added support for function clon(x), clat(x), clev(x),
       remove(x), ngp(x), nlev(x), size(x), missval(x), sellevel(x,k), sellevidx(x,k),
       fldmin(x), fldmax(x), fldsum(x), fldmean(x), fldavg(x), fldstd(x), fldstd1(x), fldvar(x), fldvar1(x),
       vertmin(x), vertmax(x), vertsum(x), vertmean(x), vertavg(x), vertstd(x), vertstd1(x), vertvar(x), vertvar1(x)
272
   New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
273 274 275
     * contour: Contour plot
     * shaded: Shaded contour plot
     * grfill: Shaded gridfill plot
276 277
     * vector: Lat/Lon vector plot
     * graph: Line graph plot
278 279
     * gmtxyz: Output GMT xyz format to create contour plots with the GMT module pscontour.
     * gmtcells: Output GMT multiple segment format to create shaded gridfill plots with psxy.
Uwe Schulzweida's avatar
Uwe Schulzweida committed
280 281
   Fixed bugs:
     * cdo -t table_file does not read variable name from table file [Bug #6312]
282
     * One day shift backwards when converting to relative time axis with -r [Bug #6496]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
283
     * ydaypctl: check of verification date failed (bug fix)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
284
     * cat, copy, mergetime, select: remove time constant input fields for nfile>1 [Bug #6552]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
285

286 287
Version 1.7.0 (28 October 2015):

288
   New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
289
     * added support for netCDF Scalar Coordinate Variables
Uwe Schulzweida's avatar
Uwe Schulzweida committed
290
     * added support for hybrid sigma pressure coordinates following the CF convention
Uwe Schulzweida's avatar
Uwe Schulzweida committed
291 292
     * added option --percentile to select different percentile methods
       Available methods: nrank, nist, numpy, numpy_lower, numpy_higher, numpy_nearest
293
     * distgrid: added support for curvilinear grids
294
     * collgrid: added support for curvilinear grids
295
   New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
296 297
     * remapycon: First order conservative remapping (new implementation of remapcon)
     * genycon: Generate 1st order conservative remap weights (new implementation of gencon)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
298
     * setmisstonn: Set missing value to nearest neightbor
299
     * setmisstodis: Set missing value to the distance-weighted average of the nearest neighbors
Uwe Schulzweida's avatar
Uwe Schulzweida committed
300
     * ap2pl: Interpolate 3D variables on hybrid sigma height coordinates to pressure levels
301
     * gheight: Geopotential height
302 303
     * vertstd1: Vertical standard deviation [Divisor is (n-1)]
     * vertvar1: Vertical variance [Divisor is (n-1)]
304 305
     * seasvar1: Seasonal variance [Divisor is (n-1)]
     * seasstd1: Seasonal standard deviation [Divisor is (n-1)]
306 307
     * yseasvar1: Multi-year seasonally variance [Divisor is (n-1)]
     * yseasstd1: Multi-year seasonally standard deviation [Divisor is (n-1)]
308
   Changed operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
309
     * remapnn, remapdis: replaced scrip search by kdtree (optimization)
310
     * vertvar, vertstd: changed to weighted var/std if layer bounds are available
311
   Fixed bugs:
312
     * cdo -t table_file does not complain if table_file is a directory [Bug #5891]
313
     * expr: operators return 0 for arithmetics on constants [Bug #5875]
314
     * env. CDO_TIMESTAT_DATE does not work [Bug #5758]
315
     * splityear*: support for constant fields is missing [Bug #5759]
316
     * yseaspctl: check of verification date failed [Bug #5810]
317
     * Converting rotated lat-lon netcdf to/from grib: flip sign of the angle of rotation [Bug #5870]
318

319
Version 1.6.9 (28 April 2015):
320 321

   New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
322
     * select: added parameter date, startdate, enddate 
323
     * expr: added support for operator ?:,&&,||
324
     * option --reduce_dim: reduce dimension (Timstat, Fldstat)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
325 326
   New operators:
     * after: ECHAM standard post processor
Uwe Schulzweida's avatar
Uwe Schulzweida committed
327 328 329
     * aexpr: Evaluate expressions and append results
     * aexprf: Evaluate expression script and append results
     * selzaxisname: Select z-axes by name
330
     * genlevelbounds: Generate level bounds
Uwe Schulzweida's avatar
Uwe Schulzweida committed
331
   Fixed bugs:
332
     * ydrunpctl: does not work in combination with ydrunmin/ydrunmax
333
     * Ensstat: added support for different missing values
Uwe Schulzweida's avatar
Uwe Schulzweida committed
334
     * seltimestep: abort if none of the selected timesteps are found
335

336
Version 1.6.8 (26 March 2015):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
337

Uwe Schulzweida's avatar
Uwe Schulzweida committed
338
   New features:
339
     * select, delete: added wildcard support for parameter name
340
     * expr: added support for logical operators <, >, <=, >=, !=, ==, <=>
341
   New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
342
     * splityearmon: Split in years and months
343 344 345 346
     * yseasadd: Add multi-year seasonal time series
     * yseassub: Subtract multi-year seasonal time series
     * yseasmul: Multiply multi-year seasonal time series
     * yseasdiv: Divide multi-year seasonal time series
347
   Changed operators:
348
     * vertmean, vertavg: changed to weighted means if layer bounds are available
349 350
     * setpartabp, setpartabn: added optional parameter convert to convert the units.
       Units are not converted anymore if this parameter is not set!
Uwe Schulzweida's avatar
Uwe Schulzweida committed
351 352
     * TimSTAT, Timpctl, TimselSTAT, Timselpctl, SeasSTAT, Seaspctl:
       The output time stamp of all operators from the above modules
Uwe Schulzweida's avatar
Uwe Schulzweida committed
353
       are changed from the last to the middle contributing timestep.
354
       Use the environment variable CDO_TIMESTAT_DATE=last to set
Uwe Schulzweida's avatar
Uwe Schulzweida committed
355
       the output time stamp to the last contributing timestep.
356 357 358
     * eof, eof3d: use area weights instead of no weights
       Use the environment variable CDO_WEIGHT_MODE=off to switch back to
       the non weighted version
359
   Fixed bugs:
360
     * gradsdes: grib index file is empty (introduced in 1.6.7)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
361
     * grib2 output: segfaults when writing grib2 files [Bug #5351]
362
     * remapnn: Segmentation fault for extrapolation of regular 2D source grids [Bug #5448]
363

364
Version 1.6.7 (12 December 2014):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
365 366

   Fixed bugs:
367
     * intlevel3d: does not work
Uwe Schulzweida's avatar
Uwe Schulzweida committed
368 369
     * GRIB_API: segfaults when writing grib2 files [Bug #5351]

Uwe Schulzweida's avatar
Uwe Schulzweida committed
370
Version 1.6.6 (27 November 2014):
371

Uwe Schulzweida's avatar
Uwe Schulzweida committed
372 373
   New operators:
     * outputtab: table output
374
   Fixed bugs:
375 376
     * option -t table: segmentation fault if parameter table entry longname is missing
     * merge: check number of timesteps [Bug #5338]
377
     * seasmean: sets all time_bnds to the same values [Bug #5329]
378 379 380
     * histcount: doesn't recognize missing values
     * filesdes: doesn't work for GRIB2 files [Bug #5307]

381
Version 1.6.5 (23 October 2014):
382

383 384 385
   New operators:
     * distgrid: distribute horizonal grid
     * collgrid: collect horizontal grid
386
   Changed operators:
387
     * cat: added support for option -O (overwrite existing output file)
388
     * remaplaf: changed calculation of weights from SCRIP to YAC
389 390
   Fixed bugs:
     * gridarea: added support for concave grid cells
391
     * gradsdes: added support for option 365_day_calendar
392
     * import_binary: option 365_day_calendar does not work
393 394
     * select: wrong result when select only one timestep

Uwe Schulzweida's avatar
Uwe Schulzweida committed
395
Version 1.6.4 (26 June 2014):
396 397

   New features:
398 399
     * Option --history: Do not append to netCDF "history" global attribute
     * Option --netcdf_hdr_pad <nbr>: Pad netCDF output header with nbr bytes
400
   New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
401 402
     * setpartabn: set parameter table by name
     * setpartabp: set parameter table by parameter ID
403 404
     * sealevelpressure: sea level pressure
   Changed operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
405
     * Sinfo: changed format of grid and zaxis section
Uwe Schulzweida's avatar
Uwe Schulzweida committed
406
     * Filter: disable zero-padding
407
     * diff: print number of different values
408
     * Ymonstat: sorts output by month of year
Uwe Schulzweida's avatar
Uwe Schulzweida committed
409
   Fixed bugs:
410
     * eof3d: set sum of weights to 1
Uwe Schulzweida's avatar
Uwe Schulzweida committed
411 412
     * eofcoeff: remove scaling with grid cell area weights
     * eofcoeff3d: remove scaling with grid cell area weights
413

414
Version 1.6.3 (18 February 2014):
415

416
   New features:
417
     * remapbil, remapbic, remapdis, remapnn: performance optimization for regular 2D source grids
418
     * gradsdes: added support for GRIB files >2GB
419 420
     * 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
421
     * expr: select variables by name
422 423
   Changed operators:
     * gradsdes: added parameter map_version and removed specific operators gradsdes1 and gradsdes2
424
   Fixed bugs:
425
     * gradsdes: changed LCC to LCCR in PDEF definition [Bug #4344]
426
     * cat: "Segmentation fault" if the output file already exist [Bug #4291]
427 428
     * delete: parameter level does not work [Bug #4216]

Uwe Schulzweida's avatar
Uwe Schulzweida committed
429
Version 1.6.2 (12 November 2013):
430

431 432 433
   New features:
     * select: added support for key >timestep_of_year<
     * mastrfu: added missing value support
434
     * splitmon: added optional parameter to set the format string for the month
435 436
   Fixed bugs:
     * selyear: wrong result for negative years [Bug #3836]
437
     * eca_gsl: start date of growing season is wrong if the length of growing season is zero
438

439
Version 1.6.1 (27 June 2013):
440

441 442
   New features:
     * support of blanks in filenames and parameter
443
   Changed operators:
444
     * gradsdes: added support for netCDF files
445
     * Info: add chunking information of netcdf files (only with verbose output) [Feature #3489]
446
     * select: added support for key >hour<
447 448
   Fixed bugs:
     * fldcor: check missing value of 2. input file
449
     * enscrps: wrong result since CDO version 1.5.6 [Bug #3403]
450
     * selmon: month not found for negative years [Bug #3439]
451
     * shifttime: wrong result for negative hours and days [Bug #3440]
452
     * inttime: removes last time step [Bug #3611]
453

Uwe Schulzweida's avatar
Uwe Schulzweida committed
454
Version 1.6.0 (14 March 2013):
455 456

   New operators:
457
     * select: Select fields from an unlimited number of input files
Uwe Schulzweida's avatar
Uwe Schulzweida committed
458
     * mergegrid: Merge horizontal grids
Uwe Schulzweida's avatar
Uwe Schulzweida committed
459
     * yearmonmean: yearly mean from monthly data
Uwe Schulzweida's avatar
Uwe Schulzweida committed
460
     * duplicate: Duplicates a dataset
Uwe Schulzweida's avatar
Uwe Schulzweida committed
461 462
     * adisit: Potential temperature to in-situ temperature
     * rhopot: Calculates potential density
463
   Changed operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
464 465 466
     * 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
467
     * diff: print only records that differ
468
   Fixed bugs:
469
     * sellonlatbox: wrong result with overlapped lonlatbox on curvilinear grids
Uwe Schulzweida's avatar
Uwe Schulzweida committed
470
     * ensrkhisttime: fixed memory fault
471
     * expr: wrong result for operation var1/var2 where var2 = 0
472
     * Runstat: added support for time bounds (Bug #3127)
473
     * merge: uses size of the first input file for the output buffer
474

Uwe Schulzweida's avatar
Uwe Schulzweida committed
475
Version 1.5.9 (17 December 2012):
476 477 478

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

490
Version 1.5.8 (30 October 2012):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
491

492
   New features:
493
     * Added support for netCDF4(HDF5) formatted SCRIP grid description files
494 495
     * 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.
496 497 498
   New operators:
     * setunit: Set variable unit
     * chunit:  Change variable unit
Uwe Schulzweida's avatar
Uwe Schulzweida committed
499
   Changed operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
500
     * Info:  changed output format
Uwe Schulzweida's avatar
Uwe Schulzweida committed
501
     * Sinfo: changed output format
Uwe Schulzweida's avatar
Uwe Schulzweida committed
502
     * Diff:  changed output format
503
   Fixed bugs:
504
     * remaplaf: fixed bug in binary_search_int()
505
     * eca_rr1: result has wrong long name attribute
Uwe Schulzweida's avatar
Uwe Schulzweida committed
506

507 508 509
Version 1.5.6.1 (26 July 2012):

   Fixed bugs:
510 511 512 513 514 515 516
     * 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.
517

518
Version 1.5.6 (23 July 2012):
519

520 521 522 523 524
   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
525
   Changed operators:
526
     * Arith: added support for 3D masks
527 528
     * mastrfu: use grid coordinates from input file
   Fixed bugs:
529
     * ymonsub: added support for time bounds
530
     * Wrong netCDF output for unscaled uint8, int8, int16, int32 variables [Bug #2516]
Uwe Schulzweida's avatar
Uwe Schulzweida committed
531

Uwe Schulzweida's avatar
Uwe Schulzweida committed
532
Version 1.5.5 (15 May 2012):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
533 534 535

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

Uwe Schulzweida's avatar
Uwe Schulzweida committed
541
Version 1.5.4 (30 January 2012):
542

543 544
   New features:
     * setgridtype: added parameter lonlat to convert curvilinear to regular lon/lat grids
545
     * remapcon: added env REMAP_AREA_MIN, to set the minimum area fraction
546 547
   New operators:
     * timcovar: covariance over time
548
     * fldcovar: covariance in grid space
549
   Fixed bugs:
550
     * splitsel: added support for constant fields [Bug #1701]
551
     * combination of selection commands (e.g. selmon -selyear) do not terminate, if no result found [Bug #1640]
552

553
Version 1.5.3 (20 October 2011):
554

555
   New features:
556
     * Variable input parameter for ECA operators: eca_cdd, eca_cwd, eca_rr1, eca_sdii
557
   Fixed bugs:
558
     * deflate compression with netCDF4 doesn't work (option: -z zip)
559
     * sellonlatbox: correct lon bounds if necessary
Uwe Schulzweida's avatar
Uwe Schulzweida committed
560
     * ifthen, ifthenelse: uses only the first time step of the first input file
561
     * module Monarith (monadd, monsub, monmul, mondiv): wrong result for 3D variables
562

Uwe Schulzweida's avatar
Uwe Schulzweida committed
563
Version 1.5.2 (22 August 2011):
564 565 566

   New features:
     * replace: added support to replace single levels
567 568 569 570
   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.
571
   Fixed bugs:
572
     * invertlat: bug fix for CURVILINEAR grids
573
     * ymon<stat>: preserve time axis attributes (type and calendar)
574
     * import_binary: added support for OPTION ZREV
575 576
     * 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.
577 578 579 580 581
     * 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
582

Uwe Schulzweida's avatar
Uwe Schulzweida committed
583
Version 1.5.1 (12 July 2011):
584

585 586
   New features:
     * Added support for netCDF4 classic format; option -f nc4c
587
     * import_binary: Added support for 1 and 2 byte integer
588
   New operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
589
     * intlevel3d: vertical interpolation to/from 3d vertical coordinates
590 591 592 593 594
     * 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
595
   Fixed bugs:
596
     * Exprf: wrong result for missing values != (double) -9.e33
597
     * detrend: added support for time bounds
598
     * Filter: added support for time bounds
599
     * eofspatial: integer overflow; wrong result for grid size > 46340
600
     * eca_*: use the input calendar for the output streams
601

Uwe Schulzweida's avatar
Uwe Schulzweida committed
602
Version 1.5.0 (15 March 2011):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
603

Uwe Schulzweida's avatar
Uwe Schulzweida committed
604
   New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
605
     * GRIB2 support via ECMWF GRIB_API
Uwe Schulzweida's avatar
Uwe Schulzweida committed
606
     * Added support for netCDF level bounds
607
     * Added option -O to overwrite existing output file (only for ens<STAT>, merge, mergetime)
608 609 610
   New operators:
     * selparam: Select parameters by identifier
     * delparam: Delete parameters by identifier
611
     * splitparam: Split parameter identifiers
612
     * chparam: Change parameter identifier
613 614
   Changed operators:
     * expr: added functions abs(), int(), nint(), sqr()
615 616 617
     * 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
618
   Fixed bugs:
619
     * sellonlatbox: does not work as expected when selecting all longitudes
620
     * sellonlatbox: initialization missing for unstructured grids
621
     * ml2pl and ml2hl: wrong result if input file contains full *and* half level data
622
     * trend and detrend: integer overflow; wrong result for ntimesteps > 46340
623
     * spcut: only correct results with continuous wave numbers starting at 1
624
     * remaplib: fixed data race in calculation of bin_addr (OpenMP)
Uwe Schulzweida's avatar
Uwe Schulzweida committed
625

626
Version 1.4.7 (06 January 2011):
627

628 629
   New features:
     * improved support for netCDF output from WRF model (import time and grid variables)
630 631
   New operators:
     * ydayadd, ydaysub, ydaymul, ydaydiv: Multi-year daily arithmetic
632
     * eca_pd: Precipitation days index per time period
633
     * dv2ps: Divergence and vorticity to velocity potential and stream function
634 635
   Changed operators:
     * import_cmsaf: added time information also for time constant fields
636
   Fixed bugs:
637 638
     * eof: fix memory access violation
     * eofcoeff: fix memory access violation
639
     * fldmean: gives wrong result for grid units [radian]
640
     * Yseasstat: bug fix for datasets with time constant fields
641 642
     * sellevel: fix problem with hybrid model levels and netCDF output
     * sellonlatbox: fix rounding error of the last lon index
643
     * Settime: bug fix for time independent variables in combination with other operators (pipes)
644

Uwe Schulzweida's avatar
Uwe Schulzweida committed
645
Version 1.4.6 (17 September 2010):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
646

647
   New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
648
     * Using libtool for linking (rpath)
649
     * Changed predefined gaussian grid names from t<RES>grid to n<N>
650
       Use n80 instead of t106grid to define a Gaussian N80 grid
651
     * Changed percentile parameter type from integer to float
Uwe Schulzweida's avatar
Uwe Schulzweida committed
652 653 654 655
   New operators:
     * bandpass: Bandpass filtering
     * lowpass:  Lowpass filtering
     * highpass: Highpass filtering
656
   Changed operators:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
657
     * eca_gsl: adjust implementation to fit definition by ECA
658
     * expr, exprf: added missing values support
659
   Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
660
     * sellevel: copy zaxis meta data name and units
661
     * seldate: open output file only when time steps found
662
     * sellonlatbox: fix rounding error of the last lon index
Uwe Schulzweida's avatar
Uwe Schulzweida committed
663 664

Version 1.4.5.1 (05 July 2010):
665

Uwe Schulzweida's avatar
Uwe Schulzweida committed
666 667
   New features:
     * GRIB1 decode: Correct ZeroShiftError of simple packed spherical harmonics
668
   Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
669
     * wrong result of SZIP compressed GRIB1 records with 24 bit packing and a compression ratio < 1.05 
670

Uwe Schulzweida's avatar
Uwe Schulzweida committed
671
Version 1.4.5 (28 June 2010):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
672 673 674 675 676

   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
677
     * eofcoeff: Principal coefficients of EOFs
Uwe Schulzweida's avatar
Uwe Schulzweida committed
678 679
     * consecsum: Consecutive Sum
     * consects: Consecutive Timesteps
Uwe Schulzweida's avatar
Uwe Schulzweida committed
680
     * setvals: Set list of old values to new values
Uwe Schulzweida's avatar
Uwe Schulzweida committed
681

Uwe Schulzweida's avatar
Uwe Schulzweida committed
682
Version 1.4.4 (29 April 2010):
Uwe Schulzweida's avatar
Uwe Schulzweida committed
683

Uwe Schulzweida's avatar
Uwe Schulzweida committed
684 685 686
   New operators:

     * fldcor: correlation in grid space
Uwe Schulzweida's avatar
Uwe Schulzweida committed
687
     * timcor: correlation over time
Uwe Schulzweida's avatar
Uwe Schulzweida committed
688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705
     * 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
706

707 708 709
Version 1.4.3 (22 February 2010):

   * New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
710 711
      o using CDI library version 1.4.3
        improved GRIB1 support and performance
712 713
      o changed GRIB1 default packing type of spherical harmonics to complex

Uwe Schulzweida's avatar
Uwe Schulzweida committed
714 715 716 717 718 719 720 721 722 723
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
724 725 726
Version 1.4.1 (15 December 2009):

   * New features:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
727 728
      o using CDI library version 1.4.1
        improved GRIB and netCDF support and performance
Uwe Schulzweida's avatar
Uwe Schulzweida committed
729 730 731 732 733 734 735 736 737
   * 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
738
Version 1.4.0.1 (21 October 2009):
739 740

   * Fixed bugs:
Uwe Schulzweida's avatar
Uwe Schulzweida committed
741
      o seltime: bug fix for scanning of input parameter
742 743 744
      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
745 746 747 748 749 750 751 752 753 754 755 756 757 758
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
759
      o import_cmsaf: read native float datatype
Uwe Schulzweida's avatar
Uwe Schulzweida committed
760

Uwe Schulzweida's avatar
Uwe Schulzweida committed
761 762 763 764 765 766 767 768 769 770 771 772 773 774
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
775
Version 1.3.1 (16 April 2009):
776 777 778 779 780 781 782 783 784 785 786