⇐ ⇒

[CF-metadata] CF point observation Conventions ready for review

From: John Caron <caron>
Date: Wed, 18 Nov 2009 08:42:49 -0700

Hi Sara:

Thanks for adding your example to the mix. This appears to be a timeseries at a single x,y location with all the measurements on single, but different levels (?)

Because these are single level, I would be inclined to use a variation of the station representation. One possibility is to put each z coordinate in its own coordinate using a "scalar dimension" (dimension with length 1) :


dimension
 z_inst1 = 1;
 z_inst2 = 1;
 z_inst3 = 1;

float lon;
float lat;

float z_inst1(z_inst1);
float z_inst2(z_inst2);
float z_inst3(z_inst3);

long time(time);

float wspd(time,z_inst1);
float wdir(time,z_inst1);
float atemp(time,z_inst2);
float SST(time,z_inst3);


Sara Haines wrote:
> Dear Nan and John:
>
> I've been monitoring this conversation for just a short period. So I
> apologize ahead for chiming in so late in the game.
>
> It is very important for observational data model to represent the
> actual system that is deployed. The point that Nan and others have
> raised is a need for a container to represent multiple measurement
> heights for several sensors at a station (e.g. met above the ocean
> surface, near-surface and near-bottom ocean temperature and salinity).
>
> You all seem in agreement on this and that it is not a simple side-bar
> case. Similar to what Nan described was kludged in the SEACOOS CDL v2.0
> netcdf format because no case like moorings and buoys with multiple
> point measurements was covered in CF-conventions back in 2004. We
> defined the requirement that the point-measurement sensors be associated
> with the same location or site. SEACOOS CDL v2.0 was adopted by SECOORA
> but most definitely needs revisiting. It looks like this:
>
> netcdf fixed-point {
>
> // This is a fixed-point station with dependent variables
> // measured by sensors at different heights.
> //
> // All sensors are sampling at the same time.
> // (1) x and y and sensor-specific z are repeated for each time.
> // (2) Assign z dimension equal to number of z measurement levels
> // (3) Assign values for z levels in the data section
> // (4) Use variable attribute called "z" under dependent variable to
> // associate specific z of point measurement
> // (5) Use z variable to describe all the required attributes
> // without having to repeat under each dependent variable
>
> dimensions:
> time = 4;
> lon = 1;
> lat = 1;
> z = 3;
>
> variables:
>
> // INDEPENDENT VARIABLES
> long time(time);
> time: standard_name = "time";
> time: units = "sec since 1970-1-1 00:00:00";
> time: axis = "T";
> float lon(lon);
> lon: standard_name = "longitude";
> lon: units = "degrees_east" ;
> lon: reference = "geographical coordinates" ;
> lon: axis = "X";
> float lat(lat);
> lat: standard_name = "latitude";
> lat: units = "degrees_east";
> lat: reference = "geographical coordinates";
> lat: axis = "Y";
> float z(z);
> z: standard_name = "height";
> z: units = "m";
> z: reference = "mean sea level (MSL)";
> z: positive = "up";
> z: axis = "Z";
>
> // DEPENDENT VARIABLES
> float wspd(time);
> wspd: long_name = "Wind Speed";
> wspd: standard_name = "wind_speed";
> wspd: units = "m s-1";
> wspd: z = 45;
> float wdir(time);
> wdir: long_name= "Wind Direction (from)";
> wdir: standard_name = "wind_from_direction";
> wdir: units = "degrees";
> wdir: reference = "clockwise from true north";
> wdir: valid_range = 0.,360.;
> wdir: z = 45;
> float atemp(time);
> atemp: long_name = "Air temperature";
> atemp: standard_name = "air_temperature";
> atemp: units = "degrees Celsius";
> atemp: z = 24;
> float SST(time);
> SST: long_name = "Sea Surface Temperature";
> SST: standard_name = "sea_surface_temperature";
> SST: units = "degrees Celsius";
> SST: z = -5;
>
> // global attributes:
> // (use all for adopted SEACOOS CDL v2.0)
> :format_category = "fixed-point";
>
> data:
>
> time = 1062804600,1062808200,1062810000,1062811800;
> lon = -82.543;
> lat = 18.462702;
> z = 45, 24, -5;
>
> wspd = 9.80, 12.63, 16.52, 18.97;
> wdir = 88.8,103.6,112.7,105.0;
> atemp = 27.00, 27.23, 27.05, 26.97;
> SST = 28.11, 28.17, 28.17, 28.35;
>
> }
>
> I understand your points about making lat and lon scalars. So ignore
> that for just now. (Remember: This was developed 5 years ago!)
>
> The variable attribute above ("SST: z = -5") should probably be an index
> to the z variable to be less confusing. But I think you get the idea.
>
> There is something workable for conventions of Point Observation Data
> without being cobbling something together. I like many of the ideas in
> this proposed convention, for example, multiple deployments at the same
> site. It addresses most short-comings in previous CF-conventions for
> non-gridded data and what is kludged in the Southeast Region.
>
> I would most enjoy discussing this further. It will help me understand
> what is being proposed. Right now, I'm mostly chiming in to underscore
> Nan's need and the need to address it in this round of the review.
>
> Thanks,
> Sara
>
Received on Wed Nov 18 2009 - 08:42:49 GMT

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

⇐ ⇒