Public Types | |
| using | BaseSolverType = KernelSolverT<TagT> |
| using | AlgebraType = AlgebraT |
| using | MatrixType = typename AlgebraType::MatrixType |
| using | VectorType = typename AlgebraType::VectorType |
| using | ValueType = typename AlgebraType::ValueType |
| using | DefMatrixTagType = Alien::BackEnd::tag::simplecsr |
| using | SolverMatrixType = typename AlgebraTraits<AMGSolverTagT>::matrix_type |
| using | SolverVectorType = typename AlgebraTraits<AMGSolverTagT>::vector_type |
| using | SolverAlgebraType = typename AlgebraTraits<AMGSolverTagT>::algebra_type |
| using | AMGSolverType = KernelSolverT<AMGSolverTagT> |
| using | MatrixConvType = MatrixConverterT<TagT,AMGSolverTagT> |
| using | DefMatrixConvType = MatrixConverterT<DefMatrixTagType,AMGSolverTagT> |
| using | VectorConvFromType = VectorConverterT<TagT,AMGSolverTagT> |
| using | VectorConvToType = VectorConverterT<AMGSolverTagT,TagT> |
| Public Types inherited from Alien::KernelSolverT< TagT > | |
| using | MatrixType |
| The type of the solver. | |
| using | VectorType |
| using | AlgebraType |
Public Member Functions | |
| KernelAMGSolverT (AlgebraT &alg, AMGSolverType *solver) | |
| KernelAMGSolverT (AlgebraT &alg, Alien::ILinearSolver *solver) | |
| void | init () |
| void | start () |
| void | init (MatrixType const &A) |
| Initialize the linear solver. | |
| void | end () |
| bool | solve (const VectorType &b, VectorType &x) |
| Public Member Functions inherited from Alien::KernelSolverT< TagT > | |
| virtual void | init (MatrixType const &A)=0 |
| Initialize the linear solver. | |
| virtual bool | solve (const VectorType &b, VectorType &x)=0 |
| Solve the linear system A * x = b. | |
Private Attributes | |
| AlgebraType & | m_algebra |
| AMGSolverType * | m_amg_solver = nullptr |
| MatrixType const * | m_matrix = nullptr |
| std::unique_ptr< SolverMatrixType > | m_solver_matrix |
| std::unique_ptr< SolverVectorType > | m_solver_b |
| std::unique_ptr< SolverVectorType > | m_solver_x |
| MatrixConvType * | m_matrix_converter = nullptr |
| DefMatrixConvType * | m_def_matrix_converter = nullptr |
| VectorConvFromType * | m_vector_converter_from = nullptr |
| VectorConvToType * | m_vector_converter_to = nullptr |
Definition at line 91 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::AlgebraType = AlgebraT |
Definition at line 97 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::AMGSolverType = KernelSolverT<AMGSolverTagT> |
Definition at line 106 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::BaseSolverType = KernelSolverT<TagT> |
Definition at line 96 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::DefMatrixConvType = MatrixConverterT<DefMatrixTagType,AMGSolverTagT> |
Definition at line 109 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::DefMatrixTagType = Alien::BackEnd::tag::simplecsr |
Definition at line 101 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::MatrixConvType = MatrixConverterT<TagT,AMGSolverTagT> |
Definition at line 108 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::MatrixType = typename AlgebraType::MatrixType |
Definition at line 98 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::SolverAlgebraType = typename AlgebraTraits<AMGSolverTagT>::algebra_type |
Definition at line 105 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::SolverMatrixType = typename AlgebraTraits<AMGSolverTagT>::matrix_type |
Definition at line 103 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::SolverVectorType = typename AlgebraTraits<AMGSolverTagT>::vector_type |
Definition at line 104 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::ValueType = typename AlgebraType::ValueType |
Definition at line 100 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::VectorConvFromType = VectorConverterT<TagT,AMGSolverTagT> |
Definition at line 110 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::VectorConvToType = VectorConverterT<AMGSolverTagT,TagT> |
Definition at line 111 of file AMGSolverT.h.
| using Alien::KernelAMGSolverT< TagT, AlgebraT, AMGSolverTagT >::VectorType = typename AlgebraType::VectorType |
Definition at line 99 of file AMGSolverT.h.
|
inline |
Definition at line 114 of file AMGSolverT.h.
|
inline |
Definition at line 136 of file AMGSolverT.h.
|
inlinevirtual |
Definition at line 164 of file AMGSolverT.h.
|
inlinevirtual |
Implements Alien::KernelSolverT< TagT >.
Definition at line 197 of file AMGSolverT.h.
|
inlinevirtual |
Implements Alien::KernelSolverT< TagT >.
Definition at line 169 of file AMGSolverT.h.
|
inline |
Initialize the linear solver.
Definition at line 179 of file AMGSolverT.h.
|
inline |
Definition at line 206 of file AMGSolverT.h.
|
inlinevirtual |
Implements Alien::KernelSolverT< TagT >.
Definition at line 174 of file AMGSolverT.h.
|
private |
Definition at line 228 of file AMGSolverT.h.
|
private |
Definition at line 229 of file AMGSolverT.h.
|
private |
Definition at line 235 of file AMGSolverT.h.
|
private |
Definition at line 230 of file AMGSolverT.h.
|
private |
Definition at line 234 of file AMGSolverT.h.
|
private |
Definition at line 232 of file AMGSolverT.h.
|
private |
Definition at line 231 of file AMGSolverT.h.
|
private |
Definition at line 233 of file AMGSolverT.h.
|
private |
Definition at line 236 of file AMGSolverT.h.
|
private |
Definition at line 237 of file AMGSolverT.h.