[Met_help] [rt.rap.ucar.edu #90730] History for Questions about point_stat

John Halley Gotway via RT met_help at ucar.edu
Tue Jul 9 12:06:41 MDT 2019


----------------------------------------------------------------
  Initial Request
----------------------------------------------------------------

Hello,

 

I'm trying to use python embedding within point stat to verify a model field
of wind at 10 m using raobs whose positions are in pressure.  Is there a
value in the config file that I need to set so that point_Stat knows to
interpolate to a common height between meter and pressure? Because right now
I'm getting 0 matched pairs when I run point_stat

 

Justin 

 

Justin Tsu

Marine Meteorology Division

Data Assimilation/Mesoscale Modeling

Building 704 Room 212

Naval Research Laboratory, Code 7531

7 Grace Hopper Avenue

Monterey, CA 93943-5502

 

Ph. (831) 656-4111

 



----------------------------------------------------------------
  Complete Ticket History
----------------------------------------------------------------

Subject: Questions about point_stat
From: Minna Win
Time: Fri Jun 21 09:10:54 2019

Hello,

It appears that you have questions about setting up your point-stat
configuration file.  This ticket is being assigned to John Halley
Gotway,
our resident expert on point stat.  Please allow 1-3 days for a
response.
Thank you for your question.

Regards,
Minna
---------------
Minna Win
NCAR
Research Applications Lab
Phone: 303-497-8423
Fax:   303-497-8401



On Thu, Jun 20, 2019 at 3:30 PM Tsu, Mr. Justin via RT
<met_help at ucar.edu>
wrote:

>
> Thu Jun 20 15:30:54 2019: Request 90730 was acted upon.
> Transaction: Ticket created by justin.tsu at nrlmry.navy.mil
>        Queue: met_help
>      Subject: Questions about point_stat
>        Owner: Nobody
>   Requestors: justin.tsu at nrlmry.navy.mil
>       Status: new
>  Ticket <URL:
https://rt.rap.ucar.edu/rt/Ticket/Display.html?id=90730 >
>
>
> Hello,
>
>
>
> I'm trying to use python embedding within point stat to verify a
model
> field
> of wind at 10 m using raobs whose positions are in pressure.  Is
there a
> value in the config file that I need to set so that point_Stat knows
to
> interpolate to a common height between meter and pressure? Because
right
> now
> I'm getting 0 matched pairs when I run point_stat
>
>
>
> Justin
>
>
>
> Justin Tsu
>
> Marine Meteorology Division
>
> Data Assimilation/Mesoscale Modeling
>
> Building 704 Room 212
>
> Naval Research Laboratory, Code 7531
>
> 7 Grace Hopper Avenue
>
> Monterey, CA 93943-5502
>
>
>
> Ph. (831) 656-4111
>
>
>
>
>

------------------------------------------------
Subject: Questions about point_stat
From: John Halley Gotway
Time: Fri Jun 21 13:59:03 2019

Hi Justin,

I see you have a question about using Python embedding in Point-Stat.
So
you're passing a single forecast field of 10 m wind to Point-Stat and
want
to compare it to point observations.  But your point observations are
in
pressure, not height.

Here's some information which applies to this situation...

First, Point-Stat does not do any conversion of pressure to height for
you,
or vice versa.  However, typically point observations include both a
height
above ground and a pressure level.  For example, the ascii2nc tool in
MET
can read a simple 11-column ascii point observation format:
        The "met_point" ASCII format consists of 11 columns:
                Message_Type Station_ID Valid_Time(YYYYMMDD_HHMMSS)
                Lat(Deg North) Lon(Deg East) Elevation(msl)
                Var_Name(or GRIB_Code) Level Height(msl or agl)
                QC_String Observation_Value
For a sounding, the pressure level is listed in the "Level" column and
the
height is listed in the "Height" column.  Take a look at the point
observations you're using to see if you have both height and pressure
listed.

Second, typically, 2-m temperature and 10-m winds are considered to be
forecasts at the "surface".  Adopting the logic from NCEP's
verification
package, on which MET was originally based, the matching for surface
fields
is done by the message type, not the actual vertical level.  For
example,
let's say you're verifying 2-m temperature (name = "TMP"; level =
"Z2";)
and you're verifying it against the ADPSFC message type (land surface
observations).  Point-Stat doesn't actually check the height of the
observation to make sure it's exactly 2.  Instead, all ADPSFC
observations
are automatically used since they are assumed to live at the surface.
Take
a look at the PointStatConfig file, the "message_type_group" map's
entry
for "SURFACE" defines the message types for which this logic should be
applied:

