solve.h¶
Note
The documentation on this page was automatically extracted from the DOLFIN C++ code and may need to be edited or expanded.
-
std::size_t
solve
(const GenericLinearOperator &A, GenericVector &x, const GenericVector &b, std::string method = "lu", std::string preconditioner = "none")¶ Solve linear system Ax = b
-
void
list_linear_algebra_backends
()¶ List available linear algebra backends
-
void
list_linear_solver_methods
()¶ List available solver methods for current linear algebra backend
-
void
list_lu_solver_methods
()¶ List available LU methods for current linear algebra backend
-
void
list_krylov_solver_methods
()¶ List available Krylov methods for current linear algebra backend
-
void
list_krylov_solver_preconditioners
()¶ List available preconditioners for current linear algebra backend
-
bool
has_lu_solver_method
(std::string method)¶ Return true if LU method for the current linear algebra backend is available
-
bool
has_krylov_solver_method
(std::string method)¶ Return true if Krylov method for the current linear algebra backend is available
-
bool
has_krylov_solver_preconditioner
(std::string preconditioner)¶ Return true if Preconditioner for the current linear algebra backend is available
-
std::map<std::string, std::string>
linear_algebra_backends
()¶ Return available linear algebra backends
-
std::map<std::string, std::string>
linear_solver_methods
()¶ Return a list of available solver methods for current linear algebra backend
-
std::map<std::string, std::string>
lu_solver_methods
()¶ Return a list of available LU methods for current linear algebra backend
-
std::map<std::string, std::string>
krylov_solver_methods
()¶ Return a list of available Krylov methods for current linear algebra backend
-
std::map<std::string, std::string>
krylov_solver_preconditioners
()¶ Return a list of available preconditioners for current linear algebra backend
-
double
residual
(const GenericLinearOperator &A, const GenericVector &x, const GenericVector &b)¶ Compute residual ||Ax - b||
-
double
norm
(const GenericVector &x, std::string norm_type = "l2")¶ Compute norm of vector. Valid norm types are “l2”, “l1” and “linf”.
-
double
normalize
(GenericVector &x, std::string normalization_type = "average")¶ Normalize vector according to given normalization type