ThunderEgg
1.0.0
|
BiCGStab iterative solver. More...
#include <BiCGStab.h>
Public Member Functions | |
BiCGStab< D > * | clone () const override |
Clone this solver. More... | |
void | setMaxIterations (int max_iterations_in) |
Set the maximum number of iterations. More... | |
int | getMaxIterations () const |
Get the maximum number of iterations. More... | |
void | setTolerance (double tolerance_in) |
Set the stopping tolerance. More... | |
double | getTolerance () const |
Get the stopping tolerance. More... | |
void | setTimer (std::shared_ptr< Timer > timer_in) |
Set the Timer object. More... | |
std::shared_ptr< Timer > | getTimer () const |
Get the Timer object. More... | |
int | solve (const Operator< D > &A, Vector< D > &x, const Vector< D > &b, const Operator< D > *Mr=nullptr, bool output=false, std::ostream &os=std::cout) const override |
Perform an iterative solve. More... | |
Public Member Functions inherited from ThunderEgg::Iterative::Solver< D > | |
virtual | ~Solver () |
Destroy the Solver object. | |
BiCGStab iterative solver.
D | the number of Cartesian dimensions |
|
inlineoverridevirtual |
Clone this solver.
Implements ThunderEgg::Iterative::Solver< D >.
|
inline |
Get the maximum number of iterations.
Default is 1000
|
inline |
|
inline |
Get the stopping tolerance.
Default is 1e-12
|
inline |
Set the maximum number of iterations.
Default is 1000
max_iterations_in | the maximum number of iterations |
|
inline |
|
inline |
Set the stopping tolerance.
Default is 1e-12
tolerance_in | the stopping tolerance |
|
inlineoverridevirtual |
Perform an iterative solve.
A | the matrix |
x | the initial LHS guess. |
b | the RHS vector. |
Mr | the right preconditioner. Set to nullptr if there is no right preconditioner. |
output | print output to the provided stream |
os | the stream to output to |
Implements ThunderEgg::Iterative::Solver< D >.