Class nlSPL#
Public functions#
- nlSPL.erodepSPLnl()[source]#
Modified stream power law model used to represent erosion by rivers also taking into account the role played by sediments in modulating erosion and deposition rate and considering non-linear slope dependency.
It calls the private function _getEroDepRateNL described above. Once erosion/deposition rates have been calculated, the function computes local thicknesses for the considered time step and update local elevation and cumulative erosion, deposition values.
Private functions#
- nlSPL._form_residual(snes, h, F)[source]#
The nonlinear system (SNES) at each time step is solved iteratively by assessing the residual of the detachment-limited SPL equation.
- nlSPL._form_residual_ed(snes, h, F)[source]#
The nonlinear system (SNES) at each time step is solved iteratively by assessing the residual of the SPL equation accounting for erosion and deposition (transport-limited).
- nlSPL._form_jacobian(snes, h, J, P)[source]#
For the detachment-limited case, the Jacobian is calculated and provided to the nonlinear system (SNES).
- nlSPL._getEroDepRateNL()[source]#
This function computes erosion deposition rates in metres per year. This is done on the filled elevation. We use the filled-limited elevation to ensure that erosion/deposition is not going to be underestimated by small depressions which are likely to be filled (either by sediments or water) during a single time step.
The simplest law to simulate fluvial incision is based on the detachment-limited stream power law, in which erosion rate depends on drainage area \(A\), net precipitation \(P\) and local slope \(S\) and takes the form:
\[E = − \kappa P^d (PA)^m S^n\]\(\kappa\) is a dimensional coefficient describing the erodibility of the channel bed as a function of rock strength, bed roughness and climate, \(d\), \(m\) and \(n\) are dimensionless positive constants.
A similar approach is used to compute ice induced erosion where the ice flow accumulation is defined based on downstream nodes and is smoothed to better represent the erosion induced by glaciers. The ice-induced erosion uses the stream power law equation with a eordibility coefficient which is user defined. Under glacier terminus point, melted glacier flow is added to river flow accumulation likewise is the glacier-induced transported sediment flux.
Default formulation assumes \(d = 0\), \(m = 0.5\) and \(n = 1\). The precipitation exponent \(d\) allows for representation of climate-dependent chemical weathering of river bed across non-uniform rainfall.
Important
Here, the coefficient n can be fixed by the user to value different than 1.0 and the equation is also dependent on m, d and the erodibility \(\kappa\).
In addition, an alternative method to the purely detachment-limited approach consists in accounting for the role played by sediment in modulating erosion and deposition rates. It follows the model of Yuan et al, 2019, whereby the deposition flux depends on a deposition coefficient \(G\) and is proportional to the ratio between cell area \(\mathrm{\Omega}\) and water discharge \(\mathrm{Q}=\bar{P}A\).
- nlSPL._solveNL()[source]#
Solves the non-linear stream power law for the detachment limited case. This calls the following private functions:
_form_residual
_form_jacobian
Note
PETSc SNES approach is used to solve the nonlinear equation above over the considered time step. In this implementation of the SNES, we provide the Jacobian. A Nonlinear Generalized Minimum Residual method is used
nrichardson, a Generalized Minimum Residual method is usedgmresfor the KSP and the preconditioner allows for multi-grid methods based on the HYPRE BoomerAMG approach.
- nlSPL._solveNL_ed()[source]#
Solves the non-linear stream power law for the transport limited case. This calls the following private function:
_form_residual_ed
Note
PETSc SNES approach is used to solve the nonlinear equation above over the considered time step. In this implementation of the SNES, we do not form the Jacobian and PETSc calculates it based on the residual function. A Nonlinear Generalized Minimum Residual method is used
ngmres, a Preconditioned Conjugate Gradientcgmethod is defined for the KSP and the preconditioner allows for multi-grid methods based on the HYPRE BoomerAMG approach.