Class xlifepp::IterativeSolver#

class IterativeSolver#

Inheritence diagram for xlifepp::IterativeSolver:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "2" [label="xlifepp::BicgSolver" tooltip="xlifepp::BicgSolver"] "3" [label="xlifepp::BicgStabSolver" tooltip="xlifepp::BicgStabSolver"] "4" [label="xlifepp::CgSolver" tooltip="xlifepp::CgSolver"] "5" [label="xlifepp::CgsSolver" tooltip="xlifepp::CgsSolver"] "6" [label="xlifepp::GmresSolver" tooltip="xlifepp::GmresSolver"] "1" [label="xlifepp::IterativeSolver" tooltip="xlifepp::IterativeSolver" fillcolor="#BFBFBF"] "7" [label="xlifepp::QmrSolver" tooltip="xlifepp::QmrSolver"] "8" [label="xlifepp::SorSolver" tooltip="xlifepp::SorSolver"] "9" [label="xlifepp::SsorSolver" tooltip="xlifepp::SsorSolver"] "2" -> "1" [dir=forward tooltip="public-inheritance"] "3" -> "1" [dir=forward tooltip="public-inheritance"] "4" -> "1" [dir=forward tooltip="public-inheritance"] "5" -> "1" [dir=forward tooltip="public-inheritance"] "6" -> "1" [dir=forward tooltip="public-inheritance"] "7" -> "1" [dir=forward tooltip="public-inheritance"] "8" -> "1" [dir=forward tooltip="public-inheritance"] "9" -> "1" [dir=forward tooltip="public-inheritance"] }

Collaboration diagram for xlifepp::IterativeSolver:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "2" [label="xlifepp::Vector< real_t >" tooltip="xlifepp::Vector< real_t >"] "4" [label="std::vector< T >" tooltip="std::vector< T >"] "6" [label="std::vector< K >" tooltip="std::vector< K >"] "3" [label="std::vector< real_t >" tooltip="std::vector< real_t >"] "1" [label="xlifepp::IterativeSolver" tooltip="xlifepp::IterativeSolver" fillcolor="#BFBFBF"] "5" [label="xlifepp::Vector< K >" tooltip="xlifepp::Vector< K >"] "2" -> "3" [dir=forward tooltip="public-inheritance"] "2" -> "5" [dir=forward tooltip="template-instance"] "6" -> "4" [dir=forward tooltip="template-instance"] "3" -> "4" [dir=forward tooltip="template-instance"] "1" -> "2" [dir=forward tooltip="usage"] "5" -> "6" [dir=forward tooltip="public-inheritance"] }

Base class of other Solver classes.

Subclassed by xlifepp::BicgSolver, xlifepp::BicgStabSolver, xlifepp::CgSolver, xlifepp::CgsSolver, xlifepp::GmresSolver, xlifepp::QmrSolver, xlifepp::SorSolver, xlifepp::SsorSolver

Public Functions

IterativeSolver(const string_t &name, IterativeSolverType ist, number_t maxOfIt, real_t eps, number_t vb = theVerboseLevel, bool prec = true)#

Full constructor.

IterativeSolver(const string_t &name, number_t maxOfIt, real_t eps, number_t vb = theVerboseLevel, bool prec = true)#

Full constructor without type.

IterativeSolver(const string_t &name, number_t vb = theVerboseLevel)#

Constructor by name.

Default constructor by name.

IterativeSolver(IterativeSolverType ist, number_t maxOfIt, real_t eps, number_t vb = theVerboseLevel, bool prec = true)#

Full constructor without name.

IterativeSolver(IterativeSolverType ist, number_t vb = theVerboseLevel)#

Constructor by type.

Default constructor by type.

virtual ~IterativeSolver()#

Destructor.

inline string_t name()#

Iterative solver name for documentation purposes.

inline number_t nbIterations()#

returns the number of iterations

void printOutput(const size_t nbRows) const#

print utility

Print out the final result of the solver.

void resetSolver()#

Reset Solver.

Reset Solver to its initial status.

inline real_t residue() const#

returns the residue

Public Static Attributes

static number_t theNumberOfIterations = 0#

number of iterations (global scope)

to store the number of iterations of iterative solvers

static real_t theResidue = 0.#

residue (global scope)

to store the residue of iterative solvers