dtcenter / MET

Model Evaluation Tools
https://dtcenter.org/community-code/model-evaluation-tools-met
Apache License 2.0
79 stars 24 forks source link

Create new Pair-Stat tool to compute statistics for already paired forecast and observation data #3006

Open JohnHalleyGotway opened 2 weeks ago

JohnHalleyGotway commented 2 weeks ago

Describe the New Feature

Create a new statistics tool named Pair-Stat to compute statistics for already paired forecast and observation data. The initial version of this tool should support the following input datasets, although additional ones can be added in the future:

  1. IODA NetCDF files from the JEDI data assimilation system
  2. the ASCII MPR line type written by the Point-Stat tool
  3. Python embedding to supply MPR data

This new tool is driven primarily by the need to compute statistics for the already paired data in IODA files. Also supporting the MPR line type makes the functionality of this tool intersect with Stat-Analysis, which can already derive statistics from MPR data. The goal is to make the configuration of this tool more user-friendly instead of requiring users to wade through the details of defining many, many Stat-Analysis jobs.

The functionality of this tool overlaps with Point-Stat a lot. Although Pair-Stat will do no interpolation and no matching to message types. However care should be given to support filtering the input data:

In the configuration file, let users define a list of variables names to be processed, or allow for an empty list to process all variables found in the input.

Remember to add a new chapter to the MET User's Guide for the new Pair-Stat tool.

List of questions to be considered:

Acceptance Testing

List input data types and sources. Describe tests required for new functionality.

Time Estimate

Estimate the amount of work required here. Issues should represent approximately 1 to 3 days of work.

Sub-Issues

Consider breaking the new feature down into sub-issues.

Relevant Deadlines

Work described in this issue should be completed by 12/30/2024

Funding Source

NRL METplus 7730022

Define the Metadata

Assignee

Labels

Milestone and Projects

Define Related Issue(s)

Consider the impact to the other METplus components.

New Feature Checklist

See the METplus Workflow for details.

DanielAdriaansen commented 2 weeks ago

Funding source added and deadline added.

DanielAdriaansen commented 2 weeks ago

Work in #3007 will support IODA files with Pair-Stat.

JohnHalleyGotway commented 2 days ago

@willmayfield I'm wondering about the use of a grid within the Pair-Stat tool.

One of the first things done in the other MET statistics tools (e.g. Point-Stat, Grid-Stat, Series-Analysis, MODE, ...) is deciding on a common grid to be used for the verification. That can be defined as the "forecast" grid, "observation" grid, or some other grid, defined by it's name, grid specification string, or the path to a gridded data file. All gridded data is regridded to the common vx grid prior to be used and that includes:

Since Pair-Stat won't use gridded forecast/observation data, defining a verification grid is NOT REQUIRED. Instead, when extracting data from climo, land/sea mask, topography, gridded masks we could just use whatever grid that data happens to be defined on and interpolate to the (lat, lon) location of the pair.

The advantage is that avoiding those regridding steps will be a little faster and will introduce less "interpolation error". The disadvantage is that it'll be less consistent with the logic of the other MET statistics tools.

Shall I proceed WITHOUT defining a common "verification grid"? Or should I use one to maintain more consistency with the logic of other tools?

JohnHalleyGotway commented 17 hours ago

As discussed on Nov 22, 2024 with @DanielAdriaansen and @willmayfield, recommend NOT using a common verification grid since no doing so seems to be the simpler approach. If adding back in this functionality is requested in the future, it can be added at that time.