-
Notifications
You must be signed in to change notification settings - Fork 18
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
Update to use t-route output in csv form #130
Conversation
@shorvath-noaa if its not too much trouble, can you point to the commit or PR that removed support for |
Can you check my understanding, @hellkite500? At some point, |
That was before my time, but I can search for it if that's helpful? The latest output method for t-route is netcdf files containing all of the values from the flowveldepth array, plus info about streamflow nudging (DA values used). Would those work for this? |
Previously, the code looked for |
@aaraney @shorvath-noaa I found some missing context...appearently t-route will still output hdf5 files -- if you use However, this functionality was never refactored into v04 and its subsequent output mechanics, so it may be that we can revive this functionality with the addition of a new output configuration type/functionality. I'm tempted to refactor this PR to look for hdf5 and revert to CSV and give users a choice based on their system/requirements. Using hdf5 does require Thoughts on supporting either binary or text routing outputs in ngen-cal? |
If its not a crazy lift, this is my vote. Sounds like a little strategy pattern should get the job done! |
16b9a12
to
50d75c6
Compare
BREAKING CHANGE: calibration_set _output_file is removed, breaks save_output
d677838
to
150e260
Compare
Note that this PR WILL break the explicit calibration semantics, a subsequent PR is in progress to refactor that strategy and bring it in alignment with these changes. |
Also probably need an updated example config illustrating the use of the model hooks, but that could be pushed in a subsequent PR... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In general, i'm really happy with how using the plugin system decouples the system and really decomposes things. I think that is a huge win and as we continue down the road, I know we will thank ourselves for going this sort of route.
I left a few comments that should be pretty straight forward to get though. It might be easiest if we found some time tomorrow to sit down and work through them together. Thanks for spending time to think through this stuff!
0b272d0
to
082e271
Compare
50b3f05
to
658b553
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me! Thanks for working through this with me, @hellkite500! Lets squash and merge this puppy!
At some point t-route stopped supporting
flowveldepth
output in hdf5 form. However, it will still output theflowveldepth
in a csv file which can be used very similarly. This PR updates routing output to support reading the csv output instead of hdf5.Also, when multiple runs of t-route are used, a cleanup of the
*NEXOUT.parquet
files is needed, so that was added here in theupdate_config
step to ensure a clean directory for each calibration iteration.Only works once NOAA-OWP/t-route#788 is applied, otherwise t-route will still throw an error when run through ngen-cal since the working directory contains other, non-troute specific, parquet files (see NOAA-OWP/t-route#787)