Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. all data and coordinate variables must have a unique variable name and the following attributes:
    units (required)
    standard_name (required)
    long_name (recommended)
    _FillValue and/or missing_value (required if there are missing values in the data)
    scale_factor (optional to pack compact data)
    add_offset (optional to pack compact data)
    Also see http://cfconventions.org/Data/cf-conventions/cf-conventions-1.6/build/cf-conventions.html#units, http://cfconventions.org/Data/cf-conventions/cf-conventions-1.6/build/cf-conventions.html#long-name and http://cfconventions.org/Data/cf-conventions/cf-conventions-1.6/build/cf-conventions.html#standard-name.
  2. the standard_name attributes should comply to the list with standard names, see http://cfconventions.org/26.html.
  3. a data variable for a 2D grid must depend on three dimensions, representing time and two spatial dimensions (in the order time, y, x). The names of the dimensions can be anything. For the time dimension there must be a corresponding 1D time coordinate variable with the same name. If the grid is regular or rectangular, then for each spatial dimension there must be a corresponding 1D coordinate variable with the same name. See http://cfconventions.org/Data/cf-conventions/cf-conventions-1.6/build/cf-conventions.html#idp5553648. If the grid is curvilinear, then the y and x coordinate variables are both 2D and depend on both spatial dimensions. In this case the data variable must have an attribute "coordinates" that refers to the y and x coordinate variables (in that order), e.g. coordinates="y x". See http://cfconventions.org/Data/cf-conventions/cf-conventions-1.6/build/cf-conventions.html#idp5559280. Each coordinate variable must have an attribute "axis" that indicates which axis is defined by that coordinate variable. For the time coordinate variable the axis must be "T", for the x coordinate variable the axis must be "X", for the y coordinate variable the axis must be "Y".
  4. if the data has a forecast reference time/analysis time/base time, then this time must be stored in a separate coordinate variable that contains only one value, which is the forecast reference time. This variable must have standard_name="forecast_reference_time". The name of this variable must be present in the coordinates attribute of the data variable, e.g. coordinates="analysis_time" or coordinates="y x analysis_time". If needed, different data variables can point to different forecast reference time variables. See http://cfconventions.org/Data/cf-conventions/cf-conventions-1.6/build/cf-conventions.html#scalar-coordinate-variables
  5. the time coordinate variable must have an attribute "units" with a valid unit of time and an attribute "axis" with value "T". A valid unit of time is a string formatted as per the recommendations in the Udunits package, e.g. units="minutes since 1970-01-01 00:00:00.0 +0000". See http://cfconventions.org/Data/cf-conventions/cf-conventions-1.6/build/cf-conventions.html#time-coordinate.
  6. the time and spatial coordinate variables must have values either in ascending or in descending order.

Compacting data

Depending on the difference between the minimum and maximum and the value resolution of a netcdf variable, a smaller sized integer variable like short or byte can be used to compact the data. A scale factor and offset will be used to fit the data in the smaller sized variable and will added to the netCDF variable as attributes. All standard netCDF viewers will take these attributes into account automatically, but other tools and especially scripts might not. 

Compacting netCDF variables for different export from FEWS: 

  • available in archive export (applied whenever possible)  
  • available in time series export if property tryCompactingNetCDFData is set to true (applied when possible)
  • NOT available in general adapter

Error messages from the Delft-FEWS NetCDF import

...