NOAA-OWP / t-route

Tree based hydrologic and hydraulic routing
Other
40 stars 45 forks source link

Diffusive fortran kernel correctly executes diffusive wave on stream segments defined by Python preprocessing #758

Closed kumdonoaa closed 2 months ago

kumdonoaa commented 2 months ago

When defining diffusive domain including not only mainstem but also connected tributaries by this config file, diffusive.f90 hasn't been executed diffusive wave routing on all the reaches where the config file defines to run diffusive wave on. That's because diffusive.f90 assumes a reach without any its upstream reach to not run diffusive wave on but instead to already have given flow and depth data computed from other routing model, in this case MC. By defining a reach of index j in frnw_g with specified value, for example, 555 for diffusive reach while -555 for already-computed reach, diffusive.f90 now correctly route on all reaches told to run diffusive wave.

Additions

AbstractRouting.py: Select a single cross section topo data with minimum value of cs_id for each stream segment diffusive_utils_v02.py: Decide a stream reach of index j whether to run diffusive wave or not to run diffusive but have already-computed flow value by MC instead. diffusive.90: Implement diffusive wave on all the reaches that are told to run diffusive on.

Removals

-

Changes

-

Testing

1.

Screenshots

Notes

-

Todos

-

Checklist

Testing checklist

Target Environment support

Accessibility

Other

JurgenZach-NOAA commented 2 months ago

When mainstem: 'mainstem' is included in the yaml file, it runs.