This message came from the CF Trac system.  Do not reply.  Instead, enter your 
comments in the CF Trac system at https://cf-pcmdi.llnl.gov/trac/.

#104: Clarify the interpretation of scalar coordinate variables
-----------------------------+----------------------------------------------
  Reporter:  jonathan        |       Owner:  [email protected]
      Type:  enhancement     |      Status:  new                          
  Priority:  medium          |   Milestone:                               
 Component:  cf-conventions  |     Version:                               
Resolution:                  |    Keywords:                               
-----------------------------+----------------------------------------------
Comment (by jonathan):

 Dear John

 > What this discussion has helped clarify for me is that coordinate
 variables are independent, and auxiliary coordinates are dependent
 variables. I think thats a really valuable advance in the data model.

 I agree. We will put that in the data model.

 > OTOH, theres nothing special about a scalar coordinate, and should not
 be handled in a special way in the data model. Its just an auxiliary
 coordinate, period. By the current definition of coordinate and auxiliary
 coordinate, its clearly an auxiliary coordinate.

 It is formally an auxiliary coordinate variable, but not logically so.
 That's a point that Steve made and is included in the motivation for this
 ticket - now a long way back in [https://cf-
 pcmdi.llnl.gov/trac/ticket/104#comment:28 comment 28]:

   Scalar coordinate variables provide a convenient way to encode
 coordinate variables of size one. They do so by borrowing the syntax that
 is otherwise used for auxiliary coordinate variables. There is, however, a
 key difference between the interpretation of scalar coordinate variables
 and auxiliary coordinate variables. Scalar coordinates have the same
 status in a CF file as (conventional, Unidata, COARDS) coordinates in
 which the dimension name and the variable name match. These coordinates
 define the independent variables (spatiotemporal and others) for the data
 variable. Auxiliary coordinate variables provide extra information as a
 function of these independent variables, as alternative numeric values
 (which don't have to be unique or monotonic along a given dimension), or
 string-valued labels. To indicate that a variable is intended to be an
 auxiliary coordinate variable, it is necessary to give it a dimension, in
 order to show which coordinate variable(s) it belongs to. Numeric scalar
 coordinate variables are not to be interpreted as auxiliary coordinate
 variables.

 Yes, the single timeseries representation with scalar `lat` and `lon`
 coordinates would, according to this ticket, be regarded as having
 independent dimensions of lat and lon. That is a possible interpretation,
 and I would say it's the preferred one in the case that the timeseries was
 extracted from a gridded dataset.

 I would argue that it ''is'' possible, according to this ticket, to store
 the data with the interpretation you prefer, that it's one timeseries from
 a DSG. That is what it means if we use auxiliary coordinates i.e.

 {{{
 dimensions:
   station=1;
   time=NNN;
 variables:
   float lat(station);
   float lon(station);
   float time(time);
   float temp(station,time);
     temp:coordinates="lat lon";
 }}}

 In this case, the `station` dimension is a discrete axis. CF section 4.5
 says a discrete axis "indicates either an ordered list or an unordered
 collection, and does not correspond to any continuous coordinate
 variable." So it is a netCDF dimension, but it doesn't correspond to any
 independent physical dimension. It's just an index; only `time` is an
 independent physical dimension. Isn't that what you want?

 Consider the case with `station=2` but otherwise the same. Now you have
 two 1D timeseries, each with a single independent physical dimension of
 time. The other netCDF dimension is just an index to bundle them up. You
 could put exactly the same data in a one of the chapter 9 ragged
 representations. Then the data array would have only one netCDF dimension,
 but the station dimension would still exist, and you would still have
 `lat(station)` and `lon(station)` just as above. Again, the `station`
 dimension is simply an index. Would you agree that this does not add any
 physical dimensions to the individual timeseries?

 Best wishes

 Jonathan

-- 
Ticket URL: <https://cf-pcmdi.llnl.gov/trac/ticket/104#comment:59>
CF Metadata <http://cf-pcmdi.llnl.gov/>
CF Metadata

This message came from the CF Trac system.  To unsubscribe, without 
unsubscribing to the regular cf-metadata list, send a message to 
"[email protected]" with "unsubscribe cf-metadata" in the body of your 
message.

Reply via email to