[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 20010409: cdl files for gribtonc
- Subject: Re: 20010409: cdl files for gribtonc
- Date: Mon, 9 Apr 2001 16:40:01 -0600 (MDT)
On Mon, 9 Apr 2001, Unidata Support wrote:
>
> ------- Forwarded Message
>
> >To: address@hidden
> >From: Todd Fake <address@hidden>
> >Subject: cdl files
> >Organization: UCAR/Unidata
> >Keywords: 200104091942.f39JgcL05476
>
>
> what cdl files do I use to decode grib files from the ETA model output
> from june to august of year 2000?
Todd,
I would use the eta.cdl file that's in the ftp/pub/decoders/ directory.
The cdl in the directory are later than the distribution, cdls change more
often then the code. If you have a problem, let me know. I also attached
the latest eta.cdl
>
> Todd Fake
>
>
>
> --
> ********************************************************************
> * Todd Fake Direct: (860) 405-9067 *
> * Dept of Marine Sciences Admin Asst: (860) 405-9151 or 9152 *
> * University of Connecticut FAX: (860) 405-9153 *
> * 1084 Shennecossett Road E-mail: address@hidden *
> * Groton, CT 06340 Web: marinet.dms.uconn.edu *
> ********************************************************************
>
>
> ------- 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/
===============================================================================
netcdf eta { // ETA 80km model on Lambert conformal CONUS grid
dimensions:
record = UNLIMITED ; // (reference time, forecast time)
level = 19 ; // isobaric levels for most parameters
level_c = 5 ; // isobaric levels for absolute vorticity
fhg = 2 ; // fixed height above ground levels
lpdg = 5 ; // boundary layer levels
lpdg_bndry = 1 ; // boundary layer
lpdg_bndry30 = 1 ; // boundary layer 0-30
ls_sfc = 1 ; // surface layer
lfhg = 1 ; // layer between 2 heights above ground
x = 93 ;
y = 65 ;
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" ;
float level_c(level_c) ;
level_c:long_name = "level subset" ;
level_c:units = "hectopascals" ;
float fhg(fhg) ; // fixed height above ground
fhg:long_name = "fixed height above ground" ;
fhg:units = "meters" ;
:lpdg = "lpdg_bot, lpdg_top" ;
float lpdg_bot(lpdg) ;
lpdg_bot:long_name = "bottom level of layer between 2 presure
levels" ;
lpdg_bot:units = "hPa" ;
float lpdg_top(lpdg) ;
lpdg_top:long_name = "top level of layer between 2 presure
levels" ;
lpdg_top:units = "hPa" ;
:lpdg_bndry = "lpdg_bndry_bot, lpdg_bndry_top" ;
float lpdg_bndry_bot(lpdg_bndry) ;
lpdg_bndry_bot:long_name = "bottom level of boundary layer
between 2 pressure levels" ;
lpdg_bndry_bot:units = "hPa" ;
float lpdg_bndry_top(lpdg_bndry) ;
lpdg_bndry_top:long_name = "top level of boundary layer between
2 pressure levels" ;
lpdg_bndry_top:units = "hPa" ;
:lpdg_bndry30 = "lpdg_bndry30_bot, lpdg_bndry30_top" ;
float lpdg_bndry30_bot(lpdg_bndry30) ;
lpdg_bndry30_bot:long_name = "bottom level of boundary layer
between 2 pressure levels" ;
lpdg_bndry30_bot:units = "hPa" ;
float lpdg_bndry30_top(lpdg_bndry30) ;
lpdg_bndry30_top:long_name = "top level of boundary layer
between 2 pressure levels" ;
lpdg_bndry30_top:units = "hPa" ;
:ls_sfc = "ls_sfc_bot, ls_sfc_top" ;
float ls_sfc_bot(ls_sfc) ;
ls_sfc_bot:long_name = "bottom level of surface layer between 2
sigma levels" ;
ls_sfc_bot:units = "" ; // dimensionless
float ls_sfc_top(ls_sfc) ;
ls_sfc_top:long_name = "top level of surface layer between 2
sigma levels" ;
ls_sfc_top:units = "" ;
:lfhg = "lfhg_bot, lfhg_top" ;
float lfhg_bot(lfhg) ;
lfhg_bot:long_name = "bottom level of layer between 2 fixed
heights above ground" ;
lfhg_bot:units = "meters" ;
float lfhg_top(lfhg) ;
lfhg_top:long_name = "top level of layer between 2 fixed
heights above ground" ;
lfhg_top:units = "meters" ;
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 number" ;
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 LI4_lpdg(record, lpdg_bndry, y, x) ;
LI4_lpdg:long_name = "best (4 layer) lifted index" ;
LI4_lpdg:units = "degK" ;
LI4_lpdg:_FillValue = -9999.f ;
LI4_lpdg:navigation = "nav" ;
float pli_lpdg(record, lpdg_bndry30, y, x) ;
pli_lpdg:long_name = "parcel lifted index(to 500 hPa)" ;
pli_lpdg:units = "degK" ;
pli_lpdg:_FillValue = -9999.f ;
pli_lpdg:navigation = "nav" ;
float PRECIP(record, y, x) ;
PRECIP:long_name = "total precipitation over accumulation
interval" ;
PRECIP:units = "kg/m2" ;
PRECIP:_FillValue = -9999.f ;
PRECIP:navigation = "nav" ;
float PRECIP_accum_times(record, accum) ;
PRECIP_accum_times:long_name = "precipitation accumulation
interval" ;
PRECIP_accum_times:units = "hours" ;
PRECIP_accum_times:_FillValue = -9999.f ;
float P_sfc(record, y, x) ;
P_sfc:long_name = "pressure at surface" ;
P_sfc:units = "Pa" ;
P_sfc:_FillValue = -9999.f ;
P_sfc:navigation = "nav" ;
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 RH(record, level, y, x) ;
RH:long_name = "relative humidity" ;
RH:units = "percent" ;
RH:_FillValue = -9999.f ;
RH:navigation = "nav" ;
float T(record, level, y, x) ;
T:long_name = "temperature" ;
T:units = "degK" ;
T:_FillValue = -9999.f ;
T:navigation = "nav" ;
float Z(record, level, y, x) ;
Z:long_name = "geopotential height" ;
Z:units = "gp m" ;
Z:_FillValue = -9999.f ;
Z:navigation = "nav" ;
float Z_sfc(y, x) ;
Z_sfc:long_name = "terrain" ;
Z_sfc:units = "gp m" ;
Z_sfc:_FillValue = -9999.f ;
Z_sfc:navigation = "nav" ;
float omega(record, level, y, x) ;
omega:long_name = "pressure vertical velocity" ;
omega:units = "Pa/s" ;
omega:_FillValue = -9999.f ;
omega:navigation = "nav" ;
float precip_cn(record, y, x) ;
precip_cn:long_name = "convective precipitation over
accumulation interval" ;
precip_cn:units = "kg/m2" ;
precip_cn:_FillValue = -9999.f ;
precip_cn:navigation = "nav" ;
float precip_cn_accum_times(record, accum) ;
precip_cn_accum_times:long_name = "convective precipitation
accumulation interval" ;
precip_cn_accum_times:units = "hours" ;
precip_cn_accum_times:_FillValue = -9999.f ;
float u(record, level, y, x) ;
u:long_name = "u-component of wind" ;
u:units = "meters/second" ;
u:_FillValue = -9999.f ;
u:navigation = "nav" ;
float v(record, level, y, x) ;
v:long_name = "v-component of wind" ;
v:units = "meters/second" ;
v:_FillValue = -9999.f ;
v:navigation = "nav" ;
float absvor(record, level_c, y, x) ;
absvor:long_name = "absolute vorticity" ;
absvor:units = "1/s" ;
absvor:_FillValue = -9999.f ;
absvor:navigation = "nav" ;
float pr_water_atm(record, y, x) ; // entire atmosphere as single
layer
pr_water_atm:long_name = "precipitable water" ;
pr_water_atm:units = "kg/m2" ;
pr_water_atm:_FillValue = -9999.f ;
pr_water_atm:navigation = "nav" ;
float u_fhg(record, fhg, y, x) ;
u_fhg:long_name = "u-component of wind at fixed height above
ground" ;
u_fhg:units = "meters/second" ;
u_fhg:_FillValue = -9999.f ;
u_fhg:navigation = "nav" ;
float v_fhg(record, fhg, y, x) ;
v_fhg:long_name = "v-component of wind at fixed height above
ground" ;
v_fhg:units = "meters/second" ;
v_fhg:_FillValue = -9999.f ;
v_fhg:navigation = "nav" ;
float RH_fhg(record, fhg, y, x) ;
RH_fhg:long_name = "relative humidity at fixed height above
ground" ;
RH_fhg:units = "percent" ;
RH_fhg:_FillValue = -9999.f ;
RH_fhg:navigation = "nav" ;
float T_fhg(record, fhg, y, x) ;
T_fhg:long_name = "temperature at fixed height above ground" ;
T_fhg:units = "degK" ;
T_fhg:_FillValue = -9999.f ;
T_fhg:navigation = "nav" ;
float cin_sfc(record, y, x) ;
cin_sfc:long_name = "surface convective inhibition" ;
cin_sfc:units = "J/kg" ;
cin_sfc:_FillValue = -9999.f ;
cin_sfc:navigation = "nav" ;
float cape_sfc(record, y, x) ;
cape_sfc:long_name = "surface convective available potential
energy" ;
cape_sfc:units = "J/kg" ;
cape_sfc:_FillValue = -9999.f ;
cape_sfc:navigation = "nav" ;
float cin_lpdg(record, lpdg_bndry, y, x) ;
cin_lpdg:long_name = "boundary convective inhibition" ;
cin_lpdg:units = "J/kg" ;
cin_lpdg:_FillValue = -9999.f ;
cin_lpdg:navigation = "nav" ;
float cape_lpdg(record, lpdg_bndry, y, x) ;
cape_lpdg:long_name = "boundary convective available potential
energy" ;
cape_lpdg:units = "J/kg" ;
cape_lpdg:_FillValue = -9999.f ;
cape_lpdg:navigation = "nav" ;
float helc_lfhg(record, lfhg, y, x) ;
helc_lfhg:long_name = "helicity" ;
helc_lfhg:units = "meters2/seconds2" ;
helc_lfhg:_FillValue = -9999.f ;
helc_lfhg:navigation = "nav" ;
float RH_lpdg(record, lpdg, y, x) ;
RH_lpdg:long_name = "relative humidity in boundary layer" ;
RH_lpdg:units = "percent" ;
RH_lpdg:_FillValue = -9999.f ;
RH_lpdg:navigation = "nav" ;
float u_lpdg(record, lpdg, y, x) ;
u_lpdg:long_name = "u-component of wind in boundary layer" ;
u_lpdg:units = "meters/second" ;
u_lpdg:_FillValue = -9999.f ;
u_lpdg:navigation = "nav" ;
float v_lpdg(record, lpdg, y, x) ;
v_lpdg:long_name = "v-component of wind in boundary layer" ;
v_lpdg:units = "meters/second" ;
v_lpdg:_FillValue = -9999.f ;
v_lpdg:navigation = "nav" ;
float T_lpdg(record, lpdg, y, x) ;
T_lpdg:long_name = "temperature in boundary layer" ;
T_lpdg:units = "degK" ;
T_lpdg:_FillValue = -9999.f ;
T_lpdg:navigation = "nav" ;
data:
level = 1000, 950, 900, 850, 800, 750, 700, 650, 600, 550,
500, 450, 400, 350, 300, 250, 200, 150, 100 ;
level_c = 1000, 850, 700, 500, 250 ;
fhg = 2, 10 ;
lpdg_top = 30, 60, 90, 120, 150 ;
lpdg_bot = 0, 30, 60, 90, 120 ;
lpdg_bndry_top = 180 ;
lpdg_bndry_bot = 0 ;
lpdg_bndry30_top = 30 ;
lpdg_bndry30_bot = 0 ;
ls_sfc_top = .97 ;
ls_sfc_bot = .99 ;
lfhg_top = 3000 ;
lfhg_bot = 0 ;
model_id = 83, 84, 89 ;
// Navigation
nav_model = "GRIB1" ;
grid_type_code = 3 ;
grid_type = "Lambert conformal" ;
grid_name = "AWIPS grid 211: Regional CONUS" ;
grid_center = 7 ;
grid_number = 211 ;
earth_shape = "oblate spheroid (IAU 1965)" ;
x_dim = "x" ;
y_dim = "y" ;
Nx = 93 ;
Ny = 65 ;
La1 = 12.190 ;
Lo1 = -133.459 ;
ResCompFlag = 8 ;
Lov = -95.0 ;
Dx = 81271 ;
Dy = 81271 ;
ProjFlag = 0 ;
Latin1 = 25.0 ;
Latin2 = 25.0 ;
SpLat = 0.0 ;
SpLon = 0.0 ;
}