BiCGSTAB based solver implementation.
More...
#include <bicgstab_solver.hpp>
|
| 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.
|
|
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.
|
|
BiCGSTAB based solver implementation.
An implementation of virtual class Solver using ILU0 preconditioner and bicgstab() solver function. Linear and nonlinear solvers.
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 |
|
) |
| |
BiCGSTABSolver::~BiCGSTABSolver |
( |
| ) |
|
|
inline |
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: