SurfaceFlow
SurfaceFlow types and functions
ClimateMachine.Land.SurfaceFlow.OverlandFlowModel
— TypeOverlandFlowModel{Sx,Sy,M} <: BalanceLaw
The 2D overland flow model, with a prognostic variable equal to the height of the surface water.
This model simulates the depth-averaged shallow water equation under the kinematic approximation, and employs Manning's relationship to relate velocity to the height of the water.
Fields
slope_x
Slope in x direction; field(x,y), unitless
slope_y
Slope in y direction; field(x,y), unitless
mannings
Mannings coefficient; field(x,y), units of s/m^(1/3)
ClimateMachine.Land.SurfaceFlow.NoSurfaceFlowModel
— TypeNoSurfaceFlowModel <: BalanceLaw
The default surface flow model, which does not add any prognostic variables to the land model and therefore does not model surface flow.
ClimateMachine.Land.SurfaceFlow.surface_boundary_flux!
— Functionsurface_boundary_flux!(
nf,
bc::Land.Dirichlet,
model::OverlandFlowModel,
land::LandModel,
_...,
)
The surface boundary flux function for the OverlandFlow model, which does nothing if Dirichlet conditions are chosen in order to not overconstrain the solution.
ClimateMachine.Land.SurfaceFlow.surface_boundary_state!
— Functionsurface_boundary_state!(
nf,
bc::Land.Dirichlet,
model::OverlandFlowModel,
land::LandModel,
state⁺::Vars,
aux⁺::Vars,
nM,
state⁻::Vars,
aux⁻::Vars,
t,
_...,
)
The surface boundary state function for the OverlandFlow model when Dirichlet conditions are chosen. This should be equivalent to outflow boundary conditions, also referred to as gradient outlet conditions.
ClimateMachine.Land.SurfaceFlow.calculate_velocity
— Functioncalculate_velocity(surface, x::Real, y::Real, h::Real)
Given the surface flow model, calculate the velocity of the flow based on height, slope, and Manning's coefficient.
ClimateMachine.Land.SurfaceFlow.Precip
— TypePrecip <: TendencyDef{Source}
A source term for overland flow where a prescribed net precipitation drives the overland flow.
ClimateMachine.Land.SurfaceFlow.VolumeAdvection
— TypeVolumeAdvection <: TendencyDef{Flux{FirstOrder}}
A first order flux type for the overland flow model.
ClimateMachine.Land.SurfaceFlow.SurfaceWaterHeight
— TypeSurfaceWaterHeight <: AbstractPrognosticVariable
The prognostic variable type for the 2d overland flow model. Used only for dispatching on.