OGS  v6.4.0
NumLib::NonlinearSolverBase Class Referenceabstract

Detailed Description

Common interface for nonlinear solvers.

Definition at line 35 of file NonlinearSolver.h.

#include <NonlinearSolver.h>

Inheritance diagram for NumLib::NonlinearSolverBase:

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::PETScNonlinearSolver, NumLib::NonlinearSolver< NonlinearSolverTag::Picard >, and NumLib::NonlinearSolver< NonlinearSolverTag::Newton >.


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