MueLu  Version of the Day
MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

Wraps an existing MueLu::Hierarchy as a Tpetra::Operator. More...

#include <MueLu_TpetraOperator_fwd.hpp>

Inheritance diagram for MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >:
Tpetra::Classes::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > MueLu::AMGXOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >

Public Member Functions

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...
 
template<class NewNode >
Teuchos::RCP< TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, NewNode > > clone (const RCP< NewNode > &new_node) const
 
- Public Member Functions inherited from Tpetra::Classes::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >
virtual void apply (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, Scalar alpha=Teuchos::ScalarTraits< Scalar >::one(), Scalar beta=Teuchos::ScalarTraits< Scalar >::zero()) const=0
 
virtual void apply (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, Scalar alpha=Teuchos::ScalarTraits< Scalar >::one(), Scalar beta=Teuchos::ScalarTraits< Scalar >::zero()) const=0
 

Protected Member Functions

 TpetraOperator ()
 

Private Attributes

RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node > > Hierarchy_
 

Constructor/Destructor

 TpetraOperator (const RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &H)
 Constructor. More...
 
virtual ~TpetraOperator ()
 Destructor. More...
 

MueLu specific

RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node > > GetHierarchy () const
 Direct access to the underlying MueLu::Hierarchy. More...
 

Additional Inherited Members

- Public Types inherited from Tpetra::Classes::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >
typedef Scalar scalar_type
 
typedef LocalOrdinal local_ordinal_type
 
typedef GlobalOrdinal global_ordinal_type
 
typedef Node node_type
 
typedef Scalar scalar_type
 
typedef LocalOrdinal local_ordinal_type
 
typedef GlobalOrdinal global_ordinal_type
 
typedef Node node_type
 

Detailed Description

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::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >

Wraps an existing MueLu::Hierarchy as a Tpetra::Operator.

Definition at line 54 of file MueLu_TpetraOperator_fwd.hpp.

Constructor & Destructor Documentation

◆ TpetraOperator() [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>
MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraOperator ( )
inlineprotected

Definition at line 67 of file MueLu_TpetraOperator_decl.hpp.

◆ TpetraOperator() [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::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::TpetraOperator ( const RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  H)
inline

Constructor.

Definition at line 74 of file MueLu_TpetraOperator_decl.hpp.

◆ ~TpetraOperator()

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>
virtual MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::~TpetraOperator ( )
inlinevirtual

Destructor.

Definition at line 77 of file MueLu_TpetraOperator_decl.hpp.

Member Function Documentation

◆ getDomainMap()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getDomainMap ( ) const
virtual

Returns the Tpetra::Map object associated with the domain of this operator.

Implements Tpetra::Classes::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 69 of file MueLu_TpetraOperator_def.hpp.

◆ getRangeMap()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getRangeMap ( ) const
virtual

Returns the Tpetra::Map object associated with the range of this operator.

Implements Tpetra::Classes::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 84 of file MueLu_TpetraOperator_def.hpp.

◆ apply()

template<class Scalar, class LocalOrdinal, class GlobalOrdinal, class Node>
void MueLu::TpetraOperator< 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-TpetraMultiVector of dimension NumVectors containing result.

Definition at line 99 of file MueLu_TpetraOperator_def.hpp.

◆ hasTransposeApply()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
bool MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::hasTransposeApply ( ) const
virtual

Indicates whether this operator supports applying the adjoint operator.

Reimplemented from Tpetra::Classes::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 121 of file MueLu_TpetraOperator_def.hpp.

◆ clone()

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>
template<class NewNode >
Teuchos::RCP< TpetraOperator<Scalar, LocalOrdinal, GlobalOrdinal, NewNode> > MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::clone ( const RCP< NewNode > &  new_node) const
inline

Definition at line 103 of file MueLu_TpetraOperator_decl.hpp.

◆ GetHierarchy()

template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node > > MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::GetHierarchy ( ) const

Direct access to the underlying MueLu::Hierarchy.

Definition at line 127 of file MueLu_TpetraOperator_def.hpp.

Member Data Documentation

◆ 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>
RCP<MueLu::Hierarchy<Scalar, LocalOrdinal, GlobalOrdinal, Node> > MueLu::TpetraOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Hierarchy_
private

Definition at line 116 of file MueLu_TpetraOperator_decl.hpp.


The documentation for this class was generated from the following files: