Skip to content

New Use Case: Multi-Variate MODE #1516

@JohnHalleyGotway

Description

@JohnHalleyGotway

Describe the New Use Case and Enhancement

dtcenter/MET#1184 added initial support for multi-variate MODE in MET version 10.1.0. This was finalized at the end of the development cycle which didn't allow for corresponding development in METplus. This issue is to address that for METplus version 5.0.0. This issue is defined as both an enhancement and a new use case. Recommend the following:

  1. Decide whether we should enhance the existing MODE wrapper or just write a new one for multi-variate MODE.

  2. Enhance the wrappers to support multi-variate MODE:

  • Handle the specification of multiple input variables from, potentially, multiple input files.
  • Add support for the new multivar_logic = "#1 && #2 && #3"; configuration option.
  • Note that "fcst_file" and "obs_file" are replaced by "fcst_file_list" and "obs_file_list" which are ASCII file lists of input files to be used.
  1. Add a new use case to demonstrate one or more examples of running multi-variate MODE. It will likely need to:
  • Run multi-variate MODE to generate forecast and observation "super" objects.
  • Run single-variate MODE to compare those "super" objects.

Along the way, recommend keeping track of suggestions for enhancements to feed back to the MET development team.

Use Case Name and Category

Provide use case name, following Contributor's Guide naming template, and list which category the use case will reside in.
If a new category is needed for this use case, provide its name and brief justification

Input Data

List input data types and sources.
Provide a total input file size, keeping necessary data to a minimum.

Acceptance Testing

Describe tests required for new functionality.
As use case develops, provide a run time here

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.

  • Add a checkbox for each sub-issue here.

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

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

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.

New Use Case 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.
  • Add any new Python packages to the METplus Components Python Requirements table.
  • 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 your changes. Merge branch into develop.
  • Create a second pull request to merge develop into develop-ref, following the same steps for the first pull request.
  • Delete your fork or branch.
  • Close this issue.

Metadata

Metadata

Type

No type

Projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions