NetCDF operators (NCO) version 5.0.4
Version 5.0.4 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.0.4 contains significant changes to the ncclimo splitter API, minor changes to ncremap's --permute API and to invoking the internal inverse-distance weight generation. Along with these features come generally improved WARNINGs, HINTs, reduced noisiness of diagnostics for frequently used commands, and mitigation of compression issues triggered by netCDF 4.8.0+ library changes. Furthermore, numerous minor improvements to mbtempest and to ERWG support are included.
New Features
ncremapremoves the previous assumption that input horizontal dimensions are in lat-lon order. The order can now be lat-lon or lon-lat. The old behavior would fail when attempting to regrid variables whose horizontal dimensions were lon-lat to an unstructured grid.ncremapnow prefers to call its inverse distance-weighted interpolation/extrapolation algorithm 'idw' for 'inverse distance-weighted' rather than 'dwe' for distance-weighted extrapolation. However, both forms are acceptable and back-compatibility was maintained.ncremapadds the--splitflag to select splitter mode. Previously, the splitter was automatically invoked whenever the input files were provided via stdin, globbing, or positional command-line arguments, with some exceptions. That older method became ambiguous and untenable once it was decided to also allow climos to be generated from files provided via stdin, globbing, or positional command-line arguments. Now there are three methods to invoke the splitter:- Use the
--splitflag: this is the most explicit way to invoke the splitter. - Select
clm_md=hfs:the high-frequency splitter mode by definition invokes the splitter, so a more explicit option than this is not necessary. - Set the years-per-file option, e.g.,
--ypf=25:the ypf_max option is only useful to the splitter, and has thus been used in many scripts. Since this option still causes the splitter to be invoked, those script will perform as before.
ncclimo --split -c ${caseid} -s 1 -e 2 -i raw -o clm ls ${caseid1}*h0.000[12]* | ncclimo -f ${fml_nm} -s 1 -e 2 -o out- Use the
ncremapintroduces changes the API for the--permuteoption: Previously the argument needed to include the entire option string to be passed to ncpdq including the -a component, e.g.,--permute='-a time,new_dim,lat,lon'. Nowncremapsupplies the implicit-ainternally so the user does not need to know thencpdqsyntax.ncremap --permute=Time,new_dim,nCells --map=map.nc in.nc out.nc ncremap --permute=time,new_dim,lat,lon --map=map.nc in.nc out.nc
https://nco.sf.net/nco.html#permute
https://nco.sf.net/nco.html#pdqncremapadds the--area_dgnflag to diagnose (rather than copy) the area of each gridcell in an inferred grid-file. By default,ncremapsimply copies the area variable, if found, into thegrid_areavariable of the inferred SCRIP grid-file. When--area_dgnis invoked,ncremapinstead computes the values ofgrid_areabased on the gridcell boundaries in the input template file.ncremap --area_dgn -d dst.nc -g grid.nc
https://nco.sf.net/nco.html#area_dgn
Note that--area_dgnhas no effect on any mapping weights subsequently generated from the grid-file because most weight-generators base their weights on internally computed cell areas (ERWG does have an option,--user_areas, to override this behavior).
Additional details are available in the ChangeLog.
Add new comment