Surface runoff

Warning

This page is a work in progress. If you have any questions or notice any errors, please raise an issue.

Overview

Surface runoff occurs when the rate of water reaching the surface exceeds the rate of infiltration into the soil. Surface runoff (overland flow) is often distinguished from other sources of subsurface runoff such as interflow in the vadose zone and baseflow in the saturated zone. Surface runoff is a key output of both hydrological and global land surface models since it serves as a input flux to lakes and rivers. Runoff that is routed into rivers can then serve as a key input to river routing schemes that produce freshwater fluxes for ocean components of Earth system models.

subtypes(Terrarium.AbstractSurfaceRunoff)
1-element Vector{Any}:
 DirectSurfaceRunoff

Direct runoff

The simplest runoff scheme provided by Terrarium is DirectSurfaceRunoff which first routes all rainwater into the ground as infiltration and then simply routes the residual water flux as runoff.

Water in excess of instantaneous infiltration capacity accumulates as surface water and slowly drains back into the soil,

\[\begin{equation} D = \frac{S}{\tau_r} \end{equation}\]

where $S$ is the accumulated surface water depth (m) and $\tau_r$ is the surface water drainage timescale (s).

Terrarium.DirectSurfaceRunoffType
struct DirectSurfaceRunoff{NF} <: Terrarium.AbstractSurfaceRunoff{NF}

Simple surface runoff scheme that computes runoff as

\[R = P + D - I\]

where P is precipitation reaching the ground, D is drainage from accumualted excess water at the surface, and I is infiltration into the soil.

Properties:

  • τ_r: Surface water removal timescale
source
variables(DirectSurfaceRunoff(Float32))
Variables
├─ Prognostic: 
├─ Auxiliary: 
├── surface_runoff [m s^-1] on XY{Center, Center}
├── infiltration [m s^-1] on XY{Center, Center}
├─ Inputs: 
├─ Namespaces:

Infiltration capacity and soil saturation

Infiltration is limited by both the type and hydrological state of the soil. The effective infiltration can be calculated as

\[\begin{equation} I = \min(P_{\text{ground}}, I_{\max}) \times (1 - f_{\text{sat}}) \end{equation}\]

where $I_{\max}$ is here the maximum infiltration capacity determined by soil hydraulic conductivity (m/s) and $f_{\text{sat}}$ is the saturation fraction of the upper soil layer (0 = dry, 1 = saturated) (-).

When soil becomes saturated ($f_{\text{sat}} = 1$), infiltration drops to zero and all precipitation is routed to either surface runoff or surface water storage.

Water table and drainage processes

This simplified surface runoff scheme does not explicitly model subsurface drainage or return flows from the water table. It is appropriate for upland areas where:

  • Water table is deep relative to the surface
  • Saturation excess runoff is minimal
  • Hortonian overland flow (infiltration excess) is dominant

In riparian areas or regions with high water tables, more sophisticated approaches (e.g., variable source areas) would be necessary to capture saturation-excess runoff.

Process interface

Terrarium.compute_auxiliary!Method
compute_auxiliary!(
    state,
    grid,
    runoff::DirectSurfaceRunoff,
    canopy_interception::Terrarium.AbstractCanopyInterception,
    soil::Terrarium.AbstractSoil,
    args...
)
source

Kernel functions

Terrarium.compute_surface_drainageFunction
compute_surface_drainage(
    runoff::DirectSurfaceRunoff{NF},
    surface_excess_water
) -> Any

Compute surface drainage flux from the current surface_excess_water resevoir state.

source
Terrarium.compute_infiltrationFunction
compute_infiltration(
    runoff::DirectSurfaceRunoff{NF},
    influx,
    sat_top,
    max_infil
) -> Any

Compute infiltration from the given influx (water available for infiltration), saturation of the uppermost soil layer sat_top, and the maximum allowed infiltration max_infil.

source
Terrarium.compute_surface_runoffFunction
compute_surface_runoff(
    runoff::DirectSurfaceRunoff,
    precip_ground,
    surface_drainage,
    infil
) -> Any

Compute surface runoff as precipitation + surface_drainage - infiltration.

source