![]() |
OGS
|
Common interface for nonlinear solvers.
Definition at line 36 of file NonlinearSolver.h.
#include <NonlinearSolver.h>
Public Member Functions | |
| virtual void | calculateNonEquilibriumInitialResiduum (std::vector< GlobalVector * > const &x, std::vector< GlobalVector * > const &x_prev, int const process_id)=0 |
| virtual NonlinearSolverStatus | solve (std::vector< GlobalVector * > &x, std::vector< GlobalVector * > const &x_prev, std::function< void(int, bool, std::vector< GlobalVector * > const &)> const &postIterationCallback, int const process_id)=0 |
| virtual | ~NonlinearSolverBase ()=default |
|
virtualdefault |
|
pure virtual |
|
pure virtual |
Assemble and solve the equation system.
| x | in: the initial guess, out: the solution. |
| x_prev | previous time step solution. |
| postIterationCallback | called after each iteration if set. |
| process_id | usually used in staggered schemes. |
| true | if the equation system could be solved |
| false | otherwise |
Implemented in NumLib::NonlinearSolver< NonlinearSolverTag::Newton >, NumLib::NonlinearSolver< NonlinearSolverTag::Picard >, and NumLib::PETScNonlinearSolver.