mizuRoute icon indicating copy to clipboard operation
mizuRoute copied to clipboard

flux and state data structure organization

Open nmizukami opened this issue 6 years ago • 0 comments

It is proposed that one routing scheme is used for one simulation (i.e., remove route_opt = 0, route with all the schemes), because as new routing schemes are added, using all the schemes at the same run is not practical.

With this in mind, there might be need for re-organization of flux data structure (STRFLX) and state data structures (KREACH for kinematic wave).

Suggestion

For Flux, the same data structure is shared with different routing schemes e.g.,

TYPE, public :: STRFLX
   real(dp)           :: BASIN_QI      ! instantaneous runoff volume from the local basin (m3/s)
   real(dp)           :: BASIN_QR(0:1) ! routed runoff volume from the local basin (m3/s)
   real(dp)           :: REACH_Q       ! time-step average streamflow (m3/s)
   real(dp)           :: UPSTREAM_QI   ! sum of upstream streamflow (m3/s)
   real(dp)           :: TAKE          ! average take
   logical(lgt)       :: CHECK_ROUTE   ! .true. if the reach is routed
END TYPE STRFLX

For states, each scheme has different state variable. so separate, unique data structure needs to be defined.

nmizukami avatar Nov 27 '19 16:11 nmizukami