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

Requirements for um_fields_subset.py #14

Open
atteggiani opened this issue Dec 2, 2024 · 3 comments
Open

Requirements for um_fields_subset.py #14

atteggiani opened this issue Dec 2, 2024 · 3 comments

Comments

@atteggiani
Copy link
Collaborator

atteggiani commented Dec 2, 2024

Drafting some requirements for um_fields_subset.py to help out with refactoring / unit-testing / regression testing:

General requirements

Primary functionality: Remove fields from a UM file, generating an output UM file with only a subset of its initial fields in it.
Python version: >=3.10
Audience: Researchers / ACCESS model users
Mode of use: Offline. To be run manually by the user.
Interface type: CLI

Interface requirements

Inputs: Input file (positional argument) [UM file, required]
Outputs: Output file (output path provided by the --output option)
Options:

  • -p, --prognostic-only: Include only STASH item codes of prognostic variables (section 0,33,34). Cannot be used together with --include or --exclude.
  • --include: List of STASH item codes. Only these fields will be included in the output UM file. If not present in the input file, raise a warning. Cannot be used together with -p/--prognostic-only or --exclude.
  • --exclude: List of STASH item codes. These will be the only fields excluded from the output UM file. If not present in the input file, raise a warning. Cannot be used together with -p/--prognostic-only or --include.
  • -o, --output: output path (if not provided a default output path is produced)

Note:
Feel free to add specifications/options if I missed any relevant one.

@leoberhelman
Copy link
Contributor

leoberhelman commented Dec 3, 2024

We would still want the section option correct? Allowing the user to get rid of sections. Or do we just want it to be by specific STASH codes given

@atteggiani
Copy link
Collaborator Author

We would still want the section option correct? Allowing the user to get rid of sections. Or do we just want it to be by specific STASH codes given

No, I think just the specific STASH codes will do.

@atteggiani
Copy link
Collaborator Author

Also look at #12 for additional requirements.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants