This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
Hi Ken:
There are some brand new classes in 2.2.21.04 that allow one to write
a CF compliant Netcdf-3 file from any gridded dataset. This eliminates
the need for the "inventory description" file.
The NetcdfServer is being replaced by a similar service called
"NetcdfSubset" which uses those new classes.
See ucar.nc2.dt.grid.NetcdfCFWriter :
public class NetcdfCFWriter {
/**
* Write a CF compliant Netcdf-3 file from any gridded dataset.
*
* @param location write to this location on disk
* @param gds A gridded dataset
* @param gridList the list of grid names to be written, must not be empty.
* @param llbb optional lat/lon bounding box
* @param range optional time range
* @param addLatLon should 2D lat/lon variables be added, if its a projection
coordainte system?
* @param stride_xy not implemented yet
* @param stride_z not implemented yet
* @param stride_time not implemented yet
* @throws IOException if write or read error
* @throws InvalidRangeException if subset is illegal
*/
public void makeFile(String location, ucar.nc2.dt.GridDataset gds,
List<String> gridList,
LatLonRect llbb, DateRange range,
boolean addLatLon,
int stride_xy, int stride_z, int stride_time) throws IOException,
InvalidRangeException;
We are working on similar classes for PointObs etc. Let me know if
these are useful.
Ticket Details
===================
Ticket ID: KDR-409211
Department: Support THREDDS
Priority: Normal
Status: Open