Version 2.0.5 released

Added by Uwe Schulzweida 3 months ago

Fixed bugs:
  • yseasmean calculates seasonal sum for data with missing values since release 2.0.0 [Bug #10615]
  • setattribute: delete attribute failed since release 2.0.0 [Bug #10612]
  • atan2: wrong result since release 2.0.0
  • Arith: Filling up stream2 by copying the first variable failed since release 2.0.0

Version 2.0.3 released

Added by Uwe Schulzweida 6 months ago

Fixed bugs:
  • after: change computation of geopotential height from half to full levels
  • gheight: change computation of geopotential height from half to full levels
  • muldpm/divdpm: wrong result since release 2.0.0

Version 2.0.0 released

Added by Uwe Schulzweida 8 months ago

New features:
  • Changed to C++14
  • Changed to 3-clause BSD license
  • sp2gp/gp2sp: OpenMP parallelized
  • Expr: Add function cdeltaz(x)
  • Select: Add parameter levrange (level range)
  • seltimestep: Add support for negative values in range of integer parameter
  • outputtab: Add key x and y to print coordinates of the original grid
New operators:
  • setgridcell: Set the value of a grid cell
  • selcircle: Select cells inside a circle
  • fldint: Field integral
  • bottomvalue: Select valid values at the bottom level
  • topvalue: Select valid values at the top level
  • median - ensmedian, fldmedian, mermedian, zonmedian, gridboxmedian
  • skewness - ensskew, fldskew, merskew, zonskew, gridboxskew
  • kurtosis - enskurt, fldkurt, merkurt, zonkurt, gridboxkurt
Fixed bugs:
  • splitsel: Output sequence number starts at 0
  • import_binary: Wrong result for swap 2 byte binary data
  • import_binary: Set NetCDF reference time
  • genlaf: Gives the result of gencon
  • namelist: Add large file support

Version 1.9.10 released

Added by Uwe Schulzweida over 1 year ago

New features:
  • Added option --ignore_time_bounds to ignore time bounds for time range statistics
Fixed bugs:
  • EOF: fix wrong result with multiple OpenMP threads (data race)
  • timselmean: failed with variables on different grids [Bug #9978]
  • Ymonarith: failed with variables on different grids
  • Detrend: wrong result with parameter equal=false [Bug #9961]
  • Fldstat: optional parameter weights failed
  • Wind: check that numLPE is > 0

Version 1.9.9 released

Added by Uwe Schulzweida over 1 year ago

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

Version 1.9.8 released

Added by Uwe Schulzweida over 2 years ago

New features:

  • Proj 4 to 6 API Migration
  • smooth/smooth9: Added support for gridtype PROJECTION [Feature #9202]
  • Expr: Added function rand() and isMissval()
  • Remap: Added support for Gaussian reduced grids
  • trend, detrend: Added parameter equal=false for unequal timesteps
  • Option --no_remap_weights: Switch off generation of remap weights

New operators:

  • deltat: Difference between timesteps

Fixed bugs:

  • ensavg: Wrong result if data contains missing values (same result as ensmean)
  • Ydrunstat: Fix seg. fault

Python/Ruby interface are in a redesign phase

Added by Ralf Mueller over 2 years ago

Currently I work on a redesign of the Python and Ruby interface to CDO towards a 2.0 release. This will include API changes that are not backward compatible to the current 1.5.x version.

I wrote a list of open points here and I'd like to invite everyone to join the discussion and come up with ideas on how to write down things in the future. Please create tickets at so that ideas and wishes can be collect in a transparent way.


Also available in: Atom