Changes between Initial Version and Version 1 of VariablesAsContainers


Ignore:
Timestamp:
04/12/13 04:35:40 (6 years ago)
Author:
markh
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • VariablesAsContainers

    v1 v1  
     1= Variables as Containers =
     2
     3This summaries one of the options under discussion in #79.
     4
     5== Vector Proposal ==
     6
     7
     8A new variable type is introduced to CF NetCDF: the Container Variable.
     9
     10An container variable may have attributes but it must not have data associated with it and it must not be defined with respect to any NetCDF dimensions.
     11
     12
     13
     14A new attribute:
     15{{{
     16    container_type
     17}}}
     18is introduced, to be used only with container variables. This will be a new controlled vocabulary for CF.
     19
     20A specific type of container variable is defined for the purpose of defining vector quantities.
     21{{{
     22    container_type = "spatial_vector"
     23}}}
     24The spatial_vector container variable defines an attribute for the name of the vector quantity:
     25{{{
     26    vector_name
     27}}}
     28 a set of attributes for the definition of components:
     29{{{
     30    i_component
     31    j_component
     32    k_component
     33    i_j_direction
     34    k_direction
     35    magnitude
     36}}}
     37Each of these attributes points to one and only one data variable within the dataset. All referenced components are CF data variables which exist in the dataset.
     38
     39Components must be defined on the same domain as each other (all coord definitions must be the same), but the sampling regimes may be different.
     40
     41    This is to exclude, for instance, one component variable having time-latitude-longitude and another time-altitude-latitude-longitude as coordinate variables, but it does permit components to be on an Arakawa C-grid.
     42
     43Example
     44{{{
     45int ice_drift_vector;
     46 drift_vector:container_type = "spatial_vector" ;
     47 drift_vector:vector_name = "sea_ice_displacement_vector" ;
     48 drift_vector:long_name = "sea ice drift vector" ;
     49 drift_vector:i_component = "dX" ;
     50 drift_vector:j_component = "dY" ;
     51 drift_vector:i_j_direction = "dir" ;
     52}}}