⇐ ⇒

[CF-metadata] [CF Metadata] #37: Conventions for Point Observation Data

From: Martina Stockhause <martina.stockhause>
Date: Fri, 20 Nov 2009 09:56:54 +0100

Hi John,

right thanks, we could describe several z coordinates. In our case with
z dimensions:

dimensions:
station = 8 ;
time = UNLIMITED ;
lon = 1;
lat = 1;
z0 = 1; // e.g. VTP in 110 m
z1 = 7; // MINERVA
z2 = 1050; // MRR (rain radar)

The constructors of meteorological instruments weren't able to design an
instrument beautiful enough to be called APHRODITE, yet.

Nevertheless we probably will stay with separated files for each
instrument type to keep the files simple and their contents close to our
provided ASCII versions.

Thanks a lot,
Martina


John Caron wrote:
> Hi Martina:
>
> Martina Stockhause wrote:
>> Hi John,
>>
>> We came to the decision to write datasets per instrument or sensor.
>> So, e.g. temperature measurements in different height of the same
>> type of measurement instrument or sensor are aggregated in one
>> dataset. For these we have the same time interval (1, 5 or 10 min)
>> and fixed heights. Even the Micro Rain Radar detects at fixed
>> heights. And most of the applications have to handle data from
>> different sensors, separately. So we have instrument-dependent time
>> and vertical coordinate systems. Examples for instruments on the
>> large 300m mast are:
>>
>> 1. Single instrument measuring in a concrete height z, e.g. VTP - dew
>> point mirror in 110 m height measuring air_temperature,
>> relative_humidity etc.
>>
>> 2. Multiple instruments of same type in different heights z, e.g.
>> MINERVA measuring all basic meteorological parameters, installed in 2 10
>> 50 70 110 175 250 m
>>
>> 3. Single instrument measuring vertical profiles (at the moment in fixed
>> detection heights) and points, e.g. rain radar MRR measuring in 1050
>> heights liquid_water_content(z), atmosphere_number_content_of_droplets
>> as total and for size classes A to K of 0.5 to 5.5 mm in diameter, and
>> precipitation_amount (daily)
>>
>> Therefore we have not a single station in CF's station concept, but
>> several - one for each instrument type. For the general case - all
>> data in one file - I get for
>> the 300m mast (the location is 30 cm above MSL and therefore the height
>> above ground is usually used as above MSL):
>>
>> dimensions:
>> station = 8 ;
>> time = UNLIMITED ;
>> lon = 1;
>> lat = 1;
>> z = 1050 ;
>>
>> // global variables:
>> float lon(station);
>> lon:long_name = "station longitude";
>> lon:units = "degrees_east";
>> float lat(station);
>> lat:long_name = "station latitude" ;
>> lat:units = "degrees_north" ;
>>
>> // variables:
>> char station_name(station, name_strlen) ;
>> station_name:standard_name = "station_id" ;
>> station_name:long_name ="Instrument on weather mast" ;
>> int station_info(station) ;
>> station_name:long_name = "" ;
>>
>> float height(station, z) ;
>> height:long_name = "height above ground level" ;
>> height:units = "m" ;
>> height:positive = "up" ;
>> // MINERVA values "2 10 50 70 110 175 250"
>> // MRR values minimum:35 interval:35 maximum:1085
>> // other single instruments in different heights
>>
>> double time(station, time) ;
>> time:long_name = "time of measurement" ;
>> time:units = "minutes since 1970-01-01 00:00:00" ;
>> // dep. on instrument/station:
>> // time:interval=1;
>> // time:interval=5;
>> // time:interval=10;
>> time:missing_value = -999.9;
>>
>> double dsize(station,time,z);
>> dsize:long_name="droplet size";
>> dsize:unit="mm";
>> // values "0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5"
>>
>> float air_temperature(station, time, height) ;
>> air_temperature:long_name = "air temperature" ;
>> air_temperature:units = "Celsius" ;
>> air_temperature:coordinates = "time lon lat height" ;
>>
>> float wind_speed(station, time, height) ;
>> wind_speed:long_name = "wind speed" ;
>> wind_speed:units = "m/s" ;
>> wind_speed:coordinates = "time lon lat height" ;
>>
>> float total_liquid_water_content(station, time, height) ;
>> total_liquid_water_content:long_name = "liquid water content" ;
>> total_liquid_water_content:units = "g/m3" ;
>> total_liquid_water_content:coordinates = "time lon lat height" ;
>>
>> float liquid_water_content(station, time, height, dsize) ;
>> liquid_water_content:long_name = "liquid water content" ;
>> liquid_water_content:units = "g/m3" ;
>> liquid_water_content:coordinates = "time lon lat height dsize" ;
>>
>> float precipitation_amount(station, time, height);
>> precipitation_amount:long_name = "liquid water content" ;
>> precipitation_amount:cell_methods="time: sum over days";
>> precipitation_amount:units = "g/m3" ;
>> precipitation_amount:coordinates = "time lon lat height" ;
>>
>>
>> In our special case of separated datasets for each instrument type the
>> station dimension becomes 1 and all gets a bit simpler. And the z
>> dimension can be defined much smaller in most cases.
>> Are there any comments on the idea of using the CF station for a
>> single instrument type at a weather station?
>>
>> Best wishes,
>> Martina
>>
>>
> in the first case, it appears that all of the data appears on 1050
> levels. Im guessing thats not what you want.
>
> one should be able to have multiple z coordinates in the same file:
>
> dimensions:
> station = 8 ;
> time = UNLIMITED ;
> lon = 1;
> lat = 1;
> z1 = 7;
> z2 = 12;
>
>
> // global variables:
> float lon(station);
> lon:long_name = "station longitude";
> lon:units = "degrees_east";
> float lat(station);
> lat:long_name = "station latitude" ;
> lat:units = "degrees_north" ;
>
> // variables:
> char station_name(station, name_strlen) ;
> station_name:standard_name = "station_id" ;
> station_name:long_name ="Instrument on weather mast" ;
>
> int station_info(station) ;
> station_name:long_name = "" ;
>
> float z1(z1) ;
> height:long_name = "height above ground level for MINERVA instrument" ;
> height:units = "m" ;
> height:positive = "up" ;
>
> float z2(z2) ;
> height:long_name = "height above ground level for APHRODITE
> instrument" ;
> height:units = "m" ;
> height:positive = "up" ;
>
>
> double time(station, time) ;
> time:long_name = "time of measurement" ;
> time:units = "minutes since 1970-01-01 00:00:00" ;
> // dep. on instrument/station:
> // time:interval=1;
> // time:interval=5;
> // time:interval=10;
> time:missing_value = -999.9;
>
> double dsize(station,time,z2);
> dsize:long_name="droplet size";
> dsize:unit="mm";
> // values "0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5"
>
> float air_temperature(station, time, z1) ;
> air_temperature:long_name = "air temperature" ;
> air_temperature:units = "Celsius" ;
> air_temperature:coordinates = "time lon lat height" ;
>
> float wind_speed(station, time, z1) ;
> wind_speed:long_name = "wind speed" ;
> wind_speed:units = "m/s" ;
> wind_speed:coordinates = "time lon lat height" ;
>
> float total_liquid_water_content(station, time, z2) ;
> total_liquid_water_content:long_name = "liquid water content" ;
> total_liquid_water_content:units = "g/m3" ;
> total_liquid_water_content:coordinates = "time lon lat height" ;
>
> float liquid_water_content(station, time, z2, dsize) ;
> liquid_water_content:long_name = "liquid water content" ;
> liquid_water_content:units = "g/m3" ;
> liquid_water_content:coordinates = "time lon lat height dsize" ;
>
> float precipitation_amount(station, time, z1);
> precipitation_amount:long_name = "liquid water content" ;
> precipitation_amount:cell_methods="time: sum over days";
> precipitation_amount:units = "g/m3" ;
> precipitation_amount:coordinates = "time lon lat height"
>
> obviously just making this up. What do you think?
>
> Having offered that, I need to see if theres any impossible problems
> in recognizing these files automatically.
>
>
>
>
Received on Fri Nov 20 2009 - 01:56:54 GMT

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

⇐ ⇒