MueLu  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Belos::MueLuOp< Scalar, LocalOrdinal, GlobalOrdinal, Node > Class Template Reference

MueLuOp derives from Belos::OperatorT and administrates a MueLu::Hierarchy. It implements the apply call which represents the effect of the multigrid preconditioner on a given vector. Note, in contrast to Belos::XpetraOp this operator has the multigrid hierarchy. More...

#include <BelosMueLuAdapter.hpp>

Inheritance diagram for Belos::MueLuOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >:

Private Attributes

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

Constructor/Destructor

 MueLuOp (const RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &H)
 Default constructor. More...
 
 MueLuOp (const RCP< MueLu::AMGXOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &A)
 
virtual ~MueLuOp ()
 Destructor. More...
 

Operator application method

void Apply (const Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &x, Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &y, ETrans trans=NOTRANS) const
 This routine takes the Xpetra::MultiVector x and applies the operator to it resulting in the Xpetra::MultiVector y, which is returned. More...
 

Detailed Description

template<class Scalar, class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
class Belos::MueLuOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >

MueLuOp derives from Belos::OperatorT and administrates a MueLu::Hierarchy. It implements the apply call which represents the effect of the multigrid preconditioner on a given vector. Note, in contrast to Belos::XpetraOp this operator has the multigrid hierarchy.

The Belos::OperatorT class is a generalization of the Belos::Operator<> class, which deals with any kind of vector (not only Belos::MultiVec as the Belos::Operator<> interface does).

This is the general implementation for Tpetra only.

Definition at line 65 of file BelosMueLuAdapter.hpp.

Constructor & Destructor Documentation

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
Belos::MueLuOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >::MueLuOp ( const RCP< MueLu::Hierarchy< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  H)
inline

Default constructor.

Definition at line 76 of file BelosMueLuAdapter.hpp.

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
Belos::MueLuOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >::MueLuOp ( const RCP< MueLu::AMGXOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  A)
inline

Definition at line 79 of file BelosMueLuAdapter.hpp.

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
virtual Belos::MueLuOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >::~MueLuOp ( )
inlinevirtual

Destructor.

Definition at line 83 of file BelosMueLuAdapter.hpp.

Member Function Documentation

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
void Belos::MueLuOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Apply ( const Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &  x,
Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &  y,
ETrans  trans = NOTRANS 
) const
inline

This routine takes the Xpetra::MultiVector x and applies the operator to it resulting in the Xpetra::MultiVector y, which is returned.

Note
It is expected that any problem with applying this operator to x will be indicated by an std::exception being thrown.

Definition at line 94 of file BelosMueLuAdapter.hpp.

Member Data Documentation

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
RCP<MueLu::Hierarchy<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Belos::MueLuOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >::Hierarchy_
private

Definition at line 144 of file BelosMueLuAdapter.hpp.

template<class Scalar , class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = Tpetra::KokkosClassic::DefaultNode::DefaultNodeType>
RCP<MueLu::AMGXOperator<Scalar, LocalOrdinal, GlobalOrdinal, Node> > Belos::MueLuOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >::AMGX_
private

Definition at line 146 of file BelosMueLuAdapter.hpp.


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