Fixed bugs:
- 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.
New features:
- Runstat: OpenMP parallelization over parameter nts
- import_binary: added support for 64-bit floats via extra OPTION keyword flt64
Changed operators:
- Arith: added support for 3D masks
- mastrfu: use grid coordinates from input file
Fixed bugs:
- ymonsub: added support for time bounds
- Wrong netCDF output for unscaled uint8, int8, int16, int32 variables [Bug #2516]
In order to make the latest features available to users, a new release will be offered: cdo-current
.
Please note:
- There will be no support or maintenance for this release. We try to keep it stable, but it will not be tested like the official one.
cdo-current
will be released for new features or bug-fixes but not every night.
- It is a source-only release, pre-compiled binaries will not be offered.
Tar balls can be downloaded as usual from the download page
New operators:
- yhouradd, yhoursub, yhourmul, yhourdiv: Multi-year hourly arithmetic
Fixed bugs:
- ECA operators: wrong result if missing value is not the default missing value (-9e33)
- ml2pl: added support for GRIB2 parameter names
- replace: removed debug output
Changed from old pycdf to more recent scipy.io.netcdf for returning numpy arrays (suggested by Alastair McKinstry).
See cdo.{rb,py}
Both versions now work with the win32 version of CDO and interfaces have converged a bit more.
See cdo.{rb,py} for installation instructions.
Updated libraries:
- netcdf-4.2
- hdf5-1.8.8
- grib_api-1.9.16
- proj4-4.8.0
The default unix installation now includes grib_api.
New features:
- setgridtype: added parameter lonlat to convert curvilinear to regular lon/lat grids
- remapcon: added env REMAP_AREA_MIN, to set the minimum area fraction
New operators:
- timcovar: covariance over time
- fldcovar: covariance in grid space
Fixed bugs:
- splitsel: added support for constant fields [Bug #1701]
- combination of selection commands (e.g. selmon -selyear) do not terminate, if no result found [Bug #1640]
The scripting language bindings for Ruby have been enlarged to Python! Please have a look at cdo.{rb,py} for installation instructions and some examples.
For reading all unit tests, please register yourself and have a look at source:trunk/cdo/contrib/python/test/test_cdo.py for Python and source:trunk/cdo/contrib/ruby/test/test_cdo.rb for Ruby.
This is the first release of cdo.rb, a Ruby module to call CDO.
Installation¶
cdo.rb is released as a ruby gem, Ruby's own package format. Install cdo.rb with
gem install cdo
Documentation¶
Please have a look at the automatic documentation from rubygem: http://rubydoc.info/gems/cdo/frames
Examples¶
CDO's operators are implemented as module methods:
Cdo.info(:in => "input.nc")
Input and output stream arguments are handled special with hash keys :in
and :out
. Same is true for the other options of CDO like "-f"
or "-P"
:
Cdo.topo(:out => "topography.grb")
Cdo.copy(:in => "topography.grb",:out => "topography.nc4",:options => "-f nc4")
Operator options can be set as standard method arguments:
Cdo.stdatm(0,10,20,50,100,200,500,1000,:out => "standard_atm.nc",:options => "-f nc")
More example can be found in the unit tests: source:trunk/cdo/contrib/ruby/test/test_cdo.rb.