Wraps an existing MueLu::Hierarchy as a Tpetra::Operator, with an optional two-level correction. Intended to be used with MueLu::ShiftedLaplacian.
More...
#include <MueLu_ShiftedLaplacianOperator_decl.hpp>
|
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | getDomainMap () const |
| Returns the Tpetra::Map object associated with the domain of this operator. More...
|
|
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | getRangeMap () const |
| Returns the Tpetra::Map object associated with the range of this operator. More...
|
|
void | apply (const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, Scalar alpha=Teuchos::ScalarTraits< Scalar >::one(), Scalar beta=Teuchos::ScalarTraits< Scalar >::one()) const |
| Returns in Y the result of a Tpetra::Operator applied to a Tpetra::MultiVector X. More...
|
|
bool | hasTransposeApply () const |
| Indicates whether this operator supports applying the adjoint operator. More...
|
|
|
typedef Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > | Matrix |
|
typedef Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > | CrsMatrix |
|
typedef Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > | MV |
|
typedef Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > | OP |
|
typedef MueLu::Utilities< Scalar, LocalOrdinal, GlobalOrdinal, Node > | MUtils |
|
|
RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | Hierarchy_ |
|
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | R_ |
|
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | P_ |
|
RCP< Xpetra::Matrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | A_ |
|
RCP< Tpetra::CrsMatrix< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | Ac_ |
|
RCP< Teuchos::ParameterList > | BelosList_ |
|
int | cycles_ |
|
int | iters_ |
|
int | option_ |
|
double | tol_ |
|
|
| ShiftedLaplacianOperator (const RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &H) |
| Constructor. More...
|
|
| ShiftedLaplacianOperator (const RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &H, const RCP< Matrix > A, int cycles, int iters, int option, double tol) |
| Auxiliary Constructor. More...
|
|
virtual | ~ShiftedLaplacianOperator () |
| Destructor. More...
|
|
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
class MueLu::ShiftedLaplacianOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >
Wraps an existing MueLu::Hierarchy as a Tpetra::Operator, with an optional two-level correction. Intended to be used with MueLu::ShiftedLaplacian.
Definition at line 69 of file MueLu_ShiftedLaplacianOperator_decl.hpp.
◆ Matrix
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ CrsMatrix
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ MV
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ OP
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ MUtils
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ ShiftedLaplacianOperator() [1/2]
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ ShiftedLaplacianOperator() [2/2]
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
MueLu::ShiftedLaplacianOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::ShiftedLaplacianOperator |
( |
const RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node > > & |
H, |
|
|
const RCP< Matrix > |
A, |
|
|
int |
cycles, |
|
|
int |
iters, |
|
|
int |
option, |
|
|
double |
tol |
|
) |
| |
|
inline |
◆ ~ShiftedLaplacianOperator()
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ getDomainMap()
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > MueLu::ShiftedLaplacianOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getDomainMap |
( |
| ) |
const |
◆ getRangeMap()
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > MueLu::ShiftedLaplacianOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getRangeMap |
( |
| ) |
const |
◆ apply()
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
void MueLu::ShiftedLaplacianOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::apply |
( |
const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & |
X, |
|
|
Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & |
Y, |
|
|
Teuchos::ETransp |
mode = Teuchos::NO_TRANS , |
|
|
Scalar |
alpha = Teuchos::ScalarTraits<Scalar>::one() , |
|
|
Scalar |
beta = Teuchos::ScalarTraits<Scalar>::one() |
|
) |
| const |
Returns in Y the result of a Tpetra::Operator applied to a Tpetra::MultiVector X.
- Parameters
-
[in] | X | - Tpetra::MultiVector of dimension NumVectors to multiply with matrix. |
[out] | Y | -Tpetra::MultiVector of dimension NumVectors containing result. |
Definition at line 115 of file MueLu_ShiftedLaplacianOperator_def.hpp.
◆ hasTransposeApply()
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
◆ Hierarchy_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ R_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ P_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ A_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ Ac_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ BelosList_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ cycles_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ iters_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ option_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ tol_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
The documentation for this class was generated from the following files: