Nonlinear solvers: Newton method.
|
| template<class Scalar, class ResFunc, class DerivFunc, typename std::enable_if_t< std::is_invocable_r_v< Scalar, ResFunc, Scalar > &&std::is_invocable_r_v< Scalar, DerivFunc, Scalar > > ...> |
| Scalar | Dumux::findScalarRootNewton (Scalar xOld, const ResFunc &residual, const DerivFunc &derivative, const Scalar tol=1e-13, const int maxIter=200) |
| | Newton's root finding algorithm for scalar functions (secant method).
|
| template<class Scalar, class ResFunc, typename std::enable_if_t< std::is_invocable_r_v< Scalar, ResFunc, Scalar > > ...> |
| Scalar | Dumux::findScalarRootNewton (Scalar xOld, const ResFunc &residual, const Scalar tol=1e-13, const int maxIter=200) |
| | Newton's root finding algorithm for scalar functions (secant method).
|
| template<class Scalar, class ResFunc, typename std::enable_if_t< std::is_invocable_r_v< Scalar, ResFunc, Scalar > > ...> |
| Scalar | Dumux::findScalarRootBrent (Scalar a, Scalar b, const ResFunc &residual, const Scalar tol=1e-13, const int maxIter=200) |
| | Brent's root finding algorithm for scalar functions.
|
template<class Scalar, class ResFunc, class DerivFunc, typename std::enable_if_t< std::is_invocable_r_v< Scalar, ResFunc, Scalar > &&std::is_invocable_r_v< Scalar, DerivFunc, Scalar > > ...>
| Scalar Dumux::findScalarRootNewton |
( |
Scalar | xOld, |
|
|
const ResFunc & | residual, |
|
|
const DerivFunc & | derivative, |
|
|
const Scalar | tol = 1e-13, |
|
|
const int | maxIter = 200 ) |
Newton's root finding algorithm for scalar functions (secant method).
- Parameters
-
| xOld | initial guess |
| residual | Residual function |
| derivative | Derivative of the residual |
| tol | Relative shift tolerance |
| maxIter | Maximum number of iterations |