Table of Contents
Four types of coordinates receive special treatment by these
conventions: latitude, longitude, vertical, and time.
We continue to support the special role that the
units and positive attributes
play in the COARDS convention to identify coordinate type.
We extend COARDS by providing explicit definitions of dimensionless
vertical coordinates. The definitions are associated with a coordinate
variable via the standard_name and
formula_terms attributes. For backwards compatibility
with COARDS use of these attributes is not required, but is strongly recommended.
Because identification of a coordinate type by its units is complicated
by requiring the use of an external software
package [UDUNITS], we provide two optional
methods that yield a direct identification.
The attribute axis may be attached to a coordinate
variable and given one of the values X, Y,
Z or T which stand for a longitude,
latitude, vertical, or time axis respectively.
Alternatively the standard_name attribute may be used
for direct identification. But note that these optional
attributes are in addition to the required COARDS metadata.
Coordinate types other than latitude, longitude, vertical, and time
are allowed. To identify generic spatial coordinates we recommend
that the axis attribute be attached to these
coordinates and given one of the values X,
Y or Z.
The values X and Y
for the axis attribute should be used to identify horizontal coordinate
variables. If both X- and Y-axis are identified, X-Y-up
should define a right-handed coordinate system, i.e. rotation from the
positive X direction to the positive Y direction is anticlockwise if
viewed from above.
We strongly recommend that coordinate
variables be used for all coordinate types whenever they are applicable.
The methods of identifying coordinate types described in this
section apply both to coordinate variables and to auxiliary
coordinate variables named by the coordinates
attribute (see Chapter 5, Coordinate Systems).
The values of a coordinate variable or auxiliary coordinate variable indicate the locations of the gridpoints. The locations of the boundaries between cells are indicated by bounds variables (see Section 7.1, “Cell Boundaries”). If bounds are not provided, an application might reasonably assume the gridpoints to be at the centers of the cells, but we do not require that in this standard.
Variables representing latitude must always explicitly include the
units attribute; there is no default value.
The units attribute will be a string formatted
as per the
udunits.dat file.
The recommended unit of latitude
is degrees_north. Also acceptable
are degree_north, degree_N,
degrees_N, degreeN,
and degreesN.
Example 4.1. Latitude axis
float lat(lat) ;
lat:long_name = "latitude" ;
lat:units = "degrees_north" ;
lat:standard_name = "latitude" ;
Application writers should note that the Udunits package does not
recognize the directionality implied by the "north" part of the unit
specification. It only recognizes its size, i.e., 1 degree is defined
to be pi/180 radians. Hence, determination that a coordinate is a
latitude type should be done via a string match between the given unit
and one of the acceptable forms of degrees_north.
Optionally, the latitude type may be indicated additionally by providing
the standard_name attribute with the value
latitude, and/or the axis attribute
with the value Y.
Coordinates of latitude with respect to a rotated pole should be given
units of degrees, not degrees_north
or equivalents, because applications which use the units to identify
axes would have no means of distinguishing such an axis from real
latitude, and might draw incorrect coastlines, for instance.