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