Skip to content

T-route restarts#67

Open
quinnylee wants to merge 15 commits intomainfrom
troute-restarts
Open

T-route restarts#67
quinnylee wants to merge 15 commits intomainfrom
troute-restarts

Conversation

@quinnylee
Copy link
Collaborator

@quinnylee quinnylee commented Mar 5, 2026

Closes #66
Adds functionality to generate t-route restarts from NWM standard analysis/assimilation outputs.

Additions

  • Documentation and examples
  • Functions to create t-route restarts
  • More checks in prep_ngen_data in processor.py to see if we are preprocessing atmospheric forcings, channel routing runoff, or t-route restarts
  • Unit tests

Testing

  1. Tested new t-route restart example locally on macOS/arm64 and Ubuntu/x86
  2. Ran pytests locally (except for the S3-related ones) on macOS/arm64 and Ubuntu/x86
    3. Attempted to run new t-route restart example and pytests locally on Ubuntu/x86. I get very strange errors when forcingprocessor tries to read the NWM output file:
    Edit: moved error documentation here pytests failing on ubuntu/x86 #68
    But since NRDS runs on arm nodes I'm inclined to not worry very much about this

Notes

Todos

  • formal pytests
  • h5netcdf issue (?) resolved by setting h5py==3.11.0

Checklist

  • PR has an informative and human-readable title
  • Changes are limited to a single goal (no scope creep)
  • Code can be automatically merged (no conflicts)
  • Code follows project standards (link if applicable)
  • Passes all existing automated tests
  • Any change in functionality is tested
  • New functions are documented (with a description, list of inputs, and expected output)
  • Placeholder code is flagged / future todos are captured in comments
  • Visually tested in supported browsers and devices (see checklist below 👇)
  • Project documentation has been updated (including the "Unreleased" section of the CHANGELOG)
  • Reviewers requested with the Reviewers tool ➡️

Testing checklist

Target Environment support

  • Linux

Other

  • No linting errors or warnings (in the new troute tools module)

@quinnylee
Copy link
Collaborator Author

quinnylee commented Mar 5, 2026

Another funky error when trying to run test_plotter.py on Ubuntu/x86
Edit: moved error messages here #68

Copy link
Collaborator

@JordanLaserGit JordanLaserGit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this feature @quinnylee! This looks ready to merge, though could you add a pytest that performs a prep_ngen_data() call for troute restart files? Ideally we have unit tests for each of the new functions, but I'm happy with just one test to make sure the feature works.

@quinnylee
Copy link
Collaborator Author

Here's a bunch of unit tests and a full prep_ngen_data test suite. It's a lot of tests but pretty fast.

@quinnylee quinnylee marked this pull request as ready for review March 11, 2026 22:22
@quinnylee quinnylee marked this pull request as draft March 11, 2026 22:24
@quinnylee quinnylee marked this pull request as ready for review March 12, 2026 14:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

t-route restart generation

2 participants