[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 20030303:Error with gribtocdl



On Mon, 3 Mar 2003, Unidata Support wrote:

>
> ------- Forwarded Message
>
> >To: address@hidden
> >From: "Waylon Collins" <address@hidden>
> >Subject: Error with gribtocdl
> >Organization: UCAR/Unidata
> >Keywords: 200303011129.h21BTB308517
>
> This is a multi-part message in MIME format.
> --------------7E19F6396570B56A1CAD3316
> Content-Type: text/plain; charset=us-ascii
> Content-Transfer-Encoding: 7bit
>
> Dear Unidata Support,
>
> When running gribtocdl on a linux box (uname -r = 2.4.7-10smp), an
> apparent error message appeared (attached.) Nevertheless, information
> appeared in the cdl file, but not the parameter information - I know for
> certain the grib file contained one parameter (Sea Surface Temperatrue
> with a Grib Code of 80), yet it was not referenced in the cdl file. The
> contents of the cdl file created are also attached. Any idea what the
> problem is?
>
> Waylon
> --
> **********************************************************************
> * Waylon G. Collins                  Voice: (361)289-0959            *
> * NOAA/National Weather Service      E-Mail: address@hidden *
> * 300 Pinson Drive                                                   *
> * Corpus Christi, TX 78406                                           *
> * USA                                                                *
> **********************************************************************
>
>
> --------------7E19F6396570B56A1CAD3316
> Content-Type: text/plain; charset=us-ascii;
>  name="gribtocdl_error"
> Content-Transfer-Encoding: 7bit
> Content-Disposition: inline;
>  filename="gribtocdl_error"
>
>  gribtocdl -v sst.grib > sst.cdl
> Mar 01 11:08:13 gribtocdl[1524]: Starting Up
> Mar 01 11:08:13 gribtocdl[1524]: oversize GRIB product 2

Wayon,

The grib products contain a size after the start of the product. Since
gribtocdl didn't find the end of the grib product at a the predicted
place,  it gives error message  "oversize GRIB product" and stops
processing the grib.  The problem might be a corrupted grib product or a
grib product that has the wrong size in it. I would try another grib and
see if you get the same error. It seems that gribtocdl "sort of" ignored
the error and wrote out the cdl anyway but without the parameter. I'll
probably fix gribtocdl to not write out the cdl if oversize error is
encountered.

Robb...




> Mar 01 11:08:13 gribtocdl[1524]: EOF on input
> Mar 01 11:08:13 gribtocdl[1524]: Exiting
> Mar 01 11:08:13 gribtocdl[1524]: 0 WMO msgs, 0 GRIBs decoded, 0 written
>
> --------------7E19F6396570B56A1CAD3316
> Content-Type: text/plain; charset=us-ascii;
>  name="sst.cdl"
> Content-Transfer-Encoding: 7bit
> Content-Disposition: inline;
>  filename="sst.cdl"
>
> netcdf sst.grib{
>
>
> dimensions:
>         record = UNLIMITED ;    // (reference time, forecast time)
>         lat = 0 ;
>         lon = 0 ;
>         datetime_len = 21 ;
>         nmodels = 0 ;
>         ngrids = 0 ;
>         nav = 1 ;
>         nav_len = 100 ;
>
> variables:
>
>         double reftime(record) ;      // reference time of the model
>                reftime:long_name = "reference time" ;
>                reftime:units = "hours since 1992-1-1" ;
>
>         double valtime(record) ;      // forecast time ("valid" time)
>                valtime:long_name = "valid time" ;
>                valtime:units = "hours since 1992-1-1" ;
>
>         :record = "reftime, valtime" ;        // "dimension attribute" -- 
> means
>                                         // (reftime, valtime) uniquely
>                                         // determine record
>
>         char   datetime(record, datetime_len) ; // derived from reftime
>                datetime:long_name = "reference date and time" ;
>                // units YYYY-MM-DD hh:mm:ssZ  (ISO 8601)
>
>         float  valtime_offset(record) ; // derived as valtime-reftime
>                valtime_offset:long_name = "hours from reference time" ;
>                valtime_offset:units = "hours" ;
>
>
>         // The following lat and lon coordinate variables are redundant,
>         // since the navigation variables provide the necessary information.
>         // The extra information is included here for human readability.
>
>         float  lat(lat) ;
>                lat:long_name = "latitude" ;
>                lat:units = "degrees_north" ;
>
>         float  lon(lon) ;
>                lon:long_name = "longitude" ;
>                lon:units = "degrees_east" ;
>
>         long   model_id(nmodels) ;
>                model_id:long_name = "generating process ID number" ;
>
>         // navigation variables all use nav dimension
>
>         char   nav_model(nav, nav_len) ;        // navigation parameterization
>                nav_model:long_name = "navigation model name" ;
>
>         int    grid_type_code(nav) ;
>                grid_type_code:long_name = "GRIB-1 GDS data representation 
> type" ;
>
>         char   grid_type(nav, nav_len) ;
>                grid_type:long_name = "GRIB-1 grid type" ;
>
>         char   grid_name(nav, nav_len) ;
>                grid_name:long_name = "grid name" ;
>
>         int    grid_center(nav) ;
>                grid_center:long_name = "GRIB-1 originating center ID" ;
>
>         int    grid_number(nav, ngrids) ;
>                grid_number:long_name = "GRIB-1 catalogued grid numbers" ;
>                grid_number:_FillValue = -9999 ;
>
>         char   i_dim(nav, nav_len) ;
>                i_dim:long_name = "longitude dimension name" ;
>
>         char   j_dim(nav, nav_len) ;
>                j_dim:long_name = "latitude dimension name" ;
>
>         int    Ni(nav) ;
>                Ni:long_name = "number of points along a latitude circle" ;
>
>         int    Nj(nav) ;
>                Nj:long_name =        "number of points along a longitude 
> circle" ;
>
>         float  La1(nav) ;
>                La1:long_name = "latitude of first grid point" ;
>                La1:units = "degrees_north" ;
>
>         float  Lo1(nav) ;
>                Lo1:long_name = "longitude of first grid point" ;
>                Lo1:units = "degrees_east" ;
>
>         float  La2(nav) ;
>                La2:long_name = "latitude of last grid point" ;
>                La2:units = "degrees_north" ;
>
>         float  Lo2(nav) ;
>                Lo2:long_name = "longitude of last grid point" ;
>                Lo2:units = "degrees_east" ;
>
>         float  Di(nav) ;
>                Di:long_name = "Longitudinal direction increment" ;
>                Di:units = "degrees" ;
>
>         float  Dj(nav) ;
>                Dj:long_name = "Latitudinal direction increment" ;
>                Dj:units = "degrees" ;
>
>         byte   ResCompFlag(nav) ;
>                ResCompFlag:long_name = "resolution and component flags" ;
>
>         // end of navigation variables
>
>
> // global attributes
>                :history = "2003-03-01 05:08:13 - created by gribtocdl 1.3 - 
> 31.05.2002" ;
>                :title = "sst.grib" ;
>                :Conventions = "NUWG" ;
>                :version = 0.0 ;
>
> data:
>
>  model_id = 1009 ;
>
>  // Navigation
>  nav_model = "GRIB1" ;
>  grid_type_code = 0 ;
>  grid_type = "Latitude/Longitude" ;
>  grid_name = " " ;
>  grid_center = 0 ;
>  grid_number =  ;
>  i_dim = "lat" ;
>  j_dim = "lon" ;
>  Ni = 0 ;
>  Ni = 0 ;
>  Nj = 0 ;
>  La1 = 0.000000 ;
>  Lo1 = 0.000000 ;
>  La2 = 0.000000 ;
>  Lo2 = 0.000000 ;
>  Di = 0.000000 ;
>  Dj = 0.000000 ;
>  ResCompFlag = 0 ;
>
>  lon =  0.00 ;
>
>  lat =  0.00 ;
>
> }
> --------------7E19F6396570B56A1CAD3316--
>
>
> ------- End of Forwarded Message
>
>

===============================================================================
Robb Kambic                                Unidata Program Center
Software Engineer III                      Univ. Corp for Atmospheric Research
address@hidden             WWW: http://www.unidata.ucar.edu/
===============================================================================