BelosKrylovSolver.h

Note

The documentation on this page was automatically extracted from the DOLFIN C++ code and may need to be edited or expanded.

class BelosKrylovSolver

Parent class(es)

This class implements Krylov methods for linear systems of the form Ax = b. It is a wrapper for the Belos iterative solver from Trilinos

BelosKrylovSolver(std::string method = "default", std::string preconditioner = "default")

Create Krylov solver for a particular method and names preconditioner

BelosKrylovSolver(std::string method, std::shared_ptr<TrilinosPreconditioner> preconditioner)

Create Krylov solver for a particular method and TrilinosPreconditioner

void set_operator(std::shared_ptr<const GenericLinearOperator> A)

Set operator (matrix)

void set_operators(std::shared_ptr<const GenericLinearOperator> A, std::shared_ptr<const GenericLinearOperator> P)

Set operator (matrix) and preconditioner matrix

const TpetraMatrix &get_operator() const

Get operator (matrix)

std::size_t solve(GenericVector &x, const GenericVector &b)

Solve linear system Ax = b and return number of iterations

std::size_t solve(const GenericLinearOperator &A, GenericVector &x, const GenericVector &b)

Solve linear system Ax = b and return number of iterations

std::string str(bool verbose) const

Return informal string representation (pretty-print)

static std::map<std::string, std::string> methods()

Return a list of available solver methods

static std::map<std::string, std::string> preconditioners()

Return a list of available preconditioners

static Parameters default_parameters()

Default parameter values

std::string parameter_type() const

Return parameter type: “krylov_solver” or “lu_solver”