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

Re: 20010122: gribtonc and NCEP Renalysis data



>To: <address@hidden>
>From: <address@hidden>
>Subject: Re: gribtonc and NCEP Renalysis data
>Organization: University of Oxford
>Keywords: 200101221551.f0MFpYe13803 gribtonc NCEP reanalysis

Hi Anthony,

First, I want to apologize for how long it has taken to reply to your
question.  Apparently it got lost in our support system and I just got
it this morning.  I hope this answer is still useful, given the time
that has passed since your original email.

> I am trying to find a way to convert NCEP Renalysis 6 hourly data on Lat Lon
> grid and pressure levels from the current grib format to NetCDF.

Are you aware of the NCEP reanalysis already available in netCDF form
from the NOAA Climate Diagnostics Center?  Here's the URL:

  http://www.cdc.noaa.gov/cdc/reanalysis/reanalysis.shtml

This includes 6 hourly data except for the 1948-1957 data which is
available at 8 times daily.

> I have downloaded and installed gribtonc and other parts of decoders-2.3.8,
> we also have the NetCDF package with udunits.
> 
> I am having problems getting the gribtonc to work on this data and I was
> wondering if I need a .cdl for the NCEP data? I cannot find one with the
> packages.

There isn't one, because gribtonc is used for the GRIB data from
current models broadcast when the model output is available from the
NCEP or ECMWF.  It was not designed to be general enough to handle
arbitrary GRIB data, but is often adaptable with a suitable CDL file
to handle outputs from other models.

Part of the reason gribtonc is not completely general and requires CDL
files is that it does more than just convert GRIB data to netCDF data.
Its purpose is to combine the data in multiple related 2-dimensional
GRIB products into a single multi-dimensional netCDF dataset, and
there are many ways this could be done.  In order to specify the
structure of the resulting netCDF file (order of dimensions, names and
types of variables and attributes, etc.) a CDL file is used as a
template for the resulting dataset.

The gribtonc program also assumes a fairly small maximum size of a
GRIB product (100000 bytes as MAX_GRIB_SIZE in grib1.h) which might be
violated by GRIB products not part of the broadcast set, but that's
easy to change.

> I have subseqently had a look through your mail archives and found a message
> from Doug Hunt 03/24/98 that suggested a perl program was needed before
> using gribtonc. Is this still the case or do more recent versions of the
> decoders package have facilities built in?

I'm not sure what Doug's perl program does or why it's needed, but it
may 

 - use wgrib to decode GRIB to text, much as the "Gribdump" program in
   the gribtonc package does
 - use the netCDF perl interface to encode the resulting text into
   netCDF variables and write out the resulting netCDF file.

That sounds slow if you have a lot of data to convert, but I haven't
tried it.

If the CDC netCDF reanalysis data isn't sufficient for what you need
and you could send more details of what is going wrong when you try to
use your own CDL file, we could try to see if it's possible to get it
to work.

Or maybe CDC has a program they would share that already does the GRIB
to netCDF conversion ...

--Russ