mHM
The mesoscale Hydrological Model
|
Runoff generation. More...
Functions/Subroutines | |
subroutine, public | runoff_unsat_zone (k1, kp, k0, alpha, karst_loss, pefec_soil, unsat_thresh, sat_storage, unsat_storage, slow_interflow, fast_interflow, perc) |
Runoff generation for the saturated zone. | |
subroutine, public | runoff_sat_zone (k2, sat_storage, baseflow) |
Runoff generation for the saturated zone. | |
subroutine, public | l1_total_runoff (fsealed_area_fraction, fast_interflow, slow_interflow, baseflow, direct_runoff, total_runoff) |
total runoff accumulation at level 1 | |
Runoff generation.
This module generates the runoff for the unsaturated and saturated zones and provides runoff accumulation.
COPYING
and COPYING.LESSER
provided with this software. The complete GNU license text can also be found at http://www.gnu.org/licenses/. subroutine, public mo_runoff::l1_total_runoff | ( | real(dp), intent(in) | fsealed_area_fraction, |
real(dp), intent(in) | fast_interflow, | ||
real(dp), intent(in) | slow_interflow, | ||
real(dp), intent(in) | baseflow, | ||
real(dp), intent(in) | direct_runoff, | ||
real(dp), intent(out) | total_runoff | ||
) |
total runoff accumulation at level 1
Accumulates runoff.
q_{T} = ( q_0 + q_1 + q_2 ) * (1-fSealed) + q_{D} * fSealed
, where fSealed is the fraction of sealed area.
[in] | REAL(dp) :: fSealed_area_fraction | sealed area fraction [1] |
[in] | REAL(dp) :: fast_interflow | q_0 Fast runoff component [mm TS-1] |
[in] | REAL(dp) :: slow_interflow | q_1 Slow runoff component [mm TS-1] |
[in] | REAL(dp) :: baseflow | q_2 Baseflow [mm TS-1] |
[in] | REAL(dp) :: direct_runoff | q_D Direct runoff from impervious areas [mm TS-1] |
[out] | REAL(dp) :: total_runoff | q_T Generated runoff [mm TS-1] |
Definition at line 248 of file mo_runoff.f90.
Referenced by mo_mhm::mhm().
subroutine, public mo_runoff::runoff_sat_zone | ( | real(dp), intent(in) | k2, |
real(dp), intent(inout) | sat_storage, | ||
real(dp), intent(out) | baseflow | ||
) |
Runoff generation for the saturated zone.
Calculates the runoff generation for the saturated zone. If the level of the ground water reservoir is zero, then the baseflow is also zero. If the level of the ground water reservoir is greater than zero, then the baseflow is equal to baseflow recession coefficient times the level of the ground water reservoir, which will be then reduced by the value of baseflow.
[in] | REAL(dp) :: k2 | Baseflow recession coefficient [TS-1] |
[in,out] | REAL(dp) :: sat_storage | Groundwater storage [mm] |
[out] | REAL(dp) :: baseflow | Baseflow [mm TS-1] |
Definition at line 191 of file mo_runoff.f90.
Referenced by mo_mhm::mhm().
subroutine, public mo_runoff::runoff_unsat_zone | ( | real(dp), intent(in) | k1, |
real(dp), intent(in) | kp, | ||
real(dp), intent(in) | k0, | ||
real(dp), intent(in) | alpha, | ||
real(dp), intent(in) | karst_loss, | ||
real(dp), intent(in) | pefec_soil, | ||
real(dp), intent(in) | unsat_thresh, | ||
real(dp), intent(inout) | sat_storage, | ||
real(dp), intent(inout) | unsat_storage, | ||
real(dp), intent(out) | slow_interflow, | ||
real(dp), intent(out) | fast_interflow, | ||
real(dp), intent(out) | perc | ||
) |
Runoff generation for the saturated zone.
Calculates the runoff generation for the unsaturated zone. Calculates percolation, interflow and baseflow. Updates upper soil and groundwater storages.
[in] | REAL(dp) :: k1 | Recession coefficient of the upper reservoir,lower outlet [TS-1] |
[in] | REAL(dp) :: kp | Percolation coefficient [TS-1] |
[in] | REAL(dp) :: k0 | Recession coefficient of the upperreservoir, upper outlet [TS-1] |
[in] | REAL(dp) :: alpha | Exponent for the upper reservoir [-] |
[in] | REAL(dp) :: karst_loss | Karstic percolation loss [-] |
[in] | REAL(dp) :: pefec_soil | Input to the soil layer [mm] |
[in] | REAL(dp) :: unsat_thresh | Threshold water depth in upper reservoir(for Runoff contribution) [mm] |
[in,out] | REAL(dp) :: sat_storage | Groundwater storage [mm] |
[in,out] | REAL(dp) :: unsat_storage | Upper soil storage [mm] |
[out] | REAL(dp) :: slow_interflow | Slow runoff component [mm TS-1] |
[out] | REAL(dp) :: fast_interflow | Fast runoff component [mm TS-1] |
[out] | REAL(dp) :: perc | Percolation [mm TS-1] |
Definition at line 74 of file mo_runoff.f90.
References mo_common_constants::eps_dp.
Referenced by mo_mhm::mhm().