Iterative solver wrapper for distributed linear systems. More...
Classes | |
| struct | params |
Public Types | |
| typedef IterativeSolver::BackendType | backend_type |
| using | BackendType = backend_type |
| typedef DistributedMatrix< typename Precond::BackendType > | matrix |
| typedef backend_type::value_type | value_type |
| typedef backend_type::params | backend_params |
| typedef BuiltinBackend< value_type >::matrix | build_matrix |
| typedef math::scalar_of< value_type >::type | scalar_type |
Public Member Functions | |
| template<class Matrix> | |
| DistributedPreconditionedSolver (mpi_communicator comm, const Matrix &A, const params &prm=params(), const backend_params &bprm=backend_params()) | |
| DistributedPreconditionedSolver (mpi_communicator comm, std::shared_ptr< matrix > A, const params &prm=params(), const backend_params &bprm=backend_params()) | |
| template<class Backend> | |
| DistributedPreconditionedSolver (mpi_communicator comm, std::shared_ptr< DistributedMatrix< Backend > > A, const params &prm=params(), const backend_params &bprm=backend_params()) | |
| DistributedPreconditionedSolver (mpi_communicator comm, std::shared_ptr< build_matrix > A, const params &prm=params(), const backend_params &bprm=backend_params()) | |
| template<class Matrix, class Vec1, class Vec2> | |
| SolverResult | operator() (const Matrix &A, const Vec1 &rhs, Vec2 &&x) const |
| template<class Vec1, class Vec2> | |
| SolverResult | operator() (const Vec1 &rhs, Vec2 &&x) const |
| template<class Vec1, class Vec2> | |
| void | apply (const Vec1 &rhs, Vec2 &&x) const |
| const Precond & | precond () const |
| Precond & | precond () |
| const IterativeSolver & | solver () const |
| std::shared_ptr< matrix > | system_matrix_ptr () const |
| const matrix & | system_matrix () const |
| void | get_params (Alina::PropertyTree &p) const |
| size_t | size () const |
Public Attributes | |
| struct Arcane::Alina::DistributedPreconditionedSolver::params | prm |
Private Attributes | |
| size_t | n |
| Precond | P |
| IterativeSolver | S |
Friends | |
| std::ostream & | operator<< (std::ostream &os, const DistributedPreconditionedSolver &M) |
Additional Inherited Members | |
| Protected Member Functions inherited from Arcane::Alina::detail::non_copyable | |
| non_copyable (non_copyable const &)=delete | |
| void | operator= (non_copyable const &x)=delete |
Iterative solver wrapper for distributed linear systems.
Definition at line 44 of file DistributedPreconditionedSolver.h.
| typedef backend_type::params Arcane::Alina::DistributedPreconditionedSolver< Precond, IterativeSolver >::backend_params |
Definition at line 58 of file DistributedPreconditionedSolver.h.
| typedef IterativeSolver::BackendType Arcane::Alina::DistributedPreconditionedSolver< Precond, IterativeSolver >::backend_type |
Definition at line 54 of file DistributedPreconditionedSolver.h.
| using Arcane::Alina::DistributedPreconditionedSolver< Precond, IterativeSolver >::BackendType = backend_type |
Definition at line 55 of file DistributedPreconditionedSolver.h.
| typedef BuiltinBackend<value_type>::matrix Arcane::Alina::DistributedPreconditionedSolver< Precond, IterativeSolver >::build_matrix |
Definition at line 59 of file DistributedPreconditionedSolver.h.
| typedef DistributedMatrix<typename Precond::BackendType> Arcane::Alina::DistributedPreconditionedSolver< Precond, IterativeSolver >::matrix |
Definition at line 56 of file DistributedPreconditionedSolver.h.
| typedef math::scalar_of<value_type>::type Arcane::Alina::DistributedPreconditionedSolver< Precond, IterativeSolver >::scalar_type |
Definition at line 60 of file DistributedPreconditionedSolver.h.
| typedef backend_type::value_type Arcane::Alina::DistributedPreconditionedSolver< Precond, IterativeSolver >::value_type |
Definition at line 57 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 84 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 93 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 105 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 117 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 139 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 170 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 127 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 133 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 150 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 145 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 175 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 155 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 165 of file DistributedPreconditionedSolver.h.
|
inline |
Definition at line 160 of file DistributedPreconditionedSolver.h.
|
friend |
Definition at line 180 of file DistributedPreconditionedSolver.h.
|
private |
Definition at line 188 of file DistributedPreconditionedSolver.h.
|
private |
Definition at line 190 of file DistributedPreconditionedSolver.h.
|
private |
Definition at line 191 of file DistributedPreconditionedSolver.h.