Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add EOF Calculation to METcalcpy for Stratosphere and Weather Regime #127

Open
23 tasks
CPKalb opened this issue Nov 15, 2021 · 0 comments
Open
23 tasks

Add EOF Calculation to METcalcpy for Stratosphere and Weather Regime #127

CPKalb opened this issue Nov 15, 2021 · 0 comments
Labels
alert: NEED ACCOUNT KEY Need to assign an account key to this issue alert: NEED CYCLE ASSIGNMENT Need to assign to a release development cycle type: new feature Make it do something new

Comments

@CPKalb
Copy link
Contributor

CPKalb commented Nov 15, 2021

Describe the New Feature

Currently, EOFs exist in several places in METcalcpy and METplus. EOFs are computed as part of the Weather regime use case and exist in metcalcpy/contributed/blocking_weather_regime/WeatherRegime.py. They are also calculated as part of Stratosphere QBO, and are located in METplus/parm/use_cases/model_applications/UserScript_fcstGFS_obsERA_StratosphereQBO/stratosphere_qbo_driver.py. Finally, the RMM and OMI use cases accept EOFs that have been previously computed and are stored in files, but currently there is not a way to compute EOFs for them.

This issue addresses putting the EOF calculation in a common location rather than having it in the two locations for Weather Regime and Stratosphere QBO. This will include modifying the weather regime calculation in METcalcpy to use the new EOFs, which should be straightforward. The Stratosphere QBO use case will require a more substantial modification to point to this new version of EOFs, since the EOF calculation is part of the driver script in METplus. This will have to be modified as part of a separate issue in METplus (an issue for this does not currently exist).

One of the things to note here is that the weather regime use case expects EOF input as numpy arrays, while the Stratosphere use case expects input as Xarrays. This new EOF calculation will hopefully handle both of these data types.

It also might make sense to add the option to write an output file that could be used for the RMM and OMI use cases.

Acceptance Testing

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

Time Estimate

I'm guessing maybe 2 days to add the calculation and possibly a little more if file writing is added.

Sub-Issues

Consider breaking the new feature down into sub-issues.

  • Add EOF calculation
  • Update Weather Regime Calculation to use this new EOF
  • Add option to write EOFs to an output file if we decide to do this

Relevant Deadlines

List relevant project deadlines here or state NONE.

Funding Source

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)

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 Feature 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.
@CPKalb CPKalb added type: new feature Make it do something new alert: NEED ACCOUNT KEY Need to assign an account key to this issue alert: NEED MORE DEFINITION Not yet actionable, additional definition required alert: NEED CYCLE ASSIGNMENT Need to assign to a release development cycle labels Nov 15, 2021
@CPKalb CPKalb self-assigned this Nov 15, 2021
@TaraJensen TaraJensen removed the alert: NEED ACCOUNT KEY Need to assign an account key to this issue label Dec 1, 2021
@CPKalb CPKalb changed the title Add EOF calculation to METplus for Stratosphere and RMM Add EOF Calculation to METcalcpy for Stratosphere and Weather Regime Jun 20, 2024
@CPKalb CPKalb removed their assignment Jun 28, 2024
@CPKalb CPKalb added alert: NEED ACCOUNT KEY Need to assign an account key to this issue and removed alert: NEED MORE DEFINITION Not yet actionable, additional definition required labels Jun 28, 2024
@CPKalb CPKalb self-assigned this Jun 28, 2024
@CPKalb CPKalb added alert: NEED ACCOUNT KEY Need to assign an account key to this issue and removed alert: NEED ACCOUNT KEY Need to assign an account key to this issue labels Jun 28, 2024
@CPKalb CPKalb removed their assignment Jun 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
alert: NEED ACCOUNT KEY Need to assign an account key to this issue alert: NEED CYCLE ASSIGNMENT Need to assign to a release development cycle type: new feature Make it do something new
Projects
None yet
Development

No branches or pull requests

2 participants