PETScPreconditioner.h¶
Note
The documentation on this page was automatically extracted from the DOLFIN C++ code and may need to be edited or expanded.
-
class
PETScPreconditioner
¶ Parent class(es)
This class is a wrapper for configuring PETSc preconditioners. It does not own a preconditioner. It can take a PETScKrylovSolver and set the preconditioner type and parameters.
-
static void
set_type
(PETScKrylovSolver &solver, std::string type)¶ Select type by name
-
explicit
PETScPreconditioner
(std::string type = "default")¶ Create a particular preconditioner object
-
void
set
(PETScKrylovSolver &solver)¶ Set the preconditioner type and parameters
-
void
set_coordinates
(const std::vector<double> &x, std::size_t dim)¶ Set the coordinates of the operator (matrix) rows and geometric dimension d. This is can be used by required for certain preconditioners, e.g. ML. The input for this function can be generated using GenericDofMap::tabulate_all_dofs.
-
void
set_fieldsplit
(PETScKrylovSolver &solver, const std::vector<std::vector<dolfin::la_index>> &fields, const std::vector<std::string> &split_names)¶ Assign indices from fields as separate PETSc index sets, with given names @param solver (PETScKrylovSolver&) @param fields (std::vector<std::vector<dolfin::la_index>>&) @param split_names (std::vector<std::string>&)
-
std::string
str
(bool verbose) const¶ Return informal string representation (pretty-print)
-
static std::map<std::string, std::string>
preconditioners
()¶ Return a list of available preconditioners
-
static void