DUNE-FEM (unstable)
Dune::Fem::EisenstatWalkerStrategy Class Reference
Adaptive tolerance selection for linear solver. More...
#include <dune/fem/solver/newtoninverseoperator.hh>
Public Member Functions | |
| EisenstatWalkerStrategy (const double newtonTolerance, const double etaMax=0.99, const double gamma=0.1) | |
| void | setTolerance (const double newtonTolerance) |
| void | setEtaMax (const double etaMax) |
| void | setGamma (const double gamma) |
Detailed Description
Adaptive tolerance selection for linear solver.
- Note
- Prevents over-solving linear systems far away from solution. Source: "Globally Convergent Inexact Newton Methods", Stanley C. Eisenstat and Homer F. Walker, https://doi.org/10.1137/0804022.
- etaMax and gamma are configurable via the constructor, via setEtaMax()/setGamma() setters, or via the parameter system: fem.solver.nonlinear.eisenstatwalker.etamax (default: 0.99) fem.solver.nonlinear.eisenstatwalker.gamma (default: 0.1) For degenerate problems consider etaMax~0.1-0.3, gamma~0.5-0.9.
Constructor & Destructor Documentation
◆ EisenstatWalkerStrategy()
|
inline |
constructor
- Parameters
-
[in] newtonTolerance absolute tolerance of the Newton method [in] etaMax maximum forcing term (default: 0.99) [in] gamma safeguard parameter (default: 0.1)
Member Function Documentation
◆ setEtaMax()
|
inline |
Set the maximum allowed forcing term. Reduce from 0.99 towards e.g. 0.1 to make EW less aggressive.
◆ setGamma()
|
inline |
Set the safeguard / superlinear-convergence decay parameter. Increase from 0.1 towards e.g. 0.9 for more conservative behaviour.
◆ setTolerance()
|
inline |
Set the Newton (nonlinear) tolerance used in the lower bound of eta.
The documentation for this class was generated from the following file:
- dune/fem/solver/newtoninverseoperator.hh
|
Legal Statements / Impressum |
Hosted by TU Dresden & Uni Heidelberg |
generated with Hugo v0.111.3
(Apr 21, 12:01, 2026)