NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.
To learn about what's going on, see About the Archive Site.
NOTE: The decoders
mailing list is no longer active. The list archives are made available for historical reasons.
Dave, I am just starting to look at this, it might take a couple of days. I'm busy getting an LDM workshop together. I just looked at the new GRIB documentation, it has info on ruc2. It's located at:
I noticed there is a new version of the GRIB document (Office Note 388)
dated >March 10, 1998 in ftp://nic.fb4.noaa.gov/pub/doc/nws/nmc/gribed1. Thought you >might be interested. There might need to be some changes to the gribtonc source code. I would use gribdump and the comment out method of the offending variables in the cdl file until gribtonc can process the file. Since I'm not a meteorologist, I have to depend on help from my cohorts. Keep me abreast of your progress also. Thanks, Robb... On Mon, 24 Aug 1998 laps@xxxxxxxxxxxxxxxxxxxxx wrote:
robb, i am trying to use 'gribtonc' to convert the ruc2 native 40km model from the oso server to netcdf. fsl gave me a cdl file they use for this model. i dont know why this is so difficult. i am not sure that they us the gribtonc program to accomplish their convertion, but this cdl convention should work with this model. right? here is my command line stuff: cyclone[bennett]291>ncgen -o ruc2.nc ruc2.cdl cyclone[bennett]292>gribtonc -l log -v ruc2.nc < ruc2.T12Z.bgrbanl cyclone[bennett]293>more log Aug 24 20:15:54 gribtonc[19142]: Starting Up Aug 24 20:15:54 gribtonc[19142]: Error parsing units: Pascals / second Aug 24 20:15:54 gribtonc[19142]: ruc2.nc: can't get units attribute for variable w Aug 24 20:15:54 gribtonc[19142]: GRIB units `degK' not conformable with variable Tv:units Aug 24 20:15:54 gribtonc[19142]: Error parsing units: WMO centers table Aug 24 20:15:54 gribtonc[19142]: ruc2.nc: can't get units attribute for variable center_id Aug 24 20:15:54 gribtonc[19142]: ruc2.nc: no datetimeid variable Aug 24 20:15:54 gribtonc[19142]: make_ncfile failed Aug 24 20:15:54 gribtonc[19142]: can't create output netCDF file ruc2.nc, exiting Aug 24 20:15:54 gribtonc[19142]: Exiting Aug 24 20:15:54 gribtonc[19142]: 0 WMO msgs, 0 GRIBs decoded, 0 written i added the datetime variable but that didn't matter. the center_id is actually in the cdl file so that doesn't make sense to me. the error about Tv:units is also a mystery. Tv is tropopause v-winds which has units m/s so where does 'degK' come from? your help here would be great if you have the time. thanks... dave bennett ================================== CDL FILE ================================== netcdf ruc2_40km_hybridb.cdl { dimensions: record = unlimited; namelen = 132; nav = 1;x = 151; y = 113;z = 40; variables: // Geopotential Height float hgt(record, z, y, x) ; hgt:long_name = "geopotential height" ; hgt:units = "gp m" ; hgt:z = "isoLevel"; hgt:record = "reftime, valtime" ; hgt:valid_range = -1000.f, 50000.f ; hgt:_FillValue = -9999.f ; hgt:navigation_var = "nav"; // u wind component float u(record, z, y, x); u:navigation_dim = "nav"; u:z_dim = "vpt, p"; u:record = "valtime, reftime"; u:long_name = "u-component of wind"; u:units = "meters / second"; u:valid_range = -200.f, 200.f; u:_FillValue = -99999.f; // v wind component float v(record, z, y, x); v:navigation_dim = "nav"; v:z_dim = "vpt, p"; v:record = "valtime, reftime"; v:long_name = "v-component of wind"; v:units = "meters / second"; v:valid_range = -200.f, 200.f; v:_FillValue = -99999.f; // montgomery stream function float msg(record, z, y, x); msg:navigation_dim = "nav"; msg:z_dim = "vpt, p"; msg:record = "valtime, reftime"; msg:long_name = "montgomery stream function / gravity"; msg:units = "meters"; msg:valid_range = 20000.f, 50000.f; msg:_FillValue = -99999.f; // atmospheric pressure float p(record, z, y, x); p:navigation_dim = "nav"; p:z_dim = "vpt"; p:record = "valtime, reftime"; p:long_name = "pressure"; p:units = "pascals"; p:valid_range = 0.f, 110000.f; p:_FillValue = -99999.f; // virtual potential temperature float vpt(record, z, y, x); vpt:navigation_dim = "nav"; vpt:z_dim = "p"; vpt:record = "valtime, reftime"; vpt:long_name = "virtual potential temperature"; vpt:units = "degrees kelvin"; vpt:valid_range = 0.f, 600.f; vpt:_FillValue = -99999.f; // water vapor mixing ratio float qv(record, z, y, x); qv:navigation_dim = "nav"; qv:z_dim = "vpt, p"; qv:record = "valtime, reftime"; qv:long_name = "water vapor mixing ratio"; qv:units = "kg / kg"; qv:valid_range = 0.f, 100.f; qv:_FillValue = -99999.f; // cloud water mixing ratio float qc(record, z, y, x); qc:navigation_dim = "nav"; qc:z_dim = "vpt, p"; qc:record = "valtime, reftime"; qc:long_name = "cloud water mixing ratio"; qc:units = "kg / kg"; qc:valid_range = 0.f, 100.f; qc:_FillValue = -99999.f; // rain water mixing ratio float qr(record, z, y, x); qr:navigation_dim = "nav"; qr:z_dim = "vpt, p"; qr:record = "valtime, reftime"; qr:long_name = "rain water mixing ratio"; qr:units = "kg / kg"; qr:valid_range = 0.f, 100.f; qr:_FillValue = -99999.f; // ice mixing ratio float qi(record, z, y, x); qi:navigation_dim = "nav"; qi:z_dim = "vpt, p"; qi:record = "valtime, reftime"; qi:long_name = "ice mixing ratio"; qi:units = "kg / kg"; qi:valid_range = 0.f, 100.f; qi:_FillValue = -99999.f; // snow mixing ratio float qs(record, z, y, x); qs:navigation_dim = "nav"; qs:z_dim = "vpt, p"; qs:record = "valtime, reftime"; qs:long_name = "snow mixing ratio"; qs:units = "kg / kg"; qs:valid_range = 0.f, 100.f; qs:_FillValue = -99999.f; // graupel mixing ratio float qg(record, z, y, x); qg:navigation_dim = "nav"; qg:z_dim = "vpt, p"; qg:record = "valtime, reftime"; qg:long_name = "graupel mixing ratio"; qg:units = "kg / kg"; qg:valid_range = 0.f, 100.f; qg:_FillValue = -99999.f; // number concentration for ice particles float qin(record, z, y, x); qin:navigation_dim = "nav"; qin:z_dim = "vpt, p"; qin:record = "valtime, reftime"; qin:long_name = "number concentration for ice particles"; qin:units = "1 / m**3"; qin:valid_range = 0.f, 100.f; qin:_FillValue = -99999.f; // turbulent kinetic energy float tke(record, z, y, x); tke:navigation_dim = "nav"; tke:z_dim = "vpt, p"; tke:record = "valtime, reftime"; tke:long_name = "turbulent kinetic energy"; tke:units = "m**2 / s**2"; tke:valid_range = 0.f, 10000.f; tke:_FillValue = -99999.f; // vertical velocity float w(record, z, y, x); w:navigation_dim = "nav"; w:z_dim = "vpt, p"; w:record = "valtime, reftime"; w:long_name = "vertical velocity"; w:units = "Pascals / second"; w:valid_range = -10000.f, 10000.f; w:_FillValue = -99999.f; // MAPS Mean Sea Level Pressure float MMSP(record, y, x); MMSP:navigation_dim = "nav"; MMSP:record = "valtime, reftime"; MMSP:long_name = "MAPS mean sea level pressure"; MMSP:units = "pascals"; MMSP:valid_range = 80000.f, 110000.f; MMSP:_FillValue = -99999.f; // Soil Temperature at surface float ST(record, y, x); ST:navigation_dim = "nav"; ST:record = "valtime, reftime"; ST:long_name = "soil temperature at surface"; ST:units = "degrees kelvin"; ST:valid_range = 150.f, 400.f; ST:_FillValue = -99999.f; // Snow Temperature - snow or soil top level float STsnow(record, y, x); STsnow:navigation_dim = "nav"; STsnow:record = "valtime, reftime"; STsnow:long_name = "snow temperature - snow or top soil level"; STsnow:units = "degrees kelvin"; STsnow:valid_range = 150.f, 400.f; STsnow:_FillValue = -99999.f; // Soil Temperature at level 1 below surface float ST1(record, y, x); ST1:navigation_dim = "nav"; ST1:record = "valtime, reftime"; ST1:long_name = "soil temperature at level 1 below surface"; ST1:units = "degrees kelvin"; ST1:valid_range = 150.f, 400.f; ST1:_FillValue = -99999.f; // Soil Temperature at level 2 below surface float ST2(record, y, x); ST2:navigation_dim = "nav"; ST2:record = "valtime, reftime"; ST2:long_name = "soil temperature at level 2 below surface"; ST2:units = "degrees kelvin"; ST2:valid_range = 150.f, 400.f; ST2:_FillValue = -99999.f; // Soil Temperature at level 3 below surface float ST3(record, y, x); ST3:navigation_dim = "nav"; ST3:record = "valtime, reftime"; ST3:long_name = "soil temperature at level 3 below surface"; ST3:units = "degrees kelvin"; ST3:valid_range = 150.f, 400.f; ST3:_FillValue = -99999.f; // Soil Temperature at level 4 below surface float ST4(record, y, x); ST4:navigation_dim = "nav"; ST4:record = "valtime, reftime"; ST4:long_name = "soil temperature at level 4 below surface"; ST4:units = "degrees kelvin"; ST4:valid_range = 150.f, 400.f; ST4:_FillValue = -99999.f; // Soil Temperature at the bottom float ST5(record, y, x); ST5:navigation_dim = "nav"; ST5:record = "valtime, reftime"; ST5:long_name = "soil temperature at the bottom"; ST5:units = "degrees kelvin"; ST5:valid_range = 150.f, 400.f; ST5:_FillValue = -99999.f; // Soil volumetric moisture content at surface float SM(record, y, x); SM:navigation_dim = "nav"; SM:record = "valtime, reftime"; SM:long_name = "soil volumetric moisture content at surface"; SM:units = "m**3 / m**3"; SM:valid_range = 0.f, 1.f; SM:_FillValue = -99999.f; // Soil volumetric moisture content at level 1 below surface float SM1(record, y, x); SM1:navigation_dim = "nav"; SM1:record = "valtime, reftime"; SM1:long_name = "soil volumetric moisture content at level 1"; SM1:units = "m**3 / m**3"; SM1:valid_range = 0.f, 1.f; SM1:_FillValue = -99999.f; // Soil volumetric moisture content at level 2 below surface float SM2(record, y, x); SM2:navigation_dim = "nav"; SM2:record = "valtime, reftime"; SM2:long_name = "soil volumetric moisture content at level 2"; SM2:units = "m**3 / m**3"; SM2:valid_range = 0.f, 1.f; SM2:_FillValue = -99999.f; // Soil volumetric moisture content at level 3 below surface float SM3(record, y, x); SM3:navigation_dim = "nav"; SM3:record = "valtime, reftime"; SM3:long_name = "soil volumetric moisture content at level 3"; SM3:units = "m**3 / m**3"; SM3:valid_range = 0.f, 1.f; SM3:_FillValue = -99999.f; // Soil volumetric moisture content at level 4 below surface float SM4(record, y, x); SM4:navigation_dim = "nav"; SM4:record = "valtime, reftime"; SM4:long_name = "soil volumetric moisture content at level 4"; SM4:units = "m**3 / m**3"; SM4:valid_range = 0.f, 1.f; SM4:_FillValue = -99999.f; // Soil volumetric moisture content at the bottom float SM5(record, y, x); SM5:navigation_dim = "nav"; SM5:record = "valtime, reftime"; SM5:long_name = "soil volumetric moisture content at the bottom"; SM5:units = "m**3 / m**3"; SM5:valid_range = 0.f, 1.f; SM5:_FillValue = -99999.f; // Sensible heat flux float SHF(record, y, x); SHF:navigation_dim = "nav"; SHF:record = "valtime, reftime"; SHF:long_name = "sensible heat flux"; SHF:units = "W / m**2"; SHF:valid_range = -10000.f, 10000.f; SHF:_FillValue = -99999.f; // Latent heat flux float LHF(record, y, x); LHF:navigation_dim = "nav"; LHF:record = "valtime, reftime"; LHF:long_name = "latent heat flux"; LHF:units = "W / m**2"; LHF:valid_range = -10000.f, 10000.f; LHF:_FillValue = -99999.f; // Direct evaporation from bare soil float EDIR(record, y, x); EDIR:navigation_dim = "nav"; EDIR:record = "valtime, reftime"; EDIR:long_name = "direct evaporation from bare soil"; EDIR:units = "W / m**2"; EDIR:valid_range = -10000.f, 10000.f; EDIR:_FillValue = -99999.f; // Evaporation of canopy water float EC(record, y, x); EC:navigation_dim = "nav"; EC:record = "valtime, reftime"; EC:long_name = "evaporation of canopy water"; EC:units = "W / m**2"; EC:valid_range = -10000.f, 10000.f; EC:_FillValue = -99999.f; // Canopy water float CANWAT(record, y, x); CANWAT:navigation_dim = "nav"; CANWAT:record = "valtime, reftime"; CANWAT:long_name = "canopy water"; CANWAT:units = "m"; CANWAT:valid_range = 0.f, 1.f; CANWAT:_FillValue = -99999.f; // Evapotranspiration flux float ETT(record, y, x); ETT:navigation_dim = "nav"; ETT:record = "valtime, reftime"; ETT:long_name = "evapotranspiration flux"; ETT:units = "W / m**2"; ETT:valid_range = -10000.f, 10000.f; ETT:_FillValue = -99999.f; // Water condensation rate near surface float DEW(record, y, x); DEW:navigation_dim = "nav"; DEW:record = "valtime, reftime"; DEW:long_name = "water condensation rate near surface"; DEW:units = "m / s"; DEW:valid_range = -10000.f, 10000.f; DEW:_FillValue = -99999.f; // Rate of water dropping from canopy to ground float DRIP(record, y, x); DRIP:navigation_dim = "nav"; DRIP:record = "valtime, reftime"; DRIP:long_name = "rate of water dropping from canopy to ground"; DRIP:units = "m / s"; DRIP:valid_range = -10000.f, 10000.f; DRIP:_FillValue = -99999.f; // Net Longwave Radiation at Surface float LWNR(record, y, x); LWNR:navigation_dim = "nav"; LWNR:record = "valtime, reftime"; LWNR:long_name = "net longwave radiation at surface"; LWNR:units = "W / m**2"; LWNR:valid_range = -10000.f, 10000.f; LWNR:_FillValue = -99999.f; // Net Shortwave Radiation at Surface float SWNR(record, y, x); SWNR:navigation_dim = "nav"; SWNR:record = "valtime, reftime"; SWNR:long_name = "net shortwave radiation at surface"; SWNR:units = "W / m**2"; SWNR:valid_range = -10000.f, 10000.f; SWNR:_FillValue = -99999.f; // precipitation rate float PR(record, y, x); PR:navigation_dim = "nav"; PR:record = "valtime, reftime"; PR:long_name = "precipitation rate"; PR:units = "kg / m**2 / s"; PR:valid_range = 0.f, 0.1f; PR:_FillValue = -99999.f; // resolvable scale precipitation - 1 hour float LgSP1h(record, y, x); LgSP1h:navigation_dim = "nav"; LgSP1h:record = "valtime, reftime"; LgSP1h:long_name = "resolvable scale precipitation - 1h"; LgSP1h:units = "kg / m**2"; LgSP1h:valid_range = 0.f, 1000.f; LgSP1h:_FillValue = -99999.f; // resolvable scale precipitation - 2 hour float LgSP2h(record, y, x); LgSP2h:navigation_dim = "nav"; LgSP2h:record = "valtime, reftime"; LgSP2h:long_name = "resolvable scale precipitation - 2h"; LgSP2h:units = "kg / m**2"; LgSP2h:valid_range = 0.f, 1000.f; LgSP2h:_FillValue = -99999.f; // resolvable scale precipitation - 3 hour float LgSP3h(record, y, x); LgSP3h:navigation_dim = "nav"; LgSP3h:record = "valtime, reftime"; LgSP3h:long_name = "resolvable scale precipitation - 3h"; LgSP3h:units = "kg / m**2"; LgSP3h:valid_range = 0.f, 1000.f; LgSP3h:_FillValue = -99999.f; // sub-grid scale precipitation - 1h float ConvP1h(record, y, x); ConvP1h:navigation_dim = "nav"; ConvP1h:record = "valtime, reftime"; ConvP1h:long_name = "sub-grid scale precipitation - 1h"; ConvP1h:units = "kg / m**2"; ConvP1h:valid_range = 0.f, 1000.f; ConvP1h:_FillValue = -99999.f; // sub-grid scale precipitation - 2h float ConvP2h(record, y, x); ConvP2h:navigation_dim = "nav"; ConvP2h:record = "valtime, reftime"; ConvP2h:long_name = "sub-grid scale precipitation - 2h"; ConvP2h:units = "kg / m**2"; ConvP2h:valid_range = 0.f, 1000.f; ConvP2h:_FillValue = -99999.f;// sub-grid scale precipitation - 3hfloat ConvP3h(record, y, x); ConvP3h:navigation_dim = "nav"; ConvP3h:record = "valtime, reftime"; ConvP3h:long_name = "sub-grid scale precipitation - 3h"; ConvP3h:units = "kg / m**2"; ConvP3h:valid_range = 0.f, 1000.f; ConvP3h:_FillValue = -99999.f; // Water equivalent of snow depth - 1h float SnwAcc1h(record, y, x); SnwAcc1h:navigation_dim = "nav"; SnwAcc1h:record = "valtime, reftime"; SnwAcc1h:long_name = "water equivalent of snow depth - 1h"; SnwAcc1h:units = "kg / m**2"; SnwAcc1h:valid_range = 0.f, 1000.f; SnwAcc1h:_FillValue = -99999.f; // Water equivalent of snow depth - 2h float SnwAcc2h(record, y, x); SnwAcc2h:navigation_dim = "nav"; SnwAcc2h:record = "valtime, reftime"; SnwAcc2h:long_name = "water equivalent of snow depth - 2h"; SnwAcc2h:units = "kg / m**2"; SnwAcc2h:valid_range = 0.f, 1000.f; SnwAcc2h:_FillValue = -99999.f; // Water equivalent of snow depth - 3h float SnwAcc3h(record, y, x); SnwAcc3h:navigation_dim = "nav"; SnwAcc3h:record = "valtime, reftime"; SnwAcc3h:long_name = "water equivalent of snow depth - 3h"; SnwAcc3h:units = "kg / m**2"; SnwAcc3h:valid_range = 0.f, 1000.f; SnwAcc3h:_FillValue = -99999.f; // snow accumulation since last output float SnwAcc(record, y, x); SnwAcc:navigation_dim = "nav"; SnwAcc:record = "valtime, reftime"; SnwAcc:long_name = "snow accumulation"; SnwAcc:units = "centimeters"; SnwAcc:valid_range = 0.f, 1000.f; SnwAcc:_FillValue = -99999.f; // surface runoff since last output float Rnoff(record, y, x); Rnoff:navigation_dim = "nav"; Rnoff:record = "valtime, reftime"; Rnoff:long_name = "surface runoff"; Rnoff:units = "kg / m**2"; Rnoff:valid_range = 0.f, 1000.f; Rnoff:_FillValue = -99999.f; // sub-surface runoff since last output float SubRnoff(record, y, x); SubRnoff:navigation_dim = "nav"; SubRnoff:record = "valtime, reftime"; SubRnoff:long_name = "sub-surface runoff"; SubRnoff:units = "kg / m**2"; SubRnoff:valid_range = 0.f, 1000.f; SubRnoff:_FillValue = -99999.f; // precipitable water float PW(record, y, x); PW:navigation_dim = "nav"; PW:record = "valtime, reftime"; PW:long_name = "precipitable water"; PW:units = "kg / m**2"; PW:valid_range = 0.f, 100.f; PW:_FillValue = -99999.f; // atmospheric pressure at tropopause float Tp(record, y, x); Tp:navigation_dim = "nav"; Tp:record = "valtime, reftime"; Tp:long_name = "pressure at tropopause"; Tp:units = "pascals"; Tp:valid_range = 0.f, 110000.f; Tp:_FillValue = -99999.f; // potential temperature at tropopause float Tpot(record, y, x); Tpot:navigation_dim = "nav"; Tpot:record = "valtime, reftime"; Tpot:long_name = "potential temperature at tropopause"; Tpot:units = "degrees kelvin"; Tpot:valid_range = 200.f, 500.f; Tpot:_FillValue = -99999.f; // u wind component at tropopause float Tu(record, y, x); Tu:navigation_dim = "nav"; Tu:record = "valtime, reftime"; Tu:long_name = "u-component of wind at tropopause"; Tu:units = "meters / second"; Tu:valid_range = -200.f, 200.f; Tu:_FillValue = -99999.f; // v wind component at tropopause float Tv(record, y, x); Tv:navigation_dim = "nav"; Tv:record = "valtime, reftime"; Tv:long_name = "v-component of wind at tropopause"; Tv:units = "meters / second"; Tv:valid_range = -200.f, 200.f; Tv:_FillValue = -99999.f; // convective available potential energy - max parcel float CAPE(record, y, x); CAPE:navigation_dim = "nav"; CAPE:record = "valtime, reftime"; CAPE:long_name = "convective available potential energy"; CAPE:units = "J / kg"; CAPE:valid_range = 0.f, 20000.f; CAPE:_FillValue = -99999.f; // convective inhibition for max parcel float CIn(record, y, x); CIn:navigation_dim = "nav"; CIn:record = "valtime, reftime"; CIn:long_name = "convective inhibition"; CIn:units = "J / kg"; CIn:valid_range = 0.f, 20000.f; CIn:_FillValue = -99999.f; // storm-relative helicity float Helic(record, y, x); Helic:navigation_dim = "nav"; Helic:record = "valtime, reftime"; Helic:long_name = "storm-relative helicity"; Helic:units = "m**2/s**2"; Helic:valid_range = 0.f, 20000.f; Helic:_FillValue = -99999.f; // snow depth float SnD(record, y, x); SnD:navigation_dim = "nav"; SnD:record = "valtime, reftime"; SnD:long_name = "snow depth"; SnD:units = "meters"; SnD:valid_range = 0.f, 20000.f; SnD:_FillValue = -99999.f; double valtime(record); valtime:long_name = "valid time"; valtime:units = "seconds since (1970-1-1 00:00:00.0)";// reference time of the processdouble reftime(record); reftime:long_name = "reference time"; reftime:units = "seconds since (1970-1-1 00:00:00.0)"; // nice name for originating center char origin_name(namelen); origin_name:long_name = " "; // nice name for process char process_name(namelen); process_name:long_name = " "; // nice name for grid description instance char grid_name(namelen); grid_name:long_name = " "; // basic assumption about earth shape char earth_shape(namelen); earth_shape:long_name = " ";// navigation variables using // WMO FM 92-VIII Ext.GRIB specification names char grid_type(nav, namelen);grid_type:long_name = "GRIB-1 grid type";char x_dim(nav, namelen);x_dim:long_name = "longitude dimension";char y_dim(nav, namelen);y_dim:long_name = "latitude dimension";short Nx(nav);Nx:long_name = "number of x points";short Ny(nav);Ny:long_name = "number of y points";short Nz(nav);Nz:long_name = "number of z points";float La1(nav);La1:long_name = "first latitude"; La1:units = "degrees_north";float Lo1(nav);Lo1:long_name = "first longitude"; Lo1:units = "degrees_east" ;float Lov(nav);Lov:long_name = "orientation of grid" ; Lov:units = "degrees_east";float Latin(nav);Latin:long_name = "conic tangent latitude" ; Latin:units = "degrees_north";float Dx(nav);Dx:long_name = "x grid increment"; Dx:units = "kilometers";float Dy(nav);Dy:long_name = "y grid increment"; Dy:units = "kilometers";// end of navigation variableslong center_id; center_id:long_name = "center ID"; center_id:units = "WMO centers table";long process_id;process_id:long_name = "process ID"; process_id:units = "(allocated by center)";:Conventions = "NUWG";:history = "created by FSL Data Systems from the RUC2 Model Grids"; :record = "valtime, reftime"; :title = "Hybrid-B 40km Rapid Update Cycle"; :version = 1.0;//----------------------------------------------------------------------// overhead information used to query the NIMBUS data pool for data // this is specific to FSL data management systems //---------------------------------------------------------------------- :query = "GDAM.NMC.RUC2.RUC240kmHyB.*"; :age = 10800; data: Dx = 40.63525; Dy = 40.63525; La1 = 16.2810; Lo1 = 126.1378; Lov = 265.0; Latin = 25.0; Nx = 151; Ny = 113; Nz = 40; center_id = 7; // NMC earth_shape = "oblate spheroid"; grid_name = "FSL Conus 40km"; grid_type = "lambert conformal"; process_id = 105; // RUC2 40km process_name = "RUC2 40km Hybrid-b 3-d/2-d Grids"; origin_name = "National Weather Service"; x_dim = "x"; y_dim = "y"; }
============================================================================== Robb Kambic Unidata Program Center Software Engineer III Univ. Corp for Atmospheric Research rkambic@xxxxxxxxxxxxxxxx WWW: http://www.unidata.ucar.edu/ ==============================================================================
decoders
archives: