TrilinosPreconditioner.h

Note

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

class TrilinosPreconditioner

Parent class(es)

This class is a wrapper for configuring Epetra preconditioners. It does not own a preconditioner. It can take a EpetraKrylovSolver and set the preconditioner type and parameters.

explicit TrilinosPreconditioner(std::string method = "default")

Create Krylov solver for a particular method and preconditioner

void set(BelosLinearProblem &problem, const EpetraMatrix &P)

Set the precondtioner and matrix used in preconditioner

void set_parameters(std::shared_ptr<const Teuchos::ParameterList> list)

Set the Trilonos preconditioner parameters list

void set_parameters(Teuchos::RCP<Teuchos::ParameterList> list)

Set the Trilonos preconditioner parameters list (for use from Python)

void set_nullspace(const VectorSpaceBasis &null_space)

Set basis for the null space of the operator. Setting this is critical to the performance of some preconditioners, e.g. ML. The vectors spanning the null space are copied.

std::string name() const

Return preconditioner name

std::string str(bool verbose) const

Return informal string representation (pretty-print)

static std::vector<std::pair<std::string, std::string>> preconditioners()

Return a list of available preconditioners

static Parameters default_parameters()

Default parameter values

void set_ml(BelosLinearProblem &problem, const Epetra_RowMatrix &P)

Setup the ML precondtioner