OGS
NumLib::NonlinearSolverBase Class Referenceabstract

Detailed Description

Common interface for nonlinear solvers.

Definition at line 36 of file NonlinearSolver.h.

#include <NonlinearSolver.h>

Inheritance diagram for NumLib::NonlinearSolverBase:
[legend]

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, std::vector< GlobalVector * > const &)> const &postIterationCallback, int const process_id)=0
 
virtual ~NonlinearSolverBase ()=default
 

Constructor & Destructor Documentation

◆ ~NonlinearSolverBase()

virtual NumLib::NonlinearSolverBase::~NonlinearSolverBase ( )
virtualdefault

Member Function Documentation

◆ calculateNonEquilibriumInitialResiduum()

virtual void NumLib::NonlinearSolverBase::calculateNonEquilibriumInitialResiduum ( std::vector< GlobalVector * > const & x,
std::vector< GlobalVector * > const & x_prev,
int const process_id )
pure virtual

◆ solve()

virtual NonlinearSolverStatus NumLib::NonlinearSolverBase::solve ( std::vector< GlobalVector * > & x,
std::vector< GlobalVector * > const & x_prev,
std::function< void(int, std::vector< GlobalVector * > const &)> const & postIterationCallback,
int const process_id )
pure virtual

Assemble and solve the equation system.

Parameters
xin: the initial guess, out: the solution.
x_prevprevious time step solution.
postIterationCallbackcalled after each iteration if set.
process_idusually used in staggered schemes.
Return values
trueif the equation system could be solved
falseotherwise

Implemented in NumLib::NonlinearSolver< NonlinearSolverTag::Newton >, NumLib::NonlinearSolver< NonlinearSolverTag::Picard >, and NumLib::PETScNonlinearSolver.


The documentation for this class was generated from the following file: