Skip to content

Enhance Ensemble-Stat to compute probabilistic statistics for user-defined or climatology-based thresholds. #1259

@JohnHalleyGotway

Description

@JohnHalleyGotway

Describe the Enhancement

Enhance Ensemble-Stat to compute probabilistic statistics on the fly for each threshold. This is needed by the NOAA/EMC global group for ensemble verification. Update the Ensemble-Stat configuration file to write output for PCT, PSTD, PRC, PRJ, and ECON line types. When climo_cdf thresholds are used, also write the mean of the stats across those bins (just like we do in Point-Stat and Grid-Stat).

Note that a related issue #1583 already adds probabilistic output to Ensemble-Stat for MET version 10.1.0. As of MET version 10.0.0, the ensemble relative frequency probabilities are computed for each categorical threshold (cat_thresh) entry listed in the ensemble (ens) dictionary. And those gridded relative frequencies (i.e. probabilities) are written to the NetCDF output file.

For this issue, we'll...

  • Leave the ens logic in place as is for MET version 10.1.0. But note that the "ens" dictionary will be completely removed in MET version 11.0.0 by Remove ensemble post-processing from the Ensemble-Stat tool. #1908.
  • Add support for "cat_thresh" being defined in the "fcst" dictionary. For each "cat_thresh", ensemble_stat will compute the relative frequencies on the fly, write them to the gridded NetCDF output file, and also verify them against the provided gridded or point observations. When writing the NetCDF output, make sure to NOT write the same variable name twice in case the user has requested relative frequencies for the same field in both the "ens" and "fcst" dictionaries.

This change makes Ensemble-Stat slightly more confusing in MET version 10.1.0, but it'll be simplified when we remove the "ens" dictionary entirely in MET version 11.0.0.

Time Estimate

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

Sub-Issues

Consider breaking the enhancement down into sub-issues.
No sub-issues needed.

Relevant Deadlines

List relevant project deadlines here or state NONE.

Funding Source

2793541

Define the Metadata

Assignee

Labels

  • Select component(s)
  • Select priority
  • Select requestor(s)

Projects and Milestone

  • Select Repository and/or Organization level Project(s) or add alert: NEED PROJECT ASSIGNMENT label
  • Select Milestone as the next official version or Future Versions

Define Related Issue(s)

Consider the impact to the other METplus components.

Enhancement Checklist

See the METplus Workflow for details.

  • Complete the issue definition above, including the Time Estimate and Funding Source.
  • Fork this repository or create a branch of develop.
    Branch name: feature_<Issue Number>_<Description>
  • Complete the development and test your changes.
  • Add/update log messages for easier debugging.
  • Add/update unit tests.
  • Add/update documentation.
  • Push local changes to GitHub.
  • Submit a pull request to merge into develop.
    Pull request: feature <Issue Number> <Description>
  • Define the pull request metadata, as permissions allow.
    Select: Reviewer(s) and Linked issues
    Select: Repository level development cycle Project for the next official release
    Select: Milestone as the next official version
  • Iterate until the reviewer(s) accept and merge your changes.
  • Delete your fork or branch.
  • Close this issue.

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions