Tim,
Did you try the on-line CF compliance checker?
http://cf-pcmdi.llnl.gov/conformance/compliance-checker/
One thing I noticed is that basetime:units contains two time-of-day
strings after the date. This is patently illegal, and it might be
your whole problem.
Also, there are no standard_name or axis attributes on your
coordinate variables. I think these are optional by CF, but there
is a chance that IDV has some dependency on them.
Did you check IDV documentation for a possible list of required
metadata? That may give you a more concise checklist than the
entire CF spec. HTH.
Dave Allured
CU/CIRES Climate Diagnostics Center (CDC)
http://cires.colorado.edu/science/centers/cdc/
NOAA/ESRL/PSD, Climate Analysis Branch (CAB)
http://www.cdc.noaa.gov/
Timothy Hume wrote:
Hi,
I have just installed IDV 2.5 from the Unidata website. I have a CF compliant
(I think) NetCDF file which I am unable to view in IDV. The error message I
keep getting says that the file contains no gridded data. I am guessing the
problem is that my file is not really CF compliant. The CDL below shows the
structure of my file. I was wondering if anyone can spot any obvious mistakes I
am making with the conventions?
Thanks for any help,
Tim Hume
Centre for Australian Weather and Climate Research
Melbourne
Australia
----
netcdf ecmwf_0p5deg_ocf_t2m_mars_opn {
dimensions:
forecast = 32 ;
basetime = UNLIMITED ; // (100 currently)
latitude = 121 ;
longitude = 101 ;
bounds = 2 ;
variables:
double forecast(forecast) ;
forecast:long_name = "Time of model forecast, relative to the
basetime" ;
forecast:units = "hours" ;
forecast:bounds = "forecast_bounds" ;
double forecast_bounds(forecast, bounds) ;
forecast_bounds:long_name = "forecast interval" ;
forecast_bounds:units = "hours" ;
int basetime(basetime) ;
basetime:long_name = "Model basetime" ;
basetime:units = "seconds since 1970-01-01 00:00:00.0 0:00" ;
basetime:calendar = "gregorian" ;
double latitude(latitude) ;
latitude:long_name = "latitude" ;
latitude:units = "degrees_north" ;
latitude:bounds = "latitude_bounds" ;
latitude:valid_min = -90. ;
latitude:valid_max = 90. ;
double latitude_bounds(latitude, bounds) ;
latitude_bounds:long_name = "grid cell latitude boundaries" ;
latitude_bounds:units = "degrees_north" ;
latitude_bounds:valid_min = -90. ;
latitude_bounds:valid_max = 90. ;
double longitude(longitude) ;
longitude:long_name = "longitude" ;
longitude:units = "degrees_east" ;
longitude:bounds = "longitude_bounds" ;
longitude:valid_min = -360. ;
longitude:valid_max = 360. ;
double longitude_bounds(longitude, bounds) ;
longitude_bounds:long_name = "grid cell longitude boundaries" ;
longitude_bounds:units = "degrees_east" ;
longitude_bounds:valid_min = -360. ;
longitude_bounds:valid_max = 360. ;
float temperature_2m(basetime, forecast, latitude, longitude) ;
temperature_2m:long_name = "2m temperature" ;
temperature_2m:units = "K" ;
temperature_2m:_FillValue = 9.96921e+36f ;
temperature_2m:missing_value = 9.96921e+36f ;
temperature_2m:valid_min = 180.f ;
temperature_2m:valid_max = 330.f ;
temperature_2m:standard_name = "air_temperature" ;
temperature_2m:cell_methods = "lat: lon: mean (area weighted)" ;
double level ;
level:long_name = "Height above the surface" ;
level:units = "m" ;
// global attributes:
:Conventions = "CF-1.3" ;
:history = "File created by the Gridded OCF data ingest system"
;
:institution = "Australian Bureau of Meteorology" ;
:source = "model" ;
:title = "ECMWF forecasts of temperature_2m; resolution: 0.5 degree;
source: mars" ;
}
_______________________________________________
netcdfgroup mailing list
netcdfgroup@xxxxxxxxxxxxxxxx
For list information or to unsubscribe, visit: http://www.unidata.ucar.edu/mailing_lists/