dtcenter/MET

Enhance TC-Stat to support the `-set_hdr` job command option

Closed this issue · 1 comments

Describe the Enhancement

This issue arose from @mollybsmith-noaa via the dtcenter/METplus#2608 discussion. While the Stat-Analysis tool supports the -set_hdr job command option, the TC-Stat tool does not. This issue to enhance TC-Stat to add that support.

Run the following job on output from the MET unit tests to demonstrate what's needed:

./tc_stat -lookin test_output/tc_pairs -job rirw -line_type TCMPR -by CYCLONE -out_line_type CTC -out_stat ctc.stat -set_hdr DESC CYCLONE

That produces the following error message:

ERROR  : TCStatJob *TCStatJobFactory::new_tc_stat_job(const char *jobstring) -> unsupported job command options "-set_hdr DESC CYCLONE".

The task is to enhance TC-Stat to support -set_hdr so that the job listed above works.

Note that this may be a little tricky since TC-Stat writes both .stat and .tcst output files. Ideally, the -set_hdr option would work for both types of output.

Time Estimate

2 days

Sub-Issues

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

Relevant Deadlines

List relevant project deadlines here or state NONE.

Funding Source

Define the source of funding and account keys here or state NONE.

Define the Metadata

Assignee

  • Select engineer(s) or no engineer required
  • Select scientist(s) or no scientist required

Labels

  • Review default alert labels
  • Select component(s)
  • Select priority
  • Select requestor(s)

Milestone and Projects

  • Select Milestone as a MET-X.Y.Z version, Consider for Next Release, or Backlog of Development Ideas
  • For a MET-X.Y.Z version, select the MET-X.Y.Z Development project

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 Development issue
    Select: Milestone as the next official version
    Select: MET-X.Y.Z Development project for development toward the next official release
  • Iterate until the reviewer(s) accept and merge your changes.
  • Delete your fork or branch.
  • Close this issue.

Remember to do the following:

  • Consider whether or not StatHdrInfo::get_shc(...) should be reimplemented using a call to StatHdrColumns::apply_set_hdr_opts(...).
    • Done by updating StatHdrInfo::get_shc() to initialize all the output header columns first and then call the common apply_set_hdr_opts() function second.
  • Update TC-Stat documentation.
  • Update unit_tc_stat.xml to demonstrate -set_hdr.