Standard#
- class abcmodel.land.soil.standard.StandardSoilState(wg, temp_soil, temp2, rssoil=<factory>, temp_soil_tend=<factory>, wgtend=<factory>)[source]#
Bases:
AbstractSoilStateStandard soil state.
- wg: Array#
Soil moisture content in the root zone [m3 m-3].
- temp_soil: Array#
Soil temperature [K].
- temp2: Array#
Deep soil temperature [K].
- rssoil: Array#
Soil resistance [m s-1].
- temp_soil_tend: Array#
Soil temperature tendency [K s-1].
- wgtend: Array#
Soil moisture tendency [m3 m-3 s-1].
- class abcmodel.land.soil.standard.StandardSoilModel(a=0.219, b=4.9, p=4.0, cgsat=3.56e-06, wsat=0.472, wfc=0.323, wwilt=0.171, w2=0.21, d1=0.1, c1sat=0.132, c2ref=1.8, rssoilmin=50.0)[source]#
Bases:
AbstractSoilModel[StandardSoilState]Standard soil model with moisture and temperature dynamics.
- Parameters:
a (
float) – Clapp and Hornberger (1978) retention curve parameter. Default is 0.219.b (
float) – Clapp and Hornberger (1978) retention curve parameter. Default is 4.90.p (
float) – Clapp and Hornberger (1978) retention curve parameter. Default is 4.0.cgsat (
float) – saturated soil heat capacity [J m-3 K-1]. Default is 3.56e-6.wsat (
float) – saturated soil moisture content [m3 m-3]. Default is 0.472.wfc (
float) – soil moisture content at field capacity [m3 m-3]. Default is 0.323.wwilt (
float) – soil moisture content at wilting point [m3 m-3]. Default is 0.171.w2 (
float) – soil moisture content at the second layer [m3 m-3]. Default is 0.21.d1 (
float) – depth of the top soil layer [m]. Default is 0.1.c1sat (
float) – saturated soil hydraulic conductivity parameter [-]. Default is 0.132.c2ref (
float) – reference soil hydraulic conductivity parameter [-]. Default is 1.8.rssoilmin (
float) – minimum soil resistance [s m-1]. Default is 50.0.
- init_state(wg=0.21, temp_soil=285.0, temp2=286.0, rssoil=1000000.0)[source]#
Initialize the soil state.
- Parameters:
wg (
float) – Volumetric soil moisture [m3 m-3]. Default is 0.21.temp_soil (
float) – Soil temperature [K]. Default is 285.0.temp2 (
float) – Deep soil temperature [K]. Default is 286.0.rssoil (
float) – Soil resistance [s m-1]. Default is 1.0e6.
- Returns:
The initialized StandardSoilState.
- compute_soil_resistance(wg)[source]#
Compute the soil resistance
rssoil.Notes
The soil resistance is calculated as
\[r_\text{soil} = r_\text{soil,min} \cdot f_2,\]where the parameter \(r_\text{soil,min}\) is the minimum surface resistance and the correction function \(f_2\) is given by
\[\begin{split}f_2 = \begin{cases} \frac{w_\text{fc} - w_\text{wilt}}{w_g - w_\text{wilt}}, & \text{if } w_g > w_\text{wilt} \\ 10^8, & \text{otherwise}, \end{cases}\end{split}\]where the model parameters \(w_\text{fc}\) and \(w_\text{wilt}\) are the field capacity and wilting point, respectively, and the variable \(w_g\) is the soil water content.
References
Equations 9.28 and 9.31 from the CLASS book.
- compute_temp_soil_tend(gf, temp_soil, temp2)[source]#
Compute the soil temperature tendency
temp_soil_tend.Notes
The dynamics of heat transport in the soil is given by
\[\frac{\text{d}T_s}{\text{d}t} = C_T G - \frac{2\pi}{\tau} (T_s - T_2),\]\(T_2\) is the temperature of the second layer in the soil, \(T_s\) is the soil temperature, where \(\tau\) is the time constant of one day (86400s), \(G\) is the ground the heat flux and and \(C_T\) is the surface soil/vegetation heat capacity, which can be parametrized as
\[C_T = C_{T,\text{sat}} \left(\frac{w_{\text{sat}}}{w_2}\right)^{\frac{b}{2\log(10)}}\]where \(C_{T,\text{sat}}\) is the saturated heat capacity, \(w_{\text{sat}}\) is the saturation water content, \(w_2\) is the water content at the second layer and \(b\) is a parameter from Clapp and Hornberger (1978). I have no idea where this log comes from.
References
Equation 9.32 of the CLASS book.
- compute_wgtend(wg, le_soil)[source]#
Compute the soil moisture tendency
wgtend.Notes
The dynamics of soil moisture in the top soil layer is described by
\[\frac{\mathrm{d}w_g}{\mathrm{d}t} = -\frac{C_1}{\rho_w d_1} \frac{LE_{\text{soil}}}{L_v} - \frac{C_2}{\tau} (w_g - w_{eq}),\]where the coefficients \(C_1\) and \(C_2\) are calculated as
\[C_1 = C_{1,\text{sat}} \left(\frac{w_{sat}}{w_g}\right)^{b/2 + 1},\]\[C_2 = C_{2,\text{ref}} \left(\frac{w_2}{w_{sat} - w_2}\right),\]where \(C_{1,\text{sat}}\) and \(C_{2,\text{sat}}\) are parameters from Clapp-Hornberger (1978) and the equilibrium soil moisture is given by
\[w_{eq} = w_2 - w_{sat} a \left(\left(\frac{w_2}{w_{sat}}\right)^p \left[1 - \left(\frac{w_2}{w_{sat}}\right)^{8p}\right]\right).\]In these equations, \(w_g\) is the volumetric soil moisture in the top layer, \(LE_{\text{soil}}\) is the latent heat flux from the soil, \(L_v\) is the latent heat of vaporization, \(\rho_w\) is the density of water, \(d_1\) is the depth of the first soil layer, \(\tau\) is a time constant (here, 86400 s = 1 day), \(w_2\) is the soil moisture in the second layer, \(w_{sat}\) is the saturated soil moisture, and \(a\), \(b\) and \(p\) are parameters from Clapp-Hornberger (1978).
The first term represents the loss of soil moisture due to evaporation, and the second term represents the relaxation of soil moisture toward equilibrium with the lower layer.
References
(9.34)–(9.37) in the CLASS book.
Clapp, R. B., & Hornberger, G. M. (1978). Empirical equations for some soil hydraulic properties. Water resources research, 14(4), 601-604.