Public Member Functions | List of all members
BiCGSTABSolver Class Reference

BiCGSTAB based solver implementation. More...

#include <bicgstab_solver.hpp>

Inheritance diagram for BiCGSTABSolver:
Solver

Public Member Functions

 BiCGSTABSolver (double eps=1.0e-6, uint32_t imax=10000, double newton_Reps=1.0e-5, double newton_dXeps=1.0e-6, uint32_t newton_imax=10, bool gnewton=false)
 Constructor.
 ~BiCGSTABSolver ()
 Destructor.
virtual void solve (const Problem &p, Vector &X)
 Solve problem p defined in geometry g. Initial guess and solution are in vector X.
virtual void reset (void)
 Reset solver.
void set_gnewton (bool enable)
 Enable/disable globally convergent Newton-Raphson.
void set_eps (double eps)
 Sets the accuracy request for BiCGSTAB solver.
void set_imax (uint32_t imax)
 Sets maximum iteration count for BiCGSTAB solver.
void set_newton_imax (uint32_t newton_imax)
 Sets maximum iteration count for Newton-Raphson steps.
void set_newton_residual_eps (double newton_Reps)
 Sets the accuracy request for Newton-Raphson residual.
void set_newton_step_eps (double newton_dXeps)
 Sets the accuracy request for Newton-Raphson step size.
- Public Member Functions inherited from Solver
virtual ~Solver ()
 Virtual destructor.
virtual void solve (const class Problem &p, Vector &X)=0
 Solve problem p. Initial guess and solution are in vector X.

Detailed Description

BiCGSTAB based solver implementation.

An implementation of virtual class Solver using ILU0 preconditioner and bicgstab() solver function. Linear and nonlinear solvers.

Constructor & Destructor Documentation

BiCGSTABSolver::BiCGSTABSolver ( double  eps = 1.0e-6,
uint32_t  imax = 10000,
double  newton_Reps = 1.0e-5,
double  newton_dXeps = 1.0e-6,
uint32_t  newton_imax = 10,
bool  gnewton = false 
)

Constructor.

BiCGSTABSolver::~BiCGSTABSolver ( )
inline

Destructor.

Member Function Documentation

virtual void BiCGSTABSolver::reset ( void  )
virtual

Reset solver.

This is a signal from the problem that the problem has changed and internal caches (if they exist) in the solver should be resetted.

Implements Solver.

void BiCGSTABSolver::set_eps ( double  eps)
inline

Sets the accuracy request for BiCGSTAB solver.

void BiCGSTABSolver::set_gnewton ( bool  enable)
inline

Enable/disable globally convergent Newton-Raphson.

void BiCGSTABSolver::set_imax ( uint32_t  imax)
inline

Sets maximum iteration count for BiCGSTAB solver.

void BiCGSTABSolver::set_newton_imax ( uint32_t  newton_imax)
inline

Sets maximum iteration count for Newton-Raphson steps.

void BiCGSTABSolver::set_newton_residual_eps ( double  newton_Reps)
inline

Sets the accuracy request for Newton-Raphson residual.

void BiCGSTABSolver::set_newton_step_eps ( double  newton_dXeps)
inline

Sets the accuracy request for Newton-Raphson step size.

virtual void BiCGSTABSolver::solve ( const Problem p,
Vector X 
)
virtual

Solve problem p defined in geometry g. Initial guess and solution are in vector X.


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