[gradsusr] units on vertical coordinate causing problems
Jennifer Adams
jma at cola.iges.org
Tue Jan 10 18:32:57 EST 2012
Hi, Jim --
A vertical coordinate that has units of "1" will not be recognized as a Z axis by the sdfopen code. You need a more meaningful unit, something the udunits library utility utScan can make sense of, or one of the following: hybrid_sigma_pressure, mb, millibar, sigma_level, level, layer, layers, degreesk, or degrees_k. If all those fail, sdfopen will look for an attribute named "axis" with a value of Z or z. Otherwise, you have to use xdfopen to nominate 'lev' as your Z dimension.
--Jennifer
On Jan 10, 2012, at 2:32 PM, James T. Potemra wrote:
> Probably for the developers...
>
> I've noticed that GrADS seems to care about the units attributed to the
> vertical co-ordinate in netCDF files. In particular, I am having
> problems accessing a file via OPeNDAP that has a vertical co-ordinate of
> "lev" with units of "1". I believe this is ok with respect to CF
> compliance (this is for model output on non-z vertical levels), however
> GrADS will not show variables that have such a unit on the vertical
> dimension.
>
> As an example, I've created two netCDF files with dimensions lat, lon,
> time and lev; and three variables ssh(time,lat,lon), u(time,lev,lat,lon)
> and v(time,lev,lat,lon). In one file the units of "lev" are "1", and
> using sdfopen to read this file gives only one variable, ssh, which is
> not dependent on the vertical co-ordinate. In the other file, with
> units of "meters", I can see all three variables. The particulars are
> included below. My question is whether this can be overcome without use
> of a control file and xdfopen? Thanks,
>
> Jim
>
> ----------------------------------------------------
> Config: v2.0.a9 little-endian readline printim grib2 netcdf hdf4-sds
> hdf5 opendap-grids,stn geotiff shapefile
> (running on Linux lii 2.6.18-274.3.1.el5 #1 SMP Fri Aug 26 18:49:02 EDT
> 2011 x86_64 x86_64 x86_64 GNU/Linux)
> same issue using
> Config: v2.0.a9.oga.1 little-endian readline printim grib2 netcdf
> hdf4-sds hdf5 opendap-grids,stn athena geotiff shapefile
> ----------------------------------------------------
>
> sample file 1 with dimensions of "1" on vertical co-ordinate:
>
> ga-> sdfopen sample_tide1.nc
> Scanning self-describing file: sample_tide1.nc
> SDF file sample_tide1.nc is open as file 1
> LON set to 118 290
> LAT set to -66 66
> LEV set to 0 0
> Time values set: 2012:1:1:0 2012:1:1:0
> E set to 1 1
> ga-> q file
> File 1 :
> Descriptor: sample_tide1.nc
> Binary: sample_tide1.nc
> Type = Gridded
> Xsize = 87 Ysize = 67 Zsize = 1 Tsize = 24 Esize = 1
> Number of Variables = 1
> ssh 0 t,y,x tidal elevation
> ga->
>
> ----------------------------------------------------
>
> sample file 2 with dimensions of "meters" on vertical co-ordinate:
>
> ga-> sdfopen sample_tide2.nc
> Scanning self-describing file: sample_tide2.nc
> SDF file sample_tide2.nc is open as file 1
> LON set to 118 290
> LAT set to -66 66
> LEV set to 0 0
> Time values set: 2012:1:1:0 2012:1:1:0
> E set to 1 1
> ga-> q file
> File 1 :
> Descriptor: sample_tide2.nc
> Binary: sample_tide2.nc
> Type = Gridded
> Xsize = 87 Ysize = 67 Zsize = 1 Tsize = 24 Esize = 1
> Number of Variables = 3
> ssh 0 t,y,x tidal elevation
> u 1 t,z,y,x u-velocity component
> v 1 t,z,y,x v-velocity component
> ga->
>
> ----------------------------------------------------
>
> ncdump on file 1:
>
> netcdf sample_tide1 {
> dimensions:
> lon = 87 ;
> lat = 67 ;
> time = 24 ;
> lev = 1 ;
> variables:
> double lon(lon) ;
> lon:units = "degrees_east" ;
> lon:long_name = "Longitude" ;
> lon:standard_name = "longitude" ;
> double lat(lat) ;
> lat:units = "degrees_north" ;
> lat:long_name = "Latitude" ;
> lat:standard_name = "latitude" ;
> double time(time) ;
> time:long_name = "Time" ;
> time:units = "minutes since 2012-01-01 00:00" ;
> double ssh(time, lat, lon) ;
> ssh:_FillValue = -999.99 ;
> ssh:units = "meters" ;
> ssh:long_name = "tidal elevation" ;
> ssh:standard_name = "sea_surface_height" ;
> ssh:missing_value = -999.99f ;
> double lev(lev) ;
> lev:units = "1" ;
> lev:long_name = "Level" ;
> lev:positive = "down" ;
> double u(time, lev, lat, lon) ;
> u:_FillValue = -999.99 ;
> u:units = "meter second-1" ;
> u:long_name = "u-velocity component" ;
> u:standard_name = "eastward_sea_water_velocity" ;
> u:missing_value = -999.99f ;
> double v(time, lev, lat, lon) ;
> v:_FillValue = -999.99 ;
> v:units = "meter second-1" ;
> v:long_name = "v-velocity component" ;
> v:standard_name = "northward_sea_water_velocity" ;
> v:missing_value = -999.99f ;
>
> ----------------------------------------------------
>
> ncdump on file 2:
>
> netcdf sample_tide2 {
> dimensions:
> lon = 87 ;
> lat = 67 ;
> time = 24 ;
> lev = 1 ;
> variables:
> double lon(lon) ;
> lon:units = "degrees_east" ;
> lon:long_name = "Longitude" ;
> lon:standard_name = "longitude" ;
> double lat(lat) ;
> lat:units = "degrees_north" ;
> lat:long_name = "Latitude" ;
> lat:standard_name = "latitude" ;
> double time(time) ;
> time:long_name = "Time" ;
> time:units = "minutes since 2012-01-01 00:00" ;
> double ssh(time, lat, lon) ;
> ssh:_FillValue = -999.99 ;
> ssh:units = "meters" ;
> ssh:long_name = "tidal elevation" ;
> ssh:standard_name = "sea_surface_height" ;
> ssh:missing_value = -999.99f ;
> double lev(lev) ;
> lev:units = "meters" ;
> lev:long_name = "Level" ;
> lev:positive = "down" ;
> lev:standard_name = "model_level_number" ;
> double u(time, lev, lat, lon) ;
> u:_FillValue = -999.99 ;
> u:units = "meter second-1" ;
> u:long_name = "u-velocity component" ;
> u:standard_name = "eastward_sea_water_velocity" ;
> u:missing_value = -999.99f ;
> double v(time, lev, lat, lon) ;
> v:_FillValue = -999.99 ;
> v:units = "meter second-1" ;
> v:long_name = "v-velocity component" ;
> v:standard_name = "northward_sea_water_velocity" ;
> v:missing_value = -999.99f ;
>
>
>
> ,
> _______________________________________________
> gradsusr mailing list
> gradsusr at gradsusr.org
> http://gradsusr.org/mailman/listinfo/gradsusr
--
Jennifer M. Adams
IGES/COLA
4041 Powder Mill Road, Suite 302
Calverton, MD 20705
jma at cola.iges.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://gradsusr.org/pipermail/gradsusr/attachments/20120110/960252af/attachment-0003.html
More information about the gradsusr
mailing list