Maarten,

It would, instead be something like this:

dimensions:
  lon = 360;
  lat = 180;
  layer = 18;
  vertices = 2;

variables:
   float lat(lat);
    lat:long_name = "latitude";
    lat:units = "degrees_north";
    lat:bounds = "lat_bnds";
  float lon(lon);
    lon:long_name = "longitude";
    lon:units = "degrees_east";
    lon:bounds = "lon_bnds";
  float pressure(layer, lon, lat);
    pressure:long_name = "pressure grid";
    pressure:units = "hPa";
    pressure:bounds = "pressure_bnds";
  float lat_bnds(lon,vertices);
  float lon_bnds(lat,vertices);
  float pressure_bnds(layer,lon,lat,vertices);
  float O3(layer, lon, lat);
    O3:units = "1e-9";
    O3:coordinates = "pressure";

You can have a layer index coordinate variable if you require/desire one, but it isn't necessary. The bounds attribute is applied to the pressure variable, and a coordinates attribute is applied to the O3 variable naming the pressure variable. The pressure variable is an "auxiliary coordinate", and must be explicitly associated with the O3 variable in this way.

Grace and peace,

Jim

On 2/19/15 12:40 PM, Maarten Sneep wrote:
Hi Jim,

Thanks for your answer.

On 19-02-15 18:22, Jim Biard wrote:
Maarten,

I believe that what your colleague should do is add a bounds variable
for the pressure and reduce the number of elements in the hPa coordinate
variable by one. The bounds variable provides a lower and upper bound
for each layer, so it captures the value currently being stored in the
extra element of the hPa coordinate variable. The values stored in the
hPa coordinate variable can be the lower bound pressures, the upper
bound pressures, or any value in between the two (layer center
pressures, for example).

If I understand you correctly, something like this:

dimensions:
  lon = 360;
  lat = 180;
  layer = 18;
  vertices = 2;

variables:
   float lat(lat);
    lat:long_name = "latitude";
    lat:units = "degrees_north";
    lat:bounds = "lat_bnds";
  float lon(lon);
    lon:long_name = "longitude";
    lon:units = "degrees_east";
    lon:bounds = "lon_bnds";
  float layer(layer);
    layer:long_name = "layer index";
  float lat_bnds(lon,vertices);
  float lon_bnds(lat,vertices);
  float pressure(layer, lon, lat, vertices);
    pressure:long_name = "pressure grid";
    pressure:units = "hPa";
  float O3(layer, lon, lat);
    O3:bounds = "pressure";
    O3:units = "1e-9";

Of course the pressure grid he has, has no gaps, and this method is somewhat wasteful in terms of storage space. I can see why he hesitates to use this method, but I think this is indeed the way forward.

Kind regards,

Maarten Sneep

--
CICS-NC <http://www.cicsnc.org/> Visit us on
Facebook <http://www.facebook.com/cicsnc>         *Jim Biard*
*Research Scholar*
Cooperative Institute for Climate and Satellites NC <http://cicsnc.org/>
North Carolina State University <http://ncsu.edu/>
NOAA's National Climatic Data Center <http://ncdc.noaa.gov/>
151 Patton Ave, Asheville, NC 28801
e: [email protected]
o: +1 828 271 4900




_______________________________________________
CF-metadata mailing list
[email protected]
http://mailman.cgd.ucar.edu/mailman/listinfo/cf-metadata

Reply via email to