CDO: Version 1.9.10 released

Added by Uwe Schulzweida over 2 years 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

CDO: Version 1.9.9 released

Added by Uwe Schulzweida almost 3 years 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]

CDO: Version 1.9.8 released

Added by Uwe Schulzweida almost 4 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

CDO: Python/Ruby interface are in a redesign phase

Added by Ralf Mueller almost 4 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.

CDO: Version 1.9.7 released

Added by Uwe Schulzweida over 4 years ago

New features:
  • added option --worker <num>: Number of worker to decode/decompress GRIB records
  • added option --pedantic: Warnings count as errors
  • Yhourstat: added time bounds support
  • expr: added support for ctimestep() in ternary conditional
New operators:
  • yearmaxidx: Yearly maximum indices
  • yearminidx: Yearly minimum indices
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
  • mergetime: SKIP_SAME_TIME doesn't work in release 1.9.6

CDO: Version 1.9.6 released

Added by Uwe Schulzweida over 4 years ago

New features:
  • Added support for polar stereographic projection
  • Download ICON grids if necessary (
  • 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
New operators:
  • vars<stat> - Statistical values over all variables
  • 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]
  • Module Selbox: added support for grid cell area
  • Operator setgridtype,regular: set nx=4*N+16 for octahedral reduced Gaussian grids
  • 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]
  • Absolute time axis (-a) returns wrong units in operator chain for NetCDF [Bug #8777]
  • Relative time axis (-r) returns wrong first timestep in operator chain for NetCDF
  • Wrong result with fldmean on zonal mean data (bug introduce in 1.9.5) [Bug #8834]
  • OPeNDAP support was broken in 1.9.5 [Bug #9761]

Also available in: Atom