netCDF operators NCO version 3.1.3 are ready

The netCDF operators NCO version 3.1.3 are ready.
Highlights are significant new features in ncwa and ncap2,
improved CF Convention support, and a fix for empty record variables. (Homepage) (Homepage "mirror")
You may have to use the mirror until Sourceforge is up.
It is down now and has been very erratic this month.

ncap2, the successor to ncap, now has 99% of ncap's features,
and many more high level language features, including array syntax,
if/then constructs, and attribute propagation.
ncap2 is still a bit alpha, but ready to be tested for functionality. demonstrates many ncap2 features.

1. ncap2 attribute propagation (Henry Butowsky)
   Defining new variables in terms of existing variables is one of
   ncap2's most powerful features.
   Derived fields inherit the metadata (i.e., attributes) of their
   identically named ancestors, if any, in the script or input file.
   When the derived field is completely new (no identically-named ancestors
   exist), then it inherits the metadata (if any) of the left-most variable
   on the right hand side of the defining expression.
   Many users have asked for this functionality--we hope you like it.

   Reminder: ncap2 depends on ANTLR to build so do, e.g.,
   sudo apt-get install antlr libantlr-dev
   before running NCO's configure

2. ncap2 LHS array logic working (Henry Butowsky)

3. Support CF convention on "coordinates" attribute:
   Coordinates listed in "coordinates" attribute "stick" to the
   parent variable just like real coordinates.

4. ncwa -b retains degenerate dimensions
   % ncwa -a lon -b;ncks -C -H -v lon
   lon[0] = 135
   The -b makes "lon" a degenerate (size 1) dimension.
   Fret not, dimensions are still "scalar-ized" by default.

5. ncwa -B mask_condition option

6. Work (or die) "correctly" with zero-record record variables
   All record variables are zero-length prior to the storage of data.
   Apparently having zero-length record variables is a valid state for a
   netCDF file. NCO now works "correctly" on such files.
   I say "correctly" because this is somewhat subjective.
   The only clearly bizarre behavior I am aware of is that averaging
   a zero-record record variable over the record dimension with ncwa
   creates a scalar, i.e., a variable with no dimensions.
   Scalars must have one element, so the averaged variable has more data
   than the initial variable.
   The alternative is deleting the variable completely, and I thought
   retaining the metadata would be preferable.
   This behavior may change in the future.

7. Build fixes for Solaris, Cygwin, NECSX and Cray

8. Support netcdf4-alpha14

9. Support Opendap 3.6.x.

Charlie Zender, surname@xxxxxxx, Department of Earth System Science
3228 Croul Hall, UC Irvine, Irvine CA 92697-3100. (949) 824-2987 :)

To unsubscribe netcdfgroup, visit: