Due to the current gap in continued funding from the U.S. National Science Foundation (NSF), the NSF Unidata Program Center has temporarily paused most operations. See NSF Unidata Pause in Most Operations for details.
netCDF Operators NCO version 5.0.5 are cartwheeling towards you. http://nco.sf.net (Homepage, Mailing lists, Help) http://github.com/nco (Source Code, Issues, Releases, Developers) What's new? Version 5.0.5 brings a new lossy quantization codec, BitRound. Granular BitGroom has been renamed Granular BitRound. ncclimo has improved API consistency between climo generation and timeseries extraction. ncatted introduces a new editing mode: prepending. If these issues do not interest you, you might skip 5.0.5. Work on NCO 5.0.6 has commenced and will improve ncremap support for mbtempest, incorporate new mbtempest improvements, and further improve support for quantization/compression algorithms. Enjoy, Charlie NEW FEATURES (full details always in ChangeLog): A. Arithmetic operators now support the lossy quantization algorithm known as BitRound. The BitRound algorithm is described in "A note on precision-preserving compression of scientific data" by R. Kouznetsov, doi:10.5194/gmd-14-377-2021. BitRound has been used to quantize more accurately in NCO's BitGroom and GranularBR algorithms for over a year. However, though algorithms select the number of bits to quantize internally. Now BitRound is an independently configurable algorithm in its own right. It takes a user-specified number of significant bits (NSB, or "keepbits) to retain. The NSB argument contrasts with the number of significant digits (NSD) parameter expected by BitGroom, DigitRound, and GranularBR. BitRound is Bit-Adjustment-Algorithm #8. ncks --baa=8 --ppc default=9 in.nc out.nc # BitRound NSB=9 ncks --baa=4 --ppc default=3 in.nc out.nc # GranularBR NSD=3 Thanks to Milan Klower and R. Kouznetsov for prototyping BitRound in the first place. B. ncclimo now accepts filenames from stdin or positional arguments in monthly climo mode. Previously, ncclimo self-generated input filenames for monthly climos, given the caseid, and start/end years. Now ncclimo can be fed a list of filenames to climatologize. The API is identical to providing filenames to the splitter: pipe filenames through stdin or place them on the command-line. This makes the climo generator even more flexible than the splitter which cannot (yet) generate filenames internally. However, the flexibility of providing filenames via stdin or positional arguments is more error-prone than using internally generated filenames that are, by construction, guaranteed to be in the correct sequence. User-provided filenames are vetted en masse to ensure that the expected number of files for the specified climatology are present. They are not vetted to ensure that they are in the correct order, i.e., January then February then March of the correct year etc. The $caseid argument is optional when the user provides the files. However, ncclimo needs to know what to name the output files. The $caseid argument or the $fml_nm argument, when present, provides the output filename stub. When neither of these options are present ncclimo will name the output files after the model name, if known. ls mpaso*.nc | ncclimo -P mpaso -s 50 -e 100 -o out # Stdin ls eam*h0*.nc | ncclimo --fml=name -s 50 -e 100 -o out # Stdin ncclimo -P mpaso -s 50 -e 100 -o out mpaso*.nc # Positional ncclimo --fml=name -s 50 -e 100 -o out eam*h0*.nc # Positional http://nco.sf.net/nco.html#ncclimo C. ncatted has a new edit mode: Prepend. Analogous to append mode, prepend mode will prepend the user-specified value to the attribute and if the attribute does not exist it will be created: ncatted -a char_att,att_var,p,c,"this is prepended.\n" in.nc out.nc http://nco.sf.net/nco.html#att_prepend BUG FIXES: A. ncclimo 5.0.4 inadvertently broke automatic filename generation for MPAS. The workaround is to pipe the input filenames through stdin or supply them on the command-line. The solution is to upgrade. Thanks to Xylar Asay-Davis for reporting this issue. B. ncclimo 5.0.4 always prepending the CWD of the operator to the input file location in climo mode. This prevented ncclimo from working correctly with stdin filenames that included an absolute path. The workaround is to run ncclimo from the input file directory. The solution is to upgrade. Thanks again to Xylar Asay-Davis for reporting this issue. C. ncatted had a longstanding bug triggered when using modify mode to try to change the value of the _FillValue attribute in a netCDF4 file when the attribute did not already exist. Talk about a corner case! The solution is to upgrade. Full release statement at http://nco.sf.net/ANNOUNCE -- Charlie Zender, Earth System Sci. & Computer Sci. University of California, Irvine 949-891-2429 )'(
netcdfgroup
archives: