[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 20020430: converting ETA 104 GRIB file to netCDF using gribtonc
- Subject: Re: 20020430: converting ETA 104 GRIB file to netCDF using gribtonc
- Date: Wed, 1 May 2002 09:03:51 -0600 (MDT)
On Tue, 30 Apr 2002, Unidata Support wrote:
>
> ------- Forwarded Message
>
> >To: address@hidden
> >From: David Ovens <address@hidden>
> >Subject: converting ETA 104 GRIB file to netCDF
> >Organization: University of Washington
> >Keywords: 200204302322.g3UNMna26603 netCDF gribtonc CDL ETA
>
> Hello,
>
> I need to convert the ETA 104 GRIB files to netCDF format. I am a
> novice netCDF person. I tried using gribdump to put together a *.cdl
> file like I have for some other models, and then tried using gribtonc,
> but I don't get any of the gridded data in the netCDF file -- I just
> get the data I entered in the cdl file. Do you have any suggestions?
>
> Thanks for any help.
>
David,
The way I debug gribtonc is to run it from the command line with verbose
mode, ie
% gribtonc -vl - eta104.cdl eta104.nc < eta104.input
One can also send it to a log file,
% gribtonc -vl log eta104.cdl eta104.nc < eta104.input
Usually the output gives enough information to solve the problem. At this
time, I'm preparing for a workshop as a presenter so I will not have time
to take a detail look at this problem until later next week. Keep me
informed of your status, also I would appreciate a copy of a working cdl
if you solve the problem.
Thanks,
Robb...
> Here is my eta104.cdl file for sea-level pressure and Z at 500 mb:
>
> =======================================================================
> netcdf eta { // ETA 40km model in Polar Stereographic Projection
>
> dimensions:
>
> record = UNLIMITED ; // (reference time, forecast time)
> level = 1 ; // isobaric levels for most parameters
>
> x = 147 ;
> y = 110 ;
> datetime_len = 21 ; // string length for datetime strings
> nmodels = 3 ; // both 80km and 48km models
> accum = 2 ; // time range for accumulations
> nav = 1 ; // For navigation. Variables that use
> // this dimension define a mapping between
> // (x,y) indices and (lat,lon) coords.
>
> nav_len = 100 ; // max length for navigation character strings
>
>
> 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" ;
>
> float level(level) ;
> level:long_name = "level" ;
> level:units = "hectopascals" ;
>
> int 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) ;
> grid_number:long_name = "GRIB-1 catalogued grid numbers" ;
> grid_number:_FillValue = -9999 ;
>
> char earth_shape(nav, nav_len) ;
> earth_shape:long_name = "assumed earth shape" ;
>
> char x_dim(nav, nav_len) ;
> x_dim:long_name = "x dimension name" ;
>
> char y_dim(nav, nav_len) ;
> y_dim:long_name = "y dimension name" ;
>
> int Nx(nav) ;
> Nx:long_name = "number of points along x-axis" ;
>
> int Ny(nav) ;
> Ny:long_name = "number of points along y-axis" ;
>
> 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" ;
>
> byte ResCompFlag(nav) ;
> ResCompFlag:long_name = "resolution and component flags" ;
>
> float Lov(nav) ;
> Lov:long_name = "orientation of the grid" ;
> Lov:units = "degrees_east" ;
>
> float Dx(nav) ;
> Dx:long_name = "x-direction grid length" ;
> Dx:units = "meters" ;
>
> float Dy(nav) ;
> Dy:long_name = "y-direction grid length" ;
> Dy:units = "meters" ;
>
> byte ProjFlag(nav) ;
> ProjFlag:long_name = "projection center flag" ;
>
> float Latin1(nav) ;
> Latin1:long_name = "first intersecting latitude" ;
> Latin1:units = "degrees_north" ;
>
> float Latin2(nav) ;
> Latin2:long_name = "second intersecting latitude" ;
> Latin2:units = "degrees_north" ;
>
> float SpLat(nav) ;
> SpLat:long_name = "latitude of the southern pole" ;
> SpLat:units = "degrees_north" ;
>
> float SpLon(nav) ;
> SpLon:long_name = "longitude of the southern pole" ;
> SpLon:units = "degrees_east" ;
>
> // end of navigation variables
>
> // global attributes:
> :history = "created by gribtonc from HDS broadcast" ;
> :title = "NCEP Global Product Set" ;
> :Conventions = "NUWG" ;
> :version = 0.0 ; // still just a draft
>
> float Psl_et(record, y, x) ;
> Psl_et:long_name = "mean sea level pressure (ETA model
> reduction)" ;
> Psl_et:units = "Pa" ;
> Psl_et:_FillValue = -9999.f ;
> Psl_et:navigation = "nav" ;
>
> float Z(record, level, y, x) ;
> Z:long_name = "geopotential height" ;
> Z:units = "gp m" ;
> Z:_FillValue = -9999.f ;
> Z:navigation = "nav" ;
>
> data:
>
> level = 500;
> model_id = 83, 84, 89 ;
>
> // Navigation
> nav_model = "GRIB1" ;
> grid_type_code = 5 ;
> grid_type = "Polar Stereographic" ;
> grid_name = "AWIPS grid #104" ;
> grid_center = 7 ;
> grid_number = 104 ;
> earth_shape = "oblate spheroid (IAU 1965)" ;
> x_dim = "x" ;
> y_dim = "y" ;
> Nx = 147 ;
> Ny = 110 ;
> La1 = -0.2680 ;
> Lo1 = -139.475006 ;
> ResCompFlag = 8 ;
> Lov = -105.0 ;
> Dx = 90755 ;
> Dy = 90755 ;
> ProjFlag = 64 ;
> }
> =======================================================================
>
>
> --
>
> David Ovens e-mail: address@hidden
> (206) 685-8108 plan: Real-time MM5 forecasting for Pacific Northwest
> Research Meteorologist
> Dept of Atmospheric Sciences, Box 351640
> University of Washington
> Seattle, WA 98195
>
>
> ------- 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/
===============================================================================