21 #ifndef AMR_PRECONDITIONER_H
22 #define AMR_PRECONDITIONER_H
40 template <
class Matrix,
class Level>
53 virtual void create(
const Teuchos::RCP<Matrix>& A, Level* level_p =
nullptr) = 0;
58 virtual Teuchos::RCP<operator_t>
get() = 0;
Some AMR types used a lot.
Tpetra::Operator< scalar_t, local_ordinal_t, global_ordinal_t, node_t > operator_t
@ GS
Gauss-Seidel point relaxation.
@ JACOBI
Jacobi point relaxation.
@ SA
smoothed aggregation multigrid
@ BLOCK_JACOBI
Jacobi block relaxation.
@ BLOCK_GS
Gauss-Seidel block relaxation.
amr::operator_t operator_t
virtual Teuchos::RCP< operator_t> get()=0
virtual void create(const Teuchos::RCP< Matrix > &A, Level *level_p=nullptr)=0