Soil Water Parameterizations

Water functions

ClimateMachine.Land.SoilWaterParameterizations.impedance_factorFunction
impedance_factor(
    imp::NoImpedance{FT},
    θ_i::FT,
    θ_l::FT,
) where {FT}

Returns the impedance factor when no effect due to ice is desired. Returns 1.

The other arguments are included to unify the function call.

source
impedance_factor(
    imp::IceImpedance{FT},
    θ_i::FT,
    θ_l::FT,
) where {FT}

Returns the impedance factor when an effect due to the fraction of ice is desired.

source
ClimateMachine.Land.SoilWaterParameterizations.viscosity_factorFunction
viscosity_factor(
    vm::ConstantViscosity{FT},
    T::FT,
) where {FT}

Returns the viscosity factor when we choose no temperature dependence, i.e. a constant viscosity. Returns 1.

T is included as an argument to unify the function call.

source
viscosity_factor(
    vm::TemperatureDependentViscosity{FT},
    T::FT,
) where {FT}

Returns the viscosity factor when we choose a TemperatureDependentViscosity.

source
ClimateMachine.Land.SoilWaterParameterizations.moisture_factorFunction
moisture_factor(
    mm::MoistureDependent{FT},
    hm::vanGenuchten{FT},
    S_l::FT,
) where {FT}

Returns the moisture factor of the hydraulic conductivy assuming a MoistureDependent and van Genuchten hydraulic model.

source
moisture_factor(
    mm::MoistureDependent{FT},
    hm::BrooksCorey{FT},
    S_l::FT,
) where {FT}

Returns the moisture factor of the hydraulic conductivy assuming a MoistureDependent and Brooks/Corey hydraulic model.

source
moisture_factor(
    mm::MoistureDependent{FT},
    hm::Haverkamp{FT},
    S_l::FT,
) where {FT}

Returns the moisture factor of the hydraulic conductivy assuming a MoistureDependent and Haverkamp hydraulic model.

source
moisture_factor(mm::MoistureIndependent{FT},
                hm::AbstractHydraulicsModel{FT},
                S_l::FT,
) where {FT}

Returns the moisture factor in hydraulic conductivity when a MoistureIndependent model is chosen. Returns 1.

Note that the hydraulics model and S_l are not used, but are included as arguments to unify the function call.

source
ClimateMachine.Land.SoilWaterParameterizations.vanGenuchtenType
vanGenuchten{FT} <: AbstractHydraulicsModel{FT}

The necessary parameters for the van Genuchten hydraulic model; defaults are for Yolo light clay.

Fields

  • n

    Exponent parameter - used in matric potential

  • α

    used in matric potential. The inverse of this carries units in the expression for matric potential (specify in inverse meters).

  • m

    Exponent parameter - determined by n, used in hydraulic conductivity

source
ClimateMachine.Land.SoilWaterParameterizations.BrooksCoreyType
BrooksCorey{FT} <: AbstractHydraulicsModel{FT}

The necessary parameters for the Brooks and Corey hydraulic model.

Defaults are chosen to somewhat mirror the Havercamp/vG Yolo light clay hydraulic conductivity/matric potential.

Fields

  • ψb

    ψ_b - used in matric potential. Units of meters.

  • m

    Exponent used in matric potential and hydraulic conductivity.

source
ClimateMachine.Land.SoilWaterParameterizations.HaverkampType
Haverkamp{FT} <: AbstractHydraulicsModel{FT}

The necessary parameters for the Haverkamp hydraulic model for Yolo light clay.

Note that this only is used in creating a hydraulic conductivity function, and another formulation for matric potential must be used.

Fields

  • k

    exponent in conductivity

  • A

    constant A (units of cm^k) using in conductivity. Our sim is in meters

  • n

    Exponent parameter - using in matric potential

  • α

    used in matric potential. The inverse of this carries units in the expression for matric potential (specify in inverse meters).

  • m

    Exponent parameter - determined by n, used in hydraulic conductivity

source
ClimateMachine.Land.SoilWaterParameterizations.effective_saturationFunction
effective_saturation(
    porosity::FT,
    ϑ_l::FT
) where {FT}

Compute the effective saturation of soil.

ϑ_l is defined to be zero or positive. If ϑ_l is negative, hydraulic functions that take it as an argument will return imaginary numbers, resulting in domain errors. Exit in this case with an error.

source
ClimateMachine.Land.SoilWaterParameterizations.matric_potentialFunction
matric_potential(
        model::vanGenuchten{FT},
        S_l::FT
) where {FT}

Compute the van Genuchten function for matric potential.

source
matric_potential(
        model::Haverkamp{FT},
        S_l::FT
) where {FT}

Compute the van Genuchten function as a proxy for the Haverkamp model matric potential (for testing purposes).

source
matric_potential(
        model::BrooksCorey{FT},
        S_l::FT
) where {FT}

Compute the Brooks and Corey function for matric potential.

source