Skip to content

Enhance TC-Pairs to only write output for a configurable list of valid times. #1870

@JohnHalleyGotway

Description

@JohnHalleyGotway

Describe the Enhancement

Model developers at NOAA/GSL would like to run TC-Pairs/METexpress in realtime to analyze model performance while the BEST track file for that storm is still actively being updated. Recommend adding new TC-Pairs configuration file options to support this usage.

TC-Pairs currently supports valid_beg and valid_end. Only tracks that are completely contained in that window are retained. Just like we have init_inc and init_exc, recommend adding valid_inc and valid_exc options. If empty, their default values, all track points will be used. If valid_inc is non-empty, discard any track points that do not appear in that list. If valid_exc is non-empty, discard any track points that do appear in that list.

While TC-Pairs will still process all track data passed as input, provide an option to specify a list of one or more valid times for which output is desired. An empty list, the default value, means that all data should be written to the output. For a non-empty list, only write output for track points whose valid time appears in that list.

When running tc_pairs in realtime, processing a single valid time at once, the config options listed below would be useful.

valid_inc   = [ "20210807_060000", "20210807_120000" ];
valid_exc   = [ ];
write_valid = [ "20210807_120000" ];

When evaluating for valid_time = 20210807_120000, tc_pairs should only need the current time and one previous time. However, only write output for the current time.

Time Estimate

2 days

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

2792541

Define the Metadata

Assignee

  • Select engineer(s) or no engineer required: John HG
  • Select scientist(s) or no scientist required: Molly Smith

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