[Met_help] [rt.rap.ucar.edu #94669] History for GridConfig
John Halley Gotway via RT
met_help at ucar.edu
Wed Apr 1 11:07:06 MDT 2020
----------------------------------------------------------------
Initial Request
----------------------------------------------------------------
Conversations
Unread
1–1 of 1
Everything else
1–50 of 87,883
Serra, Mr. Efren, C.
GridConfig
11:17 AM
John Halley Gotway .
[rt.rap.ucar.edu #94662] space weather use case error
10:58 AM
Anna Thomas
Re: Draft Agreement Needed for Tara Jensen's UK Met Office Proposal 2020-0315 - Due 3-6-20
10:39 AM
John Halley Gotway .
Re: [rt.rap.ucar.edu #94651] profile comparison
10:39 AM
Susan Broussard
Re: Draft Agreement Needed for Tara Jensen's UK Met Office Proposal 2020-0315 - Due 3-6-20
10:29 AM
Michael Ek
Fwd: ECSA travel fund application
10:27 AM
Cecelia DeLuca - NO.
Re: quick-turn-around - request for 2-3 release-highlight slides -
10:23 AM
Jason Otkin
Re: verification statistics
10:22 AM
Jeffrey Duda - NOAA.
compiling MET on Orion
10:18 AM
Mittermaier, Marion
RE: Hopefully final draft SOW
9:59 AM
Susan Broussard
Re: Draft Agreement Needed for Tara Jensen's UK Met Office Proposal 2020-0315 - Due 3-6-20
8:06 AM
Anna Thomas
Re: Draft Agreement Needed for Tara Jensen's UK Met Office Proposal 2020-0315 - Due 3-6-20
8:00 AM
GridConfig
Inbox
x
Serra, Mr. Efren, Contractor, Code 7531
11:17 AM (5 minutes ago)
to Minna, me
Tara/Minna – I was wondering how come grid_stat takes python_numpy as argument and then one can provide multiple files in the fcst = {} and obs = {} objects. I know Liz Satterfield uses as follows:
//
// Forecast and observation fields to be verified
//
fcst = {
field = [
{
name = "/users/satterfield/scripts/python/read_NRL_binary.py /unified_verif/work/workliz/global_stats_ec/tmpdir/fcst/2016010100/geopht_pre_0500.0_0000.0_glob360x1
81_2016010100_00000000_fcstfld";
cat_thresh = [ NA ];
},
…
obs = {
field = [
{
name = "/users/satterfield/scripts/python/read_NRL_binary.py /unified_verif/work/workliz/global_stats_ec/tmpdir/verif/2016010100/geopht_pre_0500.0_0000.0_glob360x
181_2016010100_00000000_fcstfld";
cat_thresh = [ NA ];
},
I was hoping to use GRIB1 probabilities and analysis files as follows:
fcst = {
field = [
{
file_type = GRIB1;
level = "Z0";
prob = TRUE;
name = "read_prob_sig_wav_ht.py /ftp/receive/serrae/ww3-tc-ofcl-ens-winds-eval/io012019/2019042600/US058GOCN-GR1mdl.0011_0255_02400U0RL2019042600_0001_000000-000000prob_sig_wa
v_ht_gt12ft";
cat_thresh = [ ==0.1 ];
},
…
obs = {
field = [
{
file_type = GRIB1;
level = "Z0";
cat_thresh = [ >0.0, >=12.0 ];
convert(x) = 3.28084*x;
name = "/ftp/receive/serrae/ww3-tc-ofcl-ens-winds-eval/io012019/2019042700/US058GOCN-GR1mdl.0088_0240_00000F0RL2019042700_0001_000000-000000sig_wav_ht";
cat_thresh = [NA];
mask = { poly = ["/ftp/receive/serrae/ww3-tc-ofcl-ens-winds-eval/io012019/io012019-2019042700.nc"]; };
},
…
Efren A. Serra (Contractor)
Physicist
DeVine Consulting, Inc.
Naval Research Laboratory
Marine Meteorology Division
7 Grace Hopper Ave., STOP 2
Monterey, CA 93943
Code 7542
Mobile: 408-425-5027
----------------------------------------------------------------
Complete Ticket History
----------------------------------------------------------------
Subject: GridConfig
From: John Halley Gotway
Time: Mon Mar 23 11:56:12 2020
Efren,
I see that you have a question about the Grid-Stat tool in MET. It
sounds like you've seen how Liz Satterfield has configured Grid-Stat
using python embedding. But you would like to GRIB version 1 data as
input to Grid-Stat.
If that is your question, then the answer is definitely yes. MET was
originally created to handle the GRIB1 output created by the Unified
PostProcessor software package. So it handle GRIB1 input data very
well. And there's no need to use Python at all. Python embedding is
a relatively new feature that can be used for datasets that MET does
not already support directly.
Instead of using PYTHON_NUMPY on the Grid-Stat command line, you'd run
it something like this:
grid_stat \
/ftp/receive/serrae/ww3-tc-ofcl-ens-winds-
eval/io012019/2019042600/US058GOCN-
GR1mdl.0011_0255_02400U0RL2019042600_0001_000000-000000prob_sig_wa \
/ftp/receive/serrae/ww3-tc-ofcl-ens-winds-
eval/io012019/2019042700/US058GOCN-
GR1mdl.0088_0240_00000F0RL2019042700_0001_000000-000000sig_wav_ht \
GridStatConfig_prob_sig_wa \
-outdir out
Where the first file contains the probabilistic forecast data, the
second file contains the verifying observations, and the 3rd file
(GridStatConfig_prob_sig_wa) is the Grid-Stat configuration file
you've created.
In that config file, you'd set...
fcst = {
field = [
{ name="???";
level="Z0";
cat_thresh = [ ==0.1 ];
prob = TRUE; }
];
}
obs = {
field = [
{ name="???";
level="Z0";
cat_thresh = [ >0.0 ];
convert(x) = 3.28084*x;
}
];
}
Here are the questions you need to answer...
- In the fcst dictionary, replace "???" with the GRIB code
abbreviation for this probability data.
- In the obs dictionary, replace "???" with the GRIB code
abbreviation for the verifying observation data.
- All probability forecasts are created as the probability of some
"event". And the event is typically defined by thresholding the
observation data. What's the event definition for your data? Is it
">0" or ">=12"? If you want to evaluate both thresholds, I think
you'll need to list the same fields twice... once using ">0" and a
second time using ">=12".
If you have additional issues or questions, you can post sample data
to our anonymous ftp site following these
instructions:https://dtcenter.org/community-code/model-evaluation-
tools-met/met-help-desk#ftp
Thanks,
John Halley Gotway
------------------------------------------------
Subject: GridConfig
From: efren.serra.ctr at nrlmry.navy.mil
Time: Mon Mar 23 12:18:24 2020
John - What if I want to use the attached GridConfig configuration
file where I specify more than one fcst/obs fields?
-----Original Message-----
From: John Halley Gotway via RT <met_help at ucar.edu>
Sent: Monday, March 23, 2020 10:56 AM
To: Serra, Mr. Efren, Contractor, Code 7531
<efren.serra.ctr at nrlmry.navy.mil>
Subject: [rt.rap.ucar.edu #94669] GridConfig
Efren,
I see that you have a question about the Grid-Stat tool in MET. It
sounds like you've seen how Liz Satterfield has configured Grid-Stat
using python embedding. But you would like to GRIB version 1 data as
input to Grid-Stat.
If that is your question, then the answer is definitely yes. MET was
originally created to handle the GRIB1 output created by the Unified
PostProcessor software package. So it handle GRIB1 input data very
well. And there's no need to use Python at all. Python embedding is
a relatively new feature that can be used for datasets that MET does
not already support directly.
Instead of using PYTHON_NUMPY on the Grid-Stat command line, you'd run
it something like this:
grid_stat \
/ftp/receive/serrae/ww3-tc-ofcl-ens-winds-
eval/io012019/2019042600/US058GOCN-
GR1mdl.0011_0255_02400U0RL2019042600_0001_000000-000000prob_sig_wa \
/ftp/receive/serrae/ww3-tc-ofcl-ens-winds-
eval/io012019/2019042700/US058GOCN-
GR1mdl.0088_0240_00000F0RL2019042700_0001_000000-000000sig_wav_ht \
GridStatConfig_prob_sig_wa \ -outdir out
Where the first file contains the probabilistic forecast data, the
second file contains the verifying observations, and the 3rd file
(GridStatConfig_prob_sig_wa) is the Grid-Stat configuration file
you've created.
In that config file, you'd set...
fcst = {
field = [
{ name="???";
level="Z0";
cat_thresh = [ ==0.1 ];
prob = TRUE; }
];
}
obs = {
field = [
{ name="???";
level="Z0";
cat_thresh = [ >0.0 ];
convert(x) = 3.28084*x;
}
];
}
Here are the questions you need to answer...
- In the fcst dictionary, replace "???" with the GRIB code
abbreviation for this probability data.
- In the obs dictionary, replace "???" with the GRIB code
abbreviation for the verifying observation data.
- All probability forecasts are created as the probability of some
"event". And the event is typically defined by thresholding the
observation data. What's the event definition for your data? Is it
">0" or ">=12"? If you want to evaluate both thresholds, I think
you'll need to list the same fields twice... once using ">0" and a
second time using ">=12".
If you have additional issues or questions, you can post sample data
to our anonymous ftp site following these
instructions:https://dtcenter.org/community-code/model-evaluation-
tools-met/met-help-desk#ftp
Thanks,
John Halley Gotway
------------------------------------------------
Subject: GridConfig
From: John Halley Gotway
Time: Mon Mar 23 12:49:16 2020
Efren,
Thanks for sending along your config file. I see that you're trying
to
over multiple input files, every 12 hours for several days. That will
not
work. Grid-Stat is designed to read exactly one input forecast file
and
exactly one input observation file. You can definitely configure it
to
verify multiple fields from those files in a single run, but it will
not
read data from different GRIB1 input files. I do see how your example
is a
logical extension of what Liz Satterfield does with Python embedding,
but
the logic just currently doesn't support that.
I'd recommend 2 options:
(1) GRIB files can literally be catted together. For example "cat
file1.grb
file2.grib > file_1_and_2.grib"
You could "cat" together all the input forecast files into one big
one.
And then do the same for the observations.
In the configuration file, for each "field" array entry, you can list
the
requested timing info... valid_time = "20190428_12";
The timing info can be defined as "init_time", "valid_time", or
"fcst_lead".
(2) Instead of running Grid-Stat once to evaluate many output times,
users
typically run it many times, once for each output time. We've been
working
on the METplus python wrappers over the last couple of years to make
this
easier.
So consider setting up a METplus use case for this evaluation.
Thanks,
John
------------------------------------------------
Subject: RE: [rt.rap.ucar.edu #94669] GridConfig
From: efren.serra.ctr at nrlmry.navy.mil
Time: Mon Mar 23 13:36:19 2020
Thanks for the feedback!
-----Original Message-----
From: John Halley Gotway via RT <met_help at ucar.edu>
Sent: Monday, March 23, 2020 11:49 AM
To: Serra, Mr. Efren, Contractor, Code 7531
<efren.serra.ctr at nrlmry.navy.mil>
Subject: Re: [rt.rap.ucar.edu #94669] GridConfig
Efren,
Thanks for sending along your config file. I see that you're trying
to over multiple input files, every 12 hours for several days. That
will not work. Grid-Stat is designed to read exactly one input
forecast file and exactly one input observation file. You can
definitely configure it to verify multiple fields from those files in
a single run, but it will not read data from different GRIB1 input
files. I do see how your example is a logical extension of what Liz
Satterfield does with Python embedding, but the logic just currently
doesn't support that.
I'd recommend 2 options:
(1) GRIB files can literally be catted together. For example "cat
file1.grb file2.grib > file_1_and_2.grib"
You could "cat" together all the input forecast files into one big
one.
And then do the same for the observations.
In the configuration file, for each "field" array entry, you can list
the requested timing info... valid_time = "20190428_12"; The timing
info can be defined as "init_time", "valid_time", or "fcst_lead".
(2) Instead of running Grid-Stat once to evaluate many output times,
users typically run it many times, once for each output time. We've
been working on the METplus python wrappers over the last couple of
years to make this easier.
So consider setting up a METplus use case for this evaluation.
Thanks,
John
------------------------------------------------
More information about the Met_help
mailing list