public subroutine management_transfer_out(sub, surfaceR, subsurfaceR, day, ida, iyr)
check if flow values are negative
calculate available volume at subbains' outlet
If there is enough water to satisfy total demand of all users in subbasin
TSub (current subbasin)
add actual withdrawals of all water users from source subbasin
TWU (current water user)
calculate volume delivered to water user
Irrigation
!! pWU%supplied should not be added to %inflow, because the irrigation supply is added in hydrotope
!! %inflow is added to sda or varoute in "subbasin" and/or "add"
! NOTE: the values of varoute(2, ihout) and varaoute(8, ihout) are modified here !!!
*****
If there is NOT enough water to satisfy total demand of all users in subbasin
*
TSub (current subbasin)
TWU (current water user)
add actual withdrawals of all water users from source subbasin
Irrigation
account for irrigation water users
!! pWU%supplied should not be added to %inflow, because the irrigation supply is added in hydrotope
!! %inflow is added to sda or varoute in "subbasin" and/or "add"
! NOTE: the values of varoute(2, ihout) and varaoute(8, ihout) are modified here !!!
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.