Tpetra::CrsMatrixMultiplyOp< OpScalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps > Class Template Reference

A class for wrapping a CrsMatrix multiply in a Operator. More...

#include <Tpetra_CrsMatrixMultiplyOp_decl.hpp>

Inheritance diagram for Tpetra::CrsMatrixMultiplyOp< OpScalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

Constructor/Destructor Methods

 CrsMatrixMultiplyOp (const Teuchos::RCP< const CrsMatrix< MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps > > &A)
 Constructor.
virtual ~CrsMatrixMultiplyOp ()
 Destructor.
Methods implementing Operator

void apply (const MultiVector< OpScalar, LocalOrdinal, GlobalOrdinal, Node > &X, MultiVector< OpScalar, LocalOrdinal, GlobalOrdinal, Node > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, OpScalar alpha=Teuchos::ScalarTraits< OpScalar >::one(), OpScalar beta=Teuchos::ScalarTraits< OpScalar >::zero()) const
bool hasTransposeApply () const
const Teuchos::RCP< const Map
< LocalOrdinal, GlobalOrdinal,
Node > > & 
getDomainMap () const
 Returns the Map associated with the domain of this operator. This is the range map of the underlying CrsMatrix.
const Teuchos::RCP< const Map
< LocalOrdinal, GlobalOrdinal,
Node > > & 
getRangeMap () const

Related Functions

(Note that these are not member functions.)



template<class OpScalar , class MatScalar , class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
Teuchos::RCP
< CrsMatrixMultiplyOp
< OpScalar, MatScalar,
LocalOrdinal, GlobalOrdinal,
Node, LocalMatOps > > 
createCrsMatrixMultiplyOp (const Teuchos::RCP< const CrsMatrix< MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps > > &A)
 Non-member function to create CrsMatrixMultiplyOp.

Detailed Description

template<class OpScalar, class MatScalar = OpScalar, class LocalOrdinal = int, class GlobalOrdinal = LocalOrdinal, class Node = Kokkos::DefaultNode::DefaultNodeType, class LocalMatOps = typename Kokkos::DefaultKernels<MatScalar,LocalOrdinal,Node>::SparseOps>
class Tpetra::CrsMatrixMultiplyOp< OpScalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >

A class for wrapping a CrsMatrix multiply in a Operator.

Definition at line 55 of file Tpetra_CrsMatrixMultiplyOp_decl.hpp.


Constructor & Destructor Documentation

template<class OpScalar , class MatScalar , class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
Tpetra::CrsMatrixMultiplyOp< OpScalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::CrsMatrixMultiplyOp ( const Teuchos::RCP< const CrsMatrix< MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps > > &  A  )  [inline]

Constructor.

Definition at line 46 of file Tpetra_CrsMatrixMultiplyOp_def.hpp.

template<class OpScalar , class MatScalar , class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
Tpetra::CrsMatrixMultiplyOp< OpScalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::~CrsMatrixMultiplyOp (  )  [inline, virtual]

Destructor.

Definition at line 56 of file Tpetra_CrsMatrixMultiplyOp_def.hpp.


Member Function Documentation

template<class OpScalar , class MatScalar , class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
void Tpetra::CrsMatrixMultiplyOp< OpScalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::apply ( const MultiVector< OpScalar, LocalOrdinal, GlobalOrdinal, Node > &  X,
MultiVector< OpScalar, LocalOrdinal, GlobalOrdinal, Node > &  Y,
Teuchos::ETransp  mode = Teuchos::NO_TRANS,
OpScalar  alpha = Teuchos::ScalarTraits<OpScalar>::one(),
OpScalar  beta = Teuchos::ScalarTraits<OpScalar>::zero() 
) const [inline, virtual]

Computes this matrix-vector multilication Y = A X. This calls multiply<OpScalar,OpScalar>() on the underlying CrsMatrix object.

Implements Tpetra::Operator< OpScalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 61 of file Tpetra_CrsMatrixMultiplyOp_def.hpp.

template<class OpScalar , class MatScalar , class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
bool Tpetra::CrsMatrixMultiplyOp< OpScalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::hasTransposeApply (  )  const [inline, virtual]

Indicates whether this operator supports inverting the adjoint operator. This is true.

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

Definition at line 348 of file Tpetra_CrsMatrixMultiplyOp_def.hpp.

template<class OpScalar , class MatScalar , class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & Tpetra::CrsMatrixMultiplyOp< OpScalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getDomainMap (  )  const [inline, virtual]

Returns the Map associated with the domain of this operator. This is the range map of the underlying CrsMatrix.

Implements Tpetra::Operator< OpScalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 354 of file Tpetra_CrsMatrixMultiplyOp_def.hpp.

template<class OpScalar , class MatScalar , class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > & Tpetra::CrsMatrixMultiplyOp< OpScalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps >::getRangeMap (  )  const [inline, virtual]

Returns the Map associated with the domain of this operator. This is the domain map of the underlying CrsMatrix.

Implements Tpetra::Operator< OpScalar, LocalOrdinal, GlobalOrdinal, Node >.

Definition at line 360 of file Tpetra_CrsMatrixMultiplyOp_def.hpp.


Friends And Related Function Documentation

template<class OpScalar , class MatScalar , class LocalOrdinal , class GlobalOrdinal , class Node , class LocalMatOps >
Teuchos::RCP< CrsMatrixMultiplyOp< OpScalar, MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps > > createCrsMatrixMultiplyOp ( const Teuchos::RCP< const CrsMatrix< MatScalar, LocalOrdinal, GlobalOrdinal, Node, LocalMatOps > > &  A  )  [related]

Non-member function to create CrsMatrixMultiplyOp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Wed Apr 13 10:21:41 2011 for Tpetra Matrix/Vector Services by  doxygen 1.6.3