You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Add `floodplain` to kinematic river flow
Initialized as `nothing`.
* Move `floodplain` to separate file
* Add `bankfull_storage` to kinematic wave river
* Separate init kinwave and local inertial floodplain
* Refactor surface flow routing
Introduce one struct for riverflow routing `RiverFlowModel` and one struct for overlandflow routing `OverlandFlowModel`. The routing method (subtype of `AbstractRoutingMethod`) is used to differentiate between different routing approaches for river and overland flow. Extending to other routing methods is now easier.
* Change abstract surface flow routing types
Remove `AbstractRoutingMethod` from these abstract types and add the routing method as first field to `RiverFlowModel` and `OverlandFlowModel`. This simplifies dispatching a bit and looks a bit cleaner.
* Update docstrings
* Renaming of init functions surface flow routing
Also add `slope` parameter that can be used by kinematic wave routing (as alternative to local inertial routing) using a staggered scheme.
* Refactor init local inertial river flow parameters
Use a separate function for reading river parameters that can also be used by kinematic wave routing with a staggered scheme.
* Update info log message
* Add init kinwave staggered river flow
* Refactor init river flow staggered a bit
* Use split up of local_inertial_river_update! function
As implemented in PR#835.
* Init parameter `h_thresh` staggered kinematic wave
* Fix typo
* Fix slope computation
* Add update manning's river flow staggered grid
Using the term kinematic wave is not entirely correct as the Manning's equation is used as an alternative for the local inertial approach on a staggered grid.
* Refactor init staggered routing
* Add `stable_timestep` function `ManningStaggered`
For manning flow on a staggered grid.
* Some fixes
To run manning river and floodplain flow on a staggered grid.
* Revert `river_routing` TOML setting change
* Add TOML setting `alpha` staggered manning flow
* Rename file `surface_local_inertial.jl`
* Add test river and floodplain Manning's flow on staggered grid
* Add missing toml file
* Some ordering and renaming
Edge/node variables and parameters.
* Add floodplain model for kinematic wave
* Simplify dispatching on floodplain model
* Init manning flow parameters
Remove update of `alpha` at each model timestep as dynamic input of manning roughness is not allowed.
* Use separate structs river and overland flow variables
For kinematic wave routing.
* Add kinematic wave flood routing
For routing type `KinematicWave` using a compound channel (not separate routing for floodplain) with a compound `alpha` value.
* Use function for wetted perimeter channel
* Refactor computation of floodplain variables
* Use function for active floodplain cells
* Move update kinematic wave floodplain to function
* Separate routing for floodplain
Making use of a simple routing scheme ( Manning flow and `accucapacityflux`) as kinematic wave routing gets quite slow for very small flows.
* Support mass balance computation `ManningStaggered`
* Consistent use of `at_edge`
For parameter and variable names stored at edges that normally are stored at cell centres/nodes.
* Explain `FloodPlainModel` `domain`
* Address review comment
Make use of const `LDD_PIT`.
* Address review comment
* Remove `Float64` `hydraulic_radius_pow`
* Address review comment
Remove `pow` from `celerity` computation.
* Use constant `BETA_KINWAVE` for `celerity` computation
* Compute stable timestep using variables at edges
For `RiverFlowModel{<:ManningStaggered}`.
* Remove magic number
In `stable_timestep` functions.
* Address review comment
* Improve docstring for `FloodPlainModel`
* Add docstrings related to `FloodPlainModel`
* Update and add docstrings
For routing on a staggered grid. Also removed `cell` from functions, for a staggered grid typically `node` and `edge` terms are used.
* Some more docstrings
* Update `stable_timestep` staggered scheme
* Add small comment
* Add docstring and renaming function
* Update docs routing on staggered grid
* Fix links staggered grid docs
* Add docs floodplain routing kinematic wave
* Update docs and introduce standard name `floodplain__slope`
To support different slope values for river channel and floodplain for `kinematic_wave` routing.
* Update routing_metadata json output
* Update model_config docs
* Small formatting
* Update faq docs
* Remove flow_area from test description
* Use `floodplain__slope` for kinematic wave floodplain
* Add unit test river flow with floodplain
For river flow on a staggered grid using Manning's equation.
* Small change comment in unit test
* Add unit test kinematic wave routing with floodplain
* Update model settings docs
* Rename inds `EdgeConnectivity`
Keeping `x` and `y` dir in the name, bit more generic than `left`/`right`.
* Update struct model docs
* Update changelog
* Update docs model parameters staggered grid
* Fix some doc tags model parameters
* Formatting and typo docs routing parameters
* Fix missing space in changelog
* Rename routing method kinematic wave floodplain
From `KinematicWave` to `Manning`, a better description as it uses the Manning equation and not the full kinematic wave equation.
* Fix `NaN`/`Inf` values floodplain hydraulic radius
Removed flow area and hydraulic radius fields of local inertial structs as these are used only internally (per function) and are not part of model output. Added check for hydraulic radius floodplain.
* Remove check active floodplain index
Already part of release/v1.0 branch: this check was based on `water_depth_at_edge` of river nodes and should be based on `water_depth_at_edge` of floodplain nodes. However, testing showed there is no performance benefit from this check and looping over active floodplain indices.
* Fix large `q` fluctuations `manning_staggered` routing
By using the "upwind"option (instead of "max" as used for local inertial routing) for water level and depth estimation at edge.
* Address review comment
* Small change "upwind" option `manning_staggered`
For zero flows the maximum waterlevel between two adjacent cells was computed. For slope based mannings flow (one direction) this is not required.
* Address review comment
Fix floodplain states check.
* Fix states kinematic wave flood routing
The floodplain water depth was incorrect as it was based on the floodplain storage excluding river channel storage using the floodplain profile, while river channel storage should be included. This is now resolved by using the floodplain storage as state instead of the water depth. Additonally, for floodplain routing a check if the downstream floodplain is active (based on flow area) has been added.
* Update docs Model structure
* Update docs state kinematic wave floodplain
* Update tests
* Remove `hydraulic_radius` check floodplain
* Fix `dt` input `update_floodplain_model!`
* Fix reading `alpha_coefficient` `manning_staggered`
* Revert small change used for testing
---------
Co-authored-by: JoostBuitink <44062204+JoostBuitink@users.noreply.github.com>
0 commit comments