[gradsusr] 'Start+count exceeds dimension bound' error

David.Werth at srnl.doe.gov David.Werth at srnl.doe.gov
Fri May 4 07:55:12 EDT 2012


I am having trouble viewing a NetCDF datafile in GrADS, v2.0.1.oga.1, 
which I installed on my Windows machine using the win32-superpack.zip 
file.  I wrote a control file designed to open a file in NetCDF format:

UKMOshum-2.ctl
dset ^pcmdi.ipcc4.ukmo_hadgem1.20c3m.run1.monthly.hus_A1_1950_to_1999.nc
dtype netcdf
title RAMS Output
undef 1.0e30
options 365_day_calendar
xdef    lon 192 linear  0 1.875
ydef    lat 145 linear -90 1.25
zdef    plev 16 levels 1000 925 850 700 600 500 400 300 250 200 150 100 70 
50 30 20
tdef    time 600  linear 00:00Z02jan1950 01month
vars    1
hus=>hus 16 x,y,z,t specific humidity
endvars

I open it with the command ?xdfopen UKMOshum-1.ctl?, and it opens without 
any trouble.  When I try to display the data, however, I get this error:


xdfopen UKMOshum-2.ctl
d hus
gancgrid error: nc_get_vara_double failed; NetCDF: Start+count exceeds 
dimension bound 

I have used a similar control to open and display this same variable (hus) 
for a different (also NetCDF) file, so I'm not sure what is going wrong 
now. I have seen similar errors posted on the message board, and tried to 
avoid the same mistakes.  Doing an ncdump on the NetCDF file has this 
output:

netcdf pcmdi.ipcc4.ukmo_hadgem1.20c3m.run1.monthly.hus_A1_1950_to_1999 {
dimensions:
        lon = 192 ;
        lat = 144 ;
        plev = 16 ;
        time = UNLIMITED ; // (600 currently)
        bnds = 2 ;
variables:
        double lon(lon) ;
                lon:standard_name = "longitude" ;
                lon:long_name = "longitude" ;
                lon:units = "degrees_east" ;
                lon:axis = "X" ;
                lon:bounds = "lon_bnds" ;
        double lon_bnds(lon, bnds) ;
        double lat(lat) ;
                lat:standard_name = "latitude" ;
                lat:long_name = "latitude" ;
                lat:units = "degrees_north" ;
                lat:axis = "Y" ;
                lat:bounds = "lat_bnds" ;
        double lat_bnds(lat, bnds) ;
        double plev(plev) ;
                plev:standard_name = "air_pressure" ;
                plev:long_name = "pressure" ;
                plev:units = "Pa" ;
                plev:axis = "Z" ;
                plev:positive = "down" ;
                plev:original_units = "hPa" ;
        double time(time) ;
                time:standard_name = "time" ;
                time:long_name = "time" ;
                time:units = "days since 1950-1-1" ;
                time:axis = "T" ;
                time:calendar = "360_day" ;
                time:bounds = "time_bnds" ;
        double time_bnds(time, bnds) ;
        float hus(time, plev, lat, lon) ;
                hus:standard_name = "specific_humidity" ;
                hus:long_name = "Specific Humidity" ;
                hus:units = "1" ;
                hus:cell_methods = "time: mean" ;
                hus:_FillValue = 1.e+20f ;
                hus:missing_value = 1.e+20f ;
                hus:history = " At   16:53:26 on 04/15/2005: CMOR altered 
the data in the following ways: replaced missing value flag (-1.07374E+09) 
with standard missing value (1.00000E+20); Dimension order was changed;" ;

This indicates that the units field should be in the order x,y,z,t, 
correct?

D. Werth 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://gradsusr.org/pipermail/gradsusr/attachments/20120504/395132ae/attachment-0003.html 


More information about the gradsusr mailing list