//
// Mapping of message type group name to comma-separated list of
values.
//
message_type_group_map = [
   { key = "SURFACE"; val = "ADPSFC,SFCSHP,MSONET";               },
   { key = "ANYAIR";  val = "AIRCAR,AIRCFT";                      },
   { key = "ANYSFC";  val = "ADPSFC,SFCSHP,ADPUPA,PROFLR,MSONET"; },
   { key = "ONLYSF";  val = "ADPSFC,SFCSHP";                      },
   { key = "LANDSF";  val = "ADPSFC,MSONET";                      },
   { key = "WATERSF"; val = "SFCSHP";                             }
];

Third, there are many ways to configure Point-Stat to control what
range of
vertical levels are used in the verification, both in the forecast and
observation data sources.  For example, let's say you're verifying
500mb
temperature against upper-air observations.  Here's 3 ways you could
configure it:

(1) Single forecast field versus single observation level:
fcst = { field = [ { name = "TMP"; level = "P500"; } ]; }
obs = fcst;

(2) Single forecast field versus range of observation levels:
fcst = { field = [ { name = "TMP"; level = "P500"; } ]; }
obs = { field = [ { name = "TMP"; level = "P475-525"; } ]; }

(3) Range of forecast fields versus range of observation levels:
fcst = { field = [ { name = "TMP"; level = "P400-600"; } ]; }
obs = { field = [ { name = "TMP"; level = "P450-550"; } ]; }

In (1) and (2), we do not vertical interpolation of the forecast data
since
you've only requested a single level.  In (3), we'll read data for
400,
500, and 600 mb levels, but only use obs falling between 450 and 550.
For
each obs, we'll vertically interpolate the forecast values from the
levels
above/below it to the actual pressure level of the obs.

So lots of configuration options.

If that answers your question, then great.  If not, you could send me
some
sample data with a description of what you're trying to do, and I can
run
it here.

Thanks,
John Halley Gotway


On Thu, Jun 20, 2019 at 3:30 PM Tsu, Mr. Justin via RT
<met_help at ucar.edu>
wrote:

>
> Thu Jun 20 15:30:54 2019: Request 90730 was acted upon.
> Transaction: Ticket created by justin.tsu at nrlmry.navy.mil
>        Queue: met_help
>      Subject: Questions about point_stat
>        Owner: Nobody
>   Requestors: justin.tsu at nrlmry.navy.mil
>       Status: new
>  Ticket <URL:
https://rt.rap.ucar.edu/rt/Ticket/Display.html?id=90730 >
>
>
> Hello,
>
>
>
> I'm trying to use python embedding within point stat to verify a
model
> field
> of wind at 10 m using raobs whose positions are in pressure.  Is
there a
> value in the config file that I need to set so that point_Stat knows
to
> interpolate to a common height between meter and pressure? Because
right
> now
> I'm getting 0 matched pairs when I run point_stat
>
>
>
> Justin
>
>
>
> Justin Tsu
>
> Marine Meteorology Division
>
> Data Assimilation/Mesoscale Modeling
>
> Building 704 Room 212
>
> Naval Research Laboratory, Code 7531
>
> 7 Grace Hopper Avenue
>
> Monterey, CA 93943-5502
>
>
>
> Ph. (831) 656-4111
>
>
>
>
>

------------------------------------------------


More information about the Met_help mailing list