pastas.recharge.Peterson#

class pastas.recharge.Peterson#

Nonlinear recharge to the groundwater.

Calculated based on Peterson and Western [2014].

The water balance for the unsaturated zone reservoir is written as:

\[\begin{split}\\frac{dS}{dt} = P_e - E_a - R\end{split}\]

where the fluxes $P_e$, $E_a$ and $R$ are calculated as:

\[\begin{split}P_e = P \\left(1 - \\frac{S}{\\hat{S_{cap}}}\\right)^\\alpha\end{split}\]
\[\begin{split}E_a = E_p \\left(\\frac{S}{\\hat{S_{cap}}}\\right)^\\gamma\end{split}\]
\[\begin{split}R = \\hat{k_{sat}}\\left(\\frac{S}{\\hat{S_{cap}}}\\right)^{\\hat{\\beta}}\end{split}\]

with the parameters:

\[\begin{split}\\hat{S_{cap}} = 10^{S_{cap}}; \\hat{k_{sat}} = 10^{k_{sat}}; \\hat{\\beta} = 10^{\\beta}\end{split}\]

Note that the method currently uses forward Euler method to solve the ODE so significant water balance errors can occur.

property nparam: int#

Number of parameters of the Peterson recharge model.

Methods#

get_init_parameters(→ pandas.DataFrame)

Get initial parameters and bounds for the Peterson recharge model.

simulate(...)

Simulate the recharge flux.

get_recharge(→ tuple[pastas.typing.ArrayLike, ...)

Calculate recharge flux sped up with numba.

get_water_balance(→ pandas.DataFrame)

Get the water balance for the Peterson recharge model.