Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 12 additions & 22 deletions ch04.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -90,13 +90,13 @@ Coordinates of longitude with respect to a rotated pole should be given units of
[[vertical-coordinate, Section 4.3, "Vertical Coordinate"]]
=== Vertical (Height or Depth) Coordinate

Variables representing dimensional height or depth axes must always explicitly include the **`units`** attribute; there is no default value.
Variables representing vertical coordinates must have either

The direction of positive (i.e., the direction in which the coordinate values are increasing), whether up or down, cannot in all cases be inferred from the units.
The direction of positive is useful for applications displaying the data.
For this reason the attribute **`positive`** as defined in the COARDS conventions is required if the vertical axis units are not a valid unit of pressure (as determined by the UDUNITS package <<UDUNITS>>) -- otherwise its inclusion is optional.
The **`positive`** attribute may have the value **`up`** or **`down`** (case insensitive).
This attribute may be applied to either coordinate variables or auxiliary coordinate variables that contain vertical coordinate data.
* a **`positive`** attribute with a value of **`up`** or **`down`** (case insensitive), which respectively mean that increasingly positive coordinate values indicate higher locations i.e. further from the centre of the Earth (**`positive="up"`**) or lower locations (**`positive="down"`**); or

* a **`units`** attribute containing units of pressure (as determined by UDUNITS). If the **`units`** attribute value is a valid pressure unit the default value of the **`positive`** attribute is **`down`**.

The **`positive`** attribute may be applied both to coordinate variables and to auxiliary coordinate variables that contain vertical coordinate data.

For example, if an oceanographic netCDF file encodes the depth of the surface as 0 and the depth of 1000 meters as 1000 then the axis would use attributes as follows:

Expand All @@ -105,33 +105,23 @@ axis_name:units = "meters" ;
axis_name:positive = "down" ;
----

If, on the other hand, the depth of 1000 meters were represented as -1000 then the value of the **`positive`** attribute would have been **`up`**.
If the **`units`** attribute value is a valid pressure unit the default value of the **`positive`** attribute is **`down`**.

A vertical coordinate will be identifiable by:

* units of pressure; or
* the presence of the **`positive`** attribute with a value of **`up`** or **`down`** (case insensitive).
If, on the other hand, the depth of 1000 meters were represented as -1000 then the value of the **`positive`** attribute would be **`up`**.

Optionally, the vertical type may be indicated additionally by providing the **`standard_name`** attribute with an appropriate value, and/or the **`axis`** attribute with the value **`Z`**.
If both **`positive`** and **`standard_name`** are provided, it is recommended that they should be consistent.
For instance, if a depth of 1000 metres is represented by -1000 and **`positive`** is **`up`**, it would be inconsistent to give the **`standard_name`** as **`depth`**, whose definition (vertical distance below the surface) implies positive down.
If an application detects such an inconsistency, the user should be warned, and the **`positive`** attribute should be used to determine the sign convention.

[[dimensional-vertical-coordinate, Section 4.3.1, "Dimensional Vertical Coordinate"]]
==== Dimensional Vertical Coordinate

Variables representing dimensional vertical coordinates (i.e. not dimensionless numbers, but having a unit of measure) must always explicitly include **`units`** consistent with UDUNITS; there is no default value.
Acceptable units include the following:

Variables representing dimensional vertical coordinates for depth or height must always explicitly include the **`units`** attribute.
The acceptable units for a vertical (depth or height) coordinate variable must a UDUNITS <<UDUNITS>> representation of one of the following:

* units of pressure.
For vertical axes the most commonly used of these include **`bar`**, **`millibar`**, **`decibar`**, **`atmosphere (atm)`**, **`pascal (Pa)`**, and **`hPa`**.
* units of length.
For vertical axes the most commonly used of these include **`meter (metre, m)`**, and **`kilometer (km)`**.
* units of pressure; the most commonly used of these include **`bar`**, **`millibar`**, **`decibar`**, **`atmosphere (atm)`**, **`pascal (Pa)`**, and **`hPa`**.
* units of length; the most commonly used of these include **`meter (metre, m)`**, and **`kilometer (km)`**.
* other units that may under certain circumstances reference vertical position such as units of density or temperature.

Plural forms are also acceptable.

[[dimensionless-vertical-coordinate, Section 4.3.2, "Dimensionless Vertical Coordinate"]]
==== Dimensionless Vertical Coordinate

Expand Down
1 change: 1 addition & 0 deletions history.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@

=== Version 1.14-draft

* {issues}635[Issue #635]: Revision of section 4.3 to improve its clarity
* {issues}623[Issue #623]: Consistently refer to "CF conventions" and use of impersonal from.

=== Version 1.13 (17 December 2025)
Expand Down
Loading