All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | List of all members
Xpetra::TpetraOperator< double, int, int, EpetraNode > Class Template Reference

#include <Xpetra_TpetraOperator.hpp>

Inheritance diagram for Xpetra::TpetraOperator< double, int, int, EpetraNode >:
Xpetra::Operator< double, int, int, EpetraNode > Teuchos::Describable Teuchos::LabeledObject

Public Types

typedef double Scalar
 
typedef int GlobalOrdinal
 
typedef int LocalOrdinal
 
typedef EpetraNode Node
 
- Public Types inherited from Xpetra::Operator< double, int, int, EpetraNode >
typedef double scalar_type
 The type of the entries of the input and output multivectors. More...
 
typedef int local_ordinal_type
 The local index type. More...
 
typedef int global_ordinal_type
 The global index type. More...
 
typedef EpetraNode node_type
 The Kokkos Node type. More...
 
virtual Teuchos::RCP< const
Xpetra::Map< LocalOrdinal,
GlobalOrdinal, Node > > 
getDomainMap () const
 The Map associated with the domain of this operator, which must be compatible with X.getMap(). More...
 
virtual Teuchos::RCP< const
Xpetra::Map< LocalOrdinal,
GlobalOrdinal, Node > > 
getRangeMap () const
 The Map associated with the range of this operator, which must be compatible with Y.getMap(). More...
 
virtual void apply (const Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, Xpetra::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
 Computes the operator-multivector application. More...
 
virtual bool hasTransposeApply () const
 Whether this operator supports applying the transpose or conjugate transpose. More...
 

Overridden from Teuchos::Describable

std::string description () const
 A simple one-line description of this object. More...
 
void describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel=Teuchos::Describable::verbLevel_default) const
 Print the object with the given verbosity level to a FancyOStream. More...
 

Xpetra specific

 TpetraOperator (const Teuchos::RCP< Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &op)
 TpetraOperator constructor to wrap a Tpetra::Operator object. More...
 
RCP< Tpetra::Operator< Scalar,
LocalOrdinal, GlobalOrdinal,
Node > > 
getOperator ()
 Gets the operator out. More...
 

Additional Inherited Members

- Public Member Functions inherited from Xpetra::Operator< double, int, int, EpetraNode >
virtual ~Operator ()
 
virtual void removeEmptyProcessesInPlace (const RCP< const Map > &)
 
virtual void apply (const MultiVector &X, MultiVector &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, doublealpha=Teuchos::ScalarTraits< double >::one(), doublebeta=Teuchos::ScalarTraits< double >::zero()) const =0
 Computes the operator-multivector application. More...
 
- Public Member Functions inherited from Teuchos::Describable
void describe (std::ostream &out, const EVerbosityLevel verbLevel=verbLevel_default) const
 
virtual ~Describable ()
 
 LabeledObject ()
 
virtual ~LabeledObject ()
 
virtual void setObjectLabel (const std::string &objectLabel)
 
virtual std::string getObjectLabel () const
 
DescribableStreamManipulatorState describe (const Describable &describable, const EVerbosityLevel verbLevel=Describable::verbLevel_default)
 
std::ostream & operator<< (std::ostream &os, const DescribableStreamManipulatorState &d)
 
- Static Public Attributes inherited from Teuchos::Describable
static const EVerbosityLevel verbLevel_default
 

Detailed Description

template<>
class Xpetra::TpetraOperator< double, int, int, EpetraNode >

Definition at line 140 of file Xpetra_TpetraOperator.hpp.

Member Typedef Documentation

typedef double Xpetra::TpetraOperator< double, int, int, EpetraNode >::Scalar

Definition at line 143 of file Xpetra_TpetraOperator.hpp.

typedef int Xpetra::TpetraOperator< double, int, int, EpetraNode >::GlobalOrdinal

Definition at line 144 of file Xpetra_TpetraOperator.hpp.

typedef int Xpetra::TpetraOperator< double, int, int, EpetraNode >::LocalOrdinal

Definition at line 145 of file Xpetra_TpetraOperator.hpp.

typedef EpetraNode Xpetra::TpetraOperator< double, int, int, EpetraNode >::Node

Definition at line 146 of file Xpetra_TpetraOperator.hpp.

Constructor & Destructor Documentation

Xpetra::TpetraOperator< double, int, int, EpetraNode >::TpetraOperator ( const Teuchos::RCP< Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &  op)
inline

TpetraOperator constructor to wrap a Tpetra::Operator object.

Definition at line 193 of file Xpetra_TpetraOperator.hpp.

Member Function Documentation

virtual Teuchos::RCP<const Xpetra::Map<LocalOrdinal,GlobalOrdinal,Node> > Xpetra::TpetraOperator< double, int, int, EpetraNode >::getDomainMap ( ) const
inlinevirtual

The Map associated with the domain of this operator, which must be compatible with X.getMap().

Implements Xpetra::Operator< double, int, int, EpetraNode >.

Definition at line 151 of file Xpetra_TpetraOperator.hpp.

virtual Teuchos::RCP<const Xpetra::Map<LocalOrdinal,GlobalOrdinal,Node> > Xpetra::TpetraOperator< double, int, int, EpetraNode >::getRangeMap ( ) const
inlinevirtual

The Map associated with the range of this operator, which must be compatible with Y.getMap().

Implements Xpetra::Operator< double, int, int, EpetraNode >.

Definition at line 156 of file Xpetra_TpetraOperator.hpp.

virtual void Xpetra::TpetraOperator< double, int, int, EpetraNode >::apply ( const Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &  X,
Xpetra::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
inlinevirtual

Computes the operator-multivector application.

Loosely, performs $Y = \alpha \cdot A^{\textrm{mode}} \cdot X + \beta \cdot Y$. However, the details of operation vary according to the values of alpha and beta. Specifically

  • if beta == 0, apply() must overwrite Y, so that any values in Y (including NaNs) are ignored.
  • if alpha == 0, apply() may short-circuit the operator, so that any values in X (including NaNs) are ignored.

Definition at line 167 of file Xpetra_TpetraOperator.hpp.

virtual bool Xpetra::TpetraOperator< double, int, int, EpetraNode >::hasTransposeApply ( ) const
inlinevirtual

Whether this operator supports applying the transpose or conjugate transpose.

Reimplemented from Xpetra::Operator< double, int, int, EpetraNode >.

Definition at line 174 of file Xpetra_TpetraOperator.hpp.

std::string Xpetra::TpetraOperator< double, int, int, EpetraNode >::description ( ) const
inlinevirtual

A simple one-line description of this object.

Reimplemented from Teuchos::Describable.

Definition at line 182 of file Xpetra_TpetraOperator.hpp.

void Xpetra::TpetraOperator< double, int, int, EpetraNode >::describe ( Teuchos::FancyOStream out,
const Teuchos::EVerbosityLevel  verbLevel = Teuchos::Describable::verbLevel_default 
) const
inlinevirtual

Print the object with the given verbosity level to a FancyOStream.

Reimplemented from Teuchos::Describable.

Definition at line 185 of file Xpetra_TpetraOperator.hpp.

RCP<Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node> > Xpetra::TpetraOperator< double, int, int, EpetraNode >::getOperator ( )
inline

Gets the operator out.

Definition at line 196 of file Xpetra_TpetraOperator.hpp.


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