⇐ ⇒

[CF-metadata] CF-1.0-beta5: curvilinear bounds "contiguous"attribute

From: Brian Eaton <eaton>
Date: Mon, 17 Mar 2003 10:14:04 -0700

All,

Way back when we were discussing bounds for 1-D axes we realized that for
an axis of dimension N it was necessary to allow a boundary variable of
dimension N,2 in order to support bounds on an axis using the unlimited
dimension. At that time we made the decision that for simplicity we would
allow only one representation of bounds, and so the N+1 representation was
removed from the draft. But the decision that only having one
representation was simpler than having two was not unequivocal:

1. When representing bounds for N contiguous cells it's clearly simpler to
   represent them in an N+1 boundary variable.

2. Many models use vertical coordinates where some variables are
   represented at layer centers and others at layer interfaces. This
   results in two vertical axes. The one for layer interfaces may also act
   as the boundary variable of the axis that contains layer centers. Not
   allowing dimension N+1 boundary variables forces the layer interface
   grid to be duplicated: once as an N+1 vertical coordinate and again as
   an N,2 boundary variable to layer center coordinate.

A point that's particularly relevent to the current discussion is that in
using an N+1 format for the boundary variable it is implicit that the cells
are contiguous. When we were thinking about the 1-D case it was easy to
overlook the importance of this point because then it's relatively easy
(though not trivial due to the potential for round-off sized differences)
for an application to look at cells described using an N,2 array and decide
whether or not they are contiguous. The current discussion, continued from
a year ago, makes it clear that this is not the case for 2-D. I would
argue that only having one representation for boundary variables provides a
false sense of simplicity when it's such a difficult job to take the
current CF specification and decide how the cells are connected.

I propose that we address this as follows:

1. In order to make the current convention easier to process we can adopt
   Bob's suggestion and require a counterclockwise ordering for the 2-D
   case. I would not add a "contiguous" attribute since I have yet to hear
   a clear definition of what it means. People who work with complex grids
   have methods (e.g., connectivity arrays) for describing how those grids
   (meshes) are connected. I think CF will need to incorporate that kind
   of metadata to deal efficiently with complex grids. We can address this
   when the users of complex grids make a proposal.

2. For the case of contiguous cells we should allow the simplest
   description, i.e., boundary variable is dimensioned (M+1,N+1) for a
   coordinate variable of dimension (M,N), and analogously for other
   ranks.

Brian
Received on Mon Mar 17 2003 - 10:14:04 GMT

This archive was generated by hypermail 2.3.0 : Tue Sep 13 2022 - 23:02:40 BST

⇐ ⇒