⇐ ⇒

[CF-metadata] Need help writing point netCDF 3 dataset

From: Ethan Davis <edavis>
Date: Mon, 27 Nov 2006 17:23:41 -0700

Hi Mark,

Nothing wrong jumps out at me in your first CDL. Can you send me a
sample data file so I can take a closer look at it?

Your new CDL doesn't have some of the required global conventions (like
the Conventions attribute containing "Unidata Observation Dataset
v1.0"). Also, there aren't any "_Coordionate" variable attributes. Are
both CDLs output from ToolsUI? Did you de-select the "flower pot" icon
(at least that's what it looks like to me) for the second CDL dump?

I'll dig into this more in the morning.

Ethan

Mark Ohrenschall wrote:
> Hi Simon,
>
> Thanks for your help, and you're quite right about the peculiar scale
> and valid ranges -- I've fixed that now (I think) and I have included
> a new CDL listing with some other changes (such as using the more
> intuitive "recNum" rather than "ri").
>
> Sorry about the nomenclature confusion; what I meant to say was netCDF
> ToolsUI version 2.2 -- true, I am using nj22, but which library I'm
> using should be irrelevant as I'm hoping to consider the netCDF file
> as the final product and not how I made it. I'm still hoping this is
> the most appropriate list, as my question is not a Java question as
> such, but more of a semantic question or question of conventions.
> True, it is not strictly a CF question but I hope it's in the same
> ballpark (strictly speaking I suppose it's a "Unidata Observation
> Dataset Convention" question).
>
> I didn't hand-write the CDL, but it was generated using the NCDump tab
> of ToolsUI (which is essentially the same as running "ncdump -h" from
> the command-line) -- I didn't include any data so as not to weigh down
> the email, and I'm also hoping that the data content shouldn't matter.
>
> So, I've been trying various things and I remain unable to get the IDV
> (and ToolsUI) to recognize that my netCDF file has anything at all.
> Has anyone succeeded in using the IDV with their point data?
>
> Cheers *--* Mark
> netcdf D:/test.nc {
> dimensions:
> recNum = UNLIMITED; // (99 currently)
> variables:
> short sst(recNum=99);
> :standard_name = "sea_surface_temperature aerosol-corrected";
> :long_name = "Aerosol Corrected SST";
> :units = "degC";
> :add_offset = 0.0f; // float
> :scale_factor = 0.1f; // float
> :valid_range = -20.0f, 350.0f; // float
> short latitude(recNum=99);
> :standard_name = "latitude";
> :long_name = "Latitude";
> :units = "degrees_north";
> :add_offset = 0.0f; // float
> :scale_factor = 0.01f; // float
> :valid_range = -9000.0f, 9000.0f; // float
> int obstime(recNum=99);
> :standard_name = "time";
> :long_name = "Date and Time of Observation";
> :units = "seconds since 1970-01-01 00:00:00 GMT";
> short longitude(recNum=99);
> :standard_name = "longitude";
> :long_name = "Longitude";
> :units = "degrees_east";
> :add_offset = 0.0f; // float
> :scale_factor = 0.01f; // float
> :valid_range = -18000.0f, 17999.0f; // float
>
> :Conventions = "Unidata Point Format";
> :StandardVocabulary = "CF";
> :CF_url = "http://www.cgd.ucar.edu/cms/eaton/cf-metadata";
> :version = 2.0; // double
> :title = "Sea Surface Temperatures calculated at points based on satellite observations.";
> }
>
> Simon Wood wrote:
>> Hi Mark,
>>
>> I assume by netCDF 2.2 you are referring to netCDF-java 2.2 (nj22),
>> which is not the same thing as netCDF-2.2 ;-) I also note that you
>> are obviously trying to create CDM datasets. As I understand things
>> CDM is compatible with CF, but it is not exactly the same... 'point'
>> datasets do not mean anything in CF. So you're probably better off
>> asking this question on the netCDF-java lists
>> (http://www.unidata.ucar.edu/support/mailinglist/mjd/netcdf-java.html).
>>
>> That said, I can't see anything glaringly wrong with what you have
>> here (of course it has no data but assume thats deliberate ;-). I'm
>> not sure about the 'ni=99' syntax and the scale and valid range
>> values look strange... '_CoordinateAxisType' is, I think, a CDM-ism,
>> but should just be ignored by CF tools.
>>
>> Oh, you do need to prefix all your variable attributes with the
>> variable name (or is this just your shorthand?), ie:
>> short sst(ni=99);
>> sst:standard_name = "sea_surface_temperature aerosol-corrected";
>> sst:long_name = "Aerosol Corrected SST";
>> ^^^
>> ...
>>
>> cheers
>>
>> Simon
>>
>>
>> Mark Ohrenschall wrote:
>>> Hi folks,
>>>
>>> I'm writing a point netCDF 3 dataset which I've had no luck in
>>> getting either the IDV or netCDF (2.2) Tools to open (it does an
>>> NCDump but does nothing under the PointObs tab). It's essentially an
>>> XYZT dataset; I've included its CDL below. Can anyone tell me what
>>> I'm doing wrong, what I'm not doing that I need to do, and (or) send
>>> me an example point netCDF dataset that can be opened by the IDV and
>>> netCDF Tools?
>>>
>>> Thanks *--* Mark
>>>
>>> netcdf D:/test.nc {
>>> dimensions:
>>> ni = UNLIMITED; // (99 currently) // (has coord.var)
>>> variables:
>>> int ni(ni=99);
>>> short sst(ni=99);
>>> :standard_name = "sea_surface_temperature aerosol-corrected";
>>> :long_name = "Aerosol Corrected SST";
>>> :units = "degC";
>>> :scale_factor = 1s; // short
>>> :valid_range = -20s, 350s; // short
>>> :coordinates = "latitude longitude obstime";
>>> short latitude(ni=99);
>>> :standard_name = "latitude";
>>> :long_name = "Latitude";
>>> :units = "degrees_north";
>>> :scale_factor = 2s; // short
>>> :valid_range = -9000s, 9000s; // short
>>> :_CoordinateAxisType = "Lat";
>>> int obstime(ni=99);
>>> :standard_name = "time";
>>> :long_name = "Date and Time of Observation";
>>> :units = "seconds since 1970-01-01 00:00:00 GMT";
>>> :_CoordinateAxisType = "Time";
>>> short longitude(ni=99);
>>> :standard_name = "longitude";
>>> :long_name = "Longitude";
>>> :units = "degrees_east";
>>> :scale_factor = 2s; // short
>>> :valid_range = -18000s, 17999s; // short
>>> :_CoordinateAxisType = "Lon";
>>>
>>> :Conventions = "CF-1.0, Unidata Observation Dataset v1.0";
>>> :title = "Sea Surface Temperatures calculated at points based on
>>> satellite observations.";
>>> :institution = "NOAA National Environmental Satellite, Data and
>>> Information Service";
>>> :source = "NOAA NESDIS Office of Satellite Data Processing and
>>> Distribution";
>>> :history = "2006-11-24 17:14:31 -0700 Translated from test into
>>> netCDF at NGDC";
>>> :references =
>>> "http://www2.ncdc.noaa.gov/docs/klm/html/c9/sec91-2.htm";
>>> :comment = "Miscellaneous information about the data or methods
>>> used to produce it.";
>>> :cdm_datatype = "Point";
>>> :observationDimension = "ni";
>>> :geospatial_lat_max = 90; // int
>>> :geospatial_lat_min = -90; // int
>>> :geospatial_lon_max = 180; // int
>>> :geospatial_lon_min = -180; // int
>>> :time_coverage_start = "2000-01-01 00:00:00 UTC";
>>> :time_coverage_end = "2007-01-01 00:00:00 UTC";
>>> }
>>>
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>>
>>> _______________________________________________
>>> CF-metadata mailing list
>>> CF-metadata at cgd.ucar.edu
>>> http://www.cgd.ucar.edu/mailman/listinfo/cf-metadata
>>
>>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> CF-metadata mailing list
> CF-metadata at cgd.ucar.edu
> http://www.cgd.ucar.edu/mailman/listinfo/cf-metadata
>

-- 
Ethan R. Davis                                Telephone: (303) 497-8155
Software Engineer                             Fax:       (303) 497-8690
UCAR Unidata Program Center                   E-mail:    edavis at ucar.edu
P.O. Box 3000
Boulder, CO  80307-3000                       http://www.unidata.ucar.edu/
---------------------------------------------------------------------------
Received on Mon Nov 27 2006 - 17:23:41 GMT

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

⇐ ⇒