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
.
We attach no
specific meaning to the axis
values in this case,
but note that they may provide a useful hint to an application that
plots spatially oriented data.
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
).
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.
It would
also not generally be appropriate to attach an axis attribute to a
rotated-latitude coordinate variable. Such a variable can be identified
by a standard_name
of grid_latitude
.