# Title
Correction to the definition of "ocean sigma over z coordinate" in Appendix D

# Moderator
None yet

# Moderator Status Review [last updated: YYYY-MM-DD]
None yet

# Technical Proposal Summary
The convention for this parametric vertical coordinate appears to be defective 
in its design. Correcting it cannot be treated as a remedy for a defect, 
because the intention isn't clear, but a remedy is needed because at the moment 
there is no definition of what the coordinate variable should contain.

# Associated pull request
None yet

# Detailed Proposal
With the ocean sigma over z coordinate, above depth `depth_c` there are 
`nsigma` layers and below this depth the levels are surfaces of constant height 
`zlev` (positive upwards) relative to the horizontal datum. The vertical 
coordinate `z` for level `k` at time `n` and point `(j,i)` is

    for k <= nsigma:
    z(n,k,j,i) = eta(n,j,i) + sigma(k)*(min(depth_c,depth(j,i))+eta(n,j,i))
    for k > nsigma:
    z(n,k,j,i) = zlev(k)

where `z(n,k,j,i)` is height (positive upwards) relative to the datum (e.g. 
mean sea level) at gridpoint `(n,k,j,i)`, `eta(n,j,i)` is the height of the sea 
surface (positive upwards) relative to the datum at gridpoint `(n,j,i)`, 
`sigma(k)` is the dimensionless coordinate at vertical gridpoint `(k)` for `k 
<= nsigma`, and `depth(j,i)` is the distance (a positive value) from the datum 
to the sea floor at horizontal gridpoint `(j,i)`.

In the above, "`sigma(k)` is the dimensionless coordinate for `k <= nsigma`" 
means that `sigma` is the value that appears for level `k` in the vertical 
coordinate variable, whose standard name is `ocean_sigma_z_coordinate`. 
However, `sigma` is not defined for `k>nsigma`, so it cannot supply the 
vertical coordinate value at these lower levels. I think this must be an 
oversight in the convention as it stands. The convention is therefore faulty in 
not defining a monotonic set of values for the vertical coordinate variable.

I propose that we should *delete* the statement "`sigma(k)` is the 
dimensionless coordinate for `k <= nsigma`", and add the following:

> The vertical coordinate variable with standard name 
> `ocean_sigma_z_coordinate` should contain `sigma(k)*depth_c` for `k <= 
> nsigma` and `zlev(k)` for `k>nsigma`, with `units` of length. These comprise 
> a set of indicative values, monotonically increasing with `k`, for the depths 
> of the levels below the datum.

We should also add "The `standard_name` for `sigma` is 
`ocean_sigma_coordinate`" at the end of the entry, where the other standard 
names are defined.

It would be particularly useful to have comments from anyone who uses this 
vertical coordinate variable.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/cf-convention/cf-conventions/issues/314

This list forwards relevant notifications from Github.  It is distinct from 
[email protected], although if you do nothing, a subscription to the 
UCAR list will result in a subscription to this list.
To unsubscribe from this list only, send a message to 
[email protected].

Reply via email to