#include <source/solvers/nonlinear/NonlinearSolverStrategy.h>
Inheritance diagram for SAMRAI::solv::NonlinearSolverStrategy< DIM >:
Public Member Functions | |
NonlinearSolverStrategy () | |
virtual | ~NonlinearSolverStrategy () |
virtual void | initialize (const tbox::Pointer< SAMRAIVectorReal< DIM, double > > solution)=0 |
virtual int | solve ()=0 |
The interface follows the Strategy design pattern. The methods declared in the interface are provided in a concrete solver derived from this base class.
SAMRAI::solv::NonlinearSolverStrategy< DIM >::NonlinearSolverStrategy | ( | ) |
Empty constructor for algs::NonlinearSolverStrategy.
SAMRAI::solv::NonlinearSolverStrategy< DIM >::~NonlinearSolverStrategy | ( | ) | [virtual] |
Empty constructor for algs::NonlinearSolverStrategy.
virtual void SAMRAI::solv::NonlinearSolverStrategy< DIM >::initialize | ( | const tbox::Pointer< SAMRAIVectorReal< DIM, double > > | solution | ) | [pure virtual] |
Initialize the solver state. The vector argument represents the solution of the nonlinear system. In general, this routine must be called before the solve() routine is invoked.
Implemented in SAMRAI::solv::SNES_SAMRAIContext< DIM >, and SAMRAI::solv::KINSOL_SAMRAIContext< DIM >.
virtual int SAMRAI::solv::NonlinearSolverStrategy< DIM >::solve | ( | ) | [pure virtual] |
Solve the nonlinear problem and return the integer code defined by the particular nonlinear solver package in use (e.g., indicating success or failure of solution process). In general, the initialize() routine must be called before this solve function.
Implemented in SAMRAI::solv::SNES_SAMRAIContext< DIM >, and SAMRAI::solv::KINSOL_SAMRAIContext< DIM >.