Land Model
Land Model
ClimateMachine.Land.LandModel
— TypeLandModel{PS, S, SRC, IS} <: BalanceLaw
A BalanceLaw for land modeling. Users may over-ride prescribed default values for each field.
Usage
LandModel(
param_set,
soil,
source
init_state_prognostic
)
Fields
param_set
Parameter set
soil
Soil model
source
Source Terms (Problem specific source terms)
init_state_prognostic
Initial Condition (Function to assign initial values of state variables)
Soil
ClimateMachine.Land.SoilModel
— TypeSoilModel{PF, W, H} <: BalanceLaw
A BalanceLaw for soil modeling. Users may over-ride prescribed default values for each field.
Usage
SoilModel(
param_functions,
water,
heat,
)
Fields
param_functions
Soil Parameter Functions
water
Water model
heat
Heat model
ClimateMachine.Land.SoilWaterModel
— TypeSoilWaterModel{FT, IF, VF, MF, HM, Fiϑl, Fiθi, BCD, BCN} <: AbstractWaterModel
The necessary components for solving the equations for water (liquid or ice) in soil.
Without freeze/thaw source terms added (separately), this model reduces to Richard's equation for liquid water. Note that the default for θ_i
is zero. Without freeze/thaw source terms added to both the liquid and ice equations, the default should never be changed, because we do not enforce that the total volumetric water fraction is less than or equal to porosity otherwise.
When freeze/thaw source terms are included, this model encompasses water in both liquid and ice form, and water content is conserved upon phase change.
Fields
impedance_factor
Impedance Factor - will be 1 or ice dependent
viscosity_factor
Viscosity Factor - will be 1 or temperature dependent
moisture_factor
Moisture Factor - will be 1 or moisture dependent
hydraulics
Hydraulics Model - used in matric potential and moisture factor of hydraulic conductivity
initialϑ_l
Initial condition: augmented liquid fraction
initialθ_i
Initial condition: volumetric ice fraction
dirichlet_bc
Dirichlet boundary condition structure
neumann_bc
Neumann boundary condition structure
ClimateMachine.Land.PrescribedWaterModel
— TypePrescribedWaterModel{F1, F2} <: AbstractWaterModel
Model structure for a prescribed water content model.
The user supplies functions of space and time for both ϑ_l
and θ_i
. No auxiliary or state variables are added, no PDE is solved. The defaults are no moisture anywhere, for all time.
Fields
ϑ_l
Augmented liquid fraction
θ_i
Volumetric fraction of ice
ClimateMachine.Land.SoilHeatModel
— TypeSoilHeatModel{FT, FiT, BCD, BCN} <: AbstractHeatModel
The necessary components for the Heat Equation in a soil water matrix.
Fields
initialT
Initial conditions for temperature
dirichlet_bc
Dirichlet BC structure
neumann_bc
Neumann BC structure
ClimateMachine.Land.PrescribedTemperatureModel
— TypePrescribedTemperatureModel{F1} <: AbstractHeatModel
Model structure for a prescribed temperature model.
ClimateMachine.Land.SoilWaterParameterizations
— ModuleSoilWaterParameterizations
van Genuchten, Brooks and Corey, and Haverkamp parameters for and formulation of
- hydraulic conductivity
- matric potential
Hydraulic conductivity can be chosen to be dependent or independent of impedance, viscosity and moisture.
Functions for hydraulic head, effective saturation, pressure head, matric potential, and the relationship between augmented liquid fraction and liquid fraction are also included.
ClimateMachine.Land.SoilHeatParameterizations
— ModuleSoilHeatParameterizations
Functions for volumetric heat capacity, temperature as a function of volumetric internal energy, saturated thermal conductivity, thermal conductivity, relative saturation and the Kersten number are included. Heat capacities denoted by ρc_
are volumetric, while cp_
denotes an isobaric specific heat capacity.
ClimateMachine.Land.SoilParamFunctions
— TypeSoilParamFunctions{FT} <: AbstractSoilParameterFunctions{FT}
Necessary parameters for the soil model. These will eventually be prescribed functions of space (and time).
Fields
porosity
Aggregate porosity of the soil
Ksat
Hydraulic conductivity at saturation. Units of m s-1.
S_s
Specific storage of the soil. Units of m s-1.
ν_ss_gravel
Volume fraction of gravels, relative to soil solids only. Units of m-3 m-3.
ν_ss_om
Volume fraction of SOM, relative to soil solids only. Units of m-3 m-3.
ν_ss_quartz
Volume fraction of quartz, relative to soil solids only. Units of m-3 m-3.
ρc_ds
Bulk volumetric heat capacity of dry soil. Units of J m-3 K-1.
ρp
Particle density for soil solids. Units of kg/m^3
κ_solid
Thermal conductivity of the soil solids. Units of W m-1 K-1.
κ_sat_unfrozen
Saturated thermal conductivity for unfrozen soil. Units of W m-1 K-1.
κ_sat_frozen
Saturated thermal conductivity for frozen soil. Units of W m-1 K-1.
a
Adjustable scale parameter for determining Kersten number in the Balland and Arp formulation; unitless.
b
Adjustable scale parameter for determining Kersten number in the Balland and Arp formulation; unitless.
κ_dry_parameter
Parameter used in the Balland and Arp formulation for κ_dry; unitless
ClimateMachine.Land.get_water_content
— Functionget_water_content(
water::SoilWaterModel,
aux::Vars,
state::Vars,
t::Real
)
Return the moisture variables for the balance law soil water model.
get_water_content(
water::PrescribedWaterModel,
aux::Vars,
state::Vars,
t::Real
)
Return the moisture variables for the prescribed soil water model.
Boundary Conditions
ClimateMachine.Land.Dirichlet
— Typestruct Dirichlet{Fs, Fb} <: AbstractBoundaryFunctions
A concrete type to hold the surface state and bottom state variable values/functions, if Dirichlet boundary conditions are desired.
Fields
surface_state
Surface state boundary condition
bottom_state
Bottom state boundary condition
ClimateMachine.Land.Neumann
— Typestruct Neumann{Fs, Fb} <: AbstractBoundaryFunctions
A concrete type to hold the surface and/or bottom diffusive flux values/functions, if Neumann boundary conditions are desired.
Note that these are intended to be scalar values. In the boundary_state! functions, they are multiplied by the ẑ
vector (i.e. the normal vector n̂
to the domain at the upper boundary, and -n̂
at the lower boundary. These normal vectors point out of the domain.)
Fields
surface_flux
Surface flux boundary condition
bottom_flux
Bottom flux boundary condition