Version 5.1.6 of the netCDF Operators (NCO) has been released. NCO is an Open Source package that consists of a dozen standalone, command-line programs that take netCDF files as input, then operate (e.g., derive new data, average, print, hyperslab, manipulate metadata) and output the results to screen or files in text, binary, or netCDF formats.
The NCO project is coordinated by Professor Charlie Zender of the Department of Earth System Science, University of California, Irvine. More information about the project, along with binary and source downloads, are available on the SourceForge project page.
From the release message:
Version 5.1.6 further polishes vertical interpolation, further
improves NCZarr safety, and fixes minor ncremap
issues, improves EAMxx
support, adds basic support for regridding Coupler history files, and
employs CF Conventions, where possible, on all input files regardless
of whether they claim to be CF-compliant.
This release can be skipped if you would not use the NCZarr and
regridder improvements.
New Features
-
ncremap
now diagnoses rather than prescribes the monotonicity direction (increasing or decreasing in index space) and dimension ordering of vertical grids prior to searching for maxima/minima surfaces beyond which extrapolation is necessary. That's a mouthful. Basically this feature fixes corner cases in which input or output 3D vertical grids (e.g., hybrid sigma/pressure, or MPAS-Ocean-style grids) with non-standard directionality (which way is up?) or dimensionality could have caused previous versions of NCO to misjudge the vertical domain of the grid, and thus prevented implementing missing values beyond the valid domain. Also, missing values in the grids are better handled when looking for vertical domain boundaries.ncremap -P mpasocean --vrt_out=vrt.nc --map=map.nc in.nc out.nc
http://nco.sf.net/nco.html#ncremap
http://nco.sf.net/nco.html#vrt_out -
ncclimo
improves handling of output from the DOE EAMxx model in two ways.ncclimo
now understands the commonly used suffixes for EAMxx monthly output files: "...YYYY-MM-01-00000.nc
", and allows these names to be used as the caseid argument for templating filenames. Thanks to Chris Golaz (LLNL) prompting this feature.caseid=really_long_string.0001-01-01-00000.nc ncclimo -P eamxx -c ${caseid} -s 2000 -e 2019 -i $drc_in -o $drc_out
http://nco.sf.net/nco.html#ncclimo
http://nco.sf.net/nco.html#caseid -
ncremap
now supports non-spatial dimensions (temporal, spectral, chemical) when vertically interpolating datasets. This now works for all vertical grid types. Previously this only worked for hybrid/sigma grids, and only then for temporal dimensions (this former limitation never affected horizontal regridding). Now datasets with non-spatio-temporal dimensions such as temperature(time, species, wavelength, horizontal, vertical) should vertically regrid properly.
http://nco.sf.net/nco.html#ncremap -
ncremap
now supports vertical interpolation of timeseries data from pure-pressure to pure-pressure gridsncremap --vrt_out=ncep_L17.nc ncep_L10.nc out.nc
http://nco.sf.net/nco.html#vrt
Additional details are available in the ChangeLog.