[Met_help] Problem with GRID-STAT

John Halley Gotway johnhg at rap.ucar.edu
Wed May 20 09:43:58 MDT 2009


I took a look at the ECMWF data you sent and have a few comments:

First, I think you're going about this the correct way by specifying the GRIB code value to be used from each file.  I did that and was able to get Grid-Stat and MODE to read the data.  I wonder if
you've got your arguments reversed.  When you run Grid-Stat, you pass it a forecast file followed by an observation file on the command line.  In the config file, you set "fcst_field" and "obs_field"
to tell Grid-Stat which fields to extract from the forecast and observation files.  Just make sure you have the filenames in right order on your command line.

Second, while I was able to get Grid-Stat and MODE to read the ECMWF data, you're right, there are problems with the GRIB parameter table version!  When I use the default WMO GRIB paramter table
version number 2, it interprets a GRIB code value of 130 as Mean Sea Level Pressure (MSLET).  So in the Grid-Stat output files, the variable abbreviation of "MSLET" is used instead of "T" for
temperature as we'd like.  You should be able to get MET to read the ECMWF data and compute the statistics correctly, but the variable names in the output files won't be correct.

Your questions have uncovered two problems in MET:
(1) We should implement the ECMWF GRIB parameter tables in MET.
(2) When a user is comparing a forecast GRIB file to an observation GRIB file that use two different parameter table versions, MET currently doesn't handle that.  You may specify a parameter table
version number using "grib_ptv" in the configuration file, but we need a way of specifying it separately for the forecast and observation fields.


Francesco Piani wrote:
> Hi John.
> I upload the files as gzip.
> Thanks for your interest on our problems.
> Have a nice week end.
> Francesco
> --------------------------------------------------
> From: "John Halley Gotway" <johnhg at rap.ucar.edu>
> Sent: Thursday, May 14, 2009 3:28 PM
> To: "Francesco Piani" <piani at lamma.rete.toscana.it>
> Cc: "MET_HELP" <met_help at ucar.edu>
> Subject: Re: [Met_help] Problem with GRID-STAT
>> Francesco,
>> That's an interesting question you raise.  I'm not sure if other users
>> have run ECMWF data through MET.  In reading about ECMWF's use of
>> GRIB, I'm guessing there may be issues with it.
>> But I'd like take a look at the data to see what the options are. 
>> Would you mind sending me the two sample files you reference in your
>> message, as well as the Grid-Stat configuration file you're using?
>> You can post this data to our anonymous ftp site:
>> ftp ftp.rap.ucar.edu
>> username = anonymous
>> password = "your email address"
>> cd incoming/irap/met_help/piani
>> put "your files"
>> bye
>> Please let me know when you've posted the files, and I'll take a look.
>> Unfortunately, I don't know the answer to your question - whether
>> there's an easy way of modifying which parameter table version
>> is used for a GRIB file.  I read through the information on copygb,
>> and it doesn't look like it could do that.  I did look at ECMWF's
>> webpage (http://www.ecmwf.int/products/data/software/) and some of
>> their software tools may be of use, but I'm really not sure.
>> Thanks,
>> John Halley Gotway
>> johnhg at ucar.edu
>> Francesco Piani wrote:
>>> Hi all.
>>> I would like to use MET, in particular GRID-STAT, to compare WRF_NMM
>>> at a resolution of 8km with the ECMWF 0.25° model. I use ggrid to
>>> extract the domain of interest (Italy) and copygb to regrid WRF_NMM
>>> fields over ECMWF grid.
>>> I noted that the two grib files use different parameter tables (in
>>> particular kpds5).
>>> 14596:100267650:d=07103112:T:kpds5=130:kpds6=100:kpds7=500:TR=1:P1=0:P2=0:TimeU=1:500
>>> mb:anl:NAve=0
>>> 14597:100274520:d=07103112:Z:kpds5=129:kpds6=100:kpds7=500:TR=1:P1=0:P2=0:TimeU=1:500
>>> mb:anl:NAve=0
>>> 14598:100281390:d=07103112:R:kpds5=157:kpds6=100:kpds7=500:TR=1:P1=0:P2=0:TimeU=1:500
>>> mb:anl:NAve=0
>>> 14599:100288260:d=07103112:U:kpds5=131:kpds6=100:kpds7=500:TR=1:P1=0:P2=0:TimeU=1:500
>>> mb:anl:NAve=0
>>> 14600:100295130:d=07103112:V:kpds5=132:kpds6=100:kpds7=500:TR=1:P1=0:P2=0:TimeU=1:500
>>> mb:anl:NAve=0
>>> 7297:42763434:d=07123100:TMP:kpds5=11:kpds6=100:kpds7=500:TR=0:P1=12:P2=0:TimeU=1:500
>>> mb:12hr fcst:NAve=0
>>> 7296:42756296:d=07123100:HGT:kpds5=7:kpds6=100:kpds7=500:TR=0:P1=12:P2=0:TimeU=1:500
>>> mb:12hr fcst:NAve=0
>>> 7298:42768502:d=07123100:RH:kpds5=52:kpds6=100:kpds7=500:TR=0:P1=12:P2=0:TimeU=1:500
>>> mb:12hr fcst:NAve=0
>>> 7299:42774812:d=07123100:UGRD:kpds5=33:kpds6=100:kpds7=500:TR=0:P1=12:P2=0:TimeU=1:500
>>> mb:12hr fcst:NAve=0
>>> 7300:42780708:d=07123100:VGRD:kpds5=34:kpds6=100:kpds7=500:TR=0:P1=12:P2=0:TimeU=1:500
>>> mb:12hr fcst:NAve=0
>>> Running GRID-STAT with a file CONFIG with this indication:
>>> fcst_field[] = [ "11/P850" ];
>>> obs_field[]  = [ "130/P850" ];
>>> I obtain an error like:
>>> ***WARNING***: process_scores() -> TMP/P850 not found in GRIB file:
>>> 2007_ecm_cut.grb.
>>> I imagine the problem was on the parameter table used by ECMWF. Is
>>> there a way to rewrite the GRIB file using the usual table (that
>>> defined by WMO)? I tried to use copygb with the option "-k" but with
>>> any results.
>>> Any suggestions?
>>> Francesco Piani
>>> Dott. Ing. Francesco Piani
>>> Weather Forecaster
>>> LaMMA Consortium - Hydrological Service Tuscany Region
>>> Via Madonna del Piano 10
>>> Sesto Fiorentino (FI)
>>> piani at lamma.rete.toscana.it
>>> francesco.piani at regione.toscana.it
>>> ------------------------------------------------------------------------
>>> _______________________________________________
>>> Met_help mailing list
>>> Met_help at mailman.ucar.edu
>>> http://mailman.ucar.edu/mailman/listinfo/met_help 

More information about the Met_help mailing list