Xpetra
Version of the Day
|
#include <Xpetra_EpetraOperator.hpp>
Private Types | |
typedef double | Scalar |
typedef int | LocalOrdinal |
typedef EpetraGlobalOrdinal | GlobalOrdinal |
Private Attributes | |
RCP< Epetra_Operator > | op_ |
The Tpetra::Operator which this class wraps. 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 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 |
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 | |
EpetraOperator (const Teuchos::RCP< Epetra_Operator > &op) | |
EpetraOperator constructor to wrap a Epetra_Operator object. More... | |
void | residual (const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, const MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &B, MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &R) const |
Compute a residual R = B - (*this) * X. More... | |
Additional Inherited Members | |
Public Types inherited from Xpetra::Operator< double, int, EpetraGlobalOrdinal, Node > | |
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 EpetraGlobalOrdinal | global_ordinal_type |
The global index type. More... | |
typedef Node | node_type |
The Kokkos Node type. More... | |
Public Member Functions inherited from Xpetra::Operator< double, int, EpetraGlobalOrdinal, Node > | |
virtual | ~Operator () |
virtual void | removeEmptyProcessesInPlace (const RCP< const Map > &) |
Definition at line 65 of file Xpetra_EpetraOperator.hpp.
|
private |
Definition at line 67 of file Xpetra_EpetraOperator.hpp.
|
private |
Definition at line 68 of file Xpetra_EpetraOperator.hpp.
|
private |
Definition at line 69 of file Xpetra_EpetraOperator.hpp.
|
inline |
EpetraOperator constructor to wrap a Epetra_Operator object.
Definition at line 157 of file Xpetra_EpetraOperator.hpp.
|
inlinevirtual |
The Map associated with the domain of this operator, which must be compatible with X.getMap().
Implements Xpetra::Operator< double, int, EpetraGlobalOrdinal, Node >.
Definition at line 76 of file Xpetra_EpetraOperator.hpp.
|
inlinevirtual |
The Map associated with the range of this operator, which must be compatible with Y.getMap().
Implements Xpetra::Operator< double, int, EpetraGlobalOrdinal, Node >.
Definition at line 84 of file Xpetra_EpetraOperator.hpp.
|
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
beta == 0
, apply() must overwrite Y
, so that any values in Y
(including NaNs) are ignored.alpha == 0
, apply() may short-circuit the operator, so that any values in X
(including NaNs) are ignored. Implements Xpetra::Operator< double, int, EpetraGlobalOrdinal, Node >.
Definition at line 98 of file Xpetra_EpetraOperator.hpp.
|
inlinevirtual |
Whether this operator supports applying the transpose or conjugate transpose.
Reimplemented from Xpetra::Operator< double, int, EpetraGlobalOrdinal, Node >.
Definition at line 128 of file Xpetra_EpetraOperator.hpp.
|
inline |
A simple one-line description of this object.
Definition at line 142 of file Xpetra_EpetraOperator.hpp.
|
inline |
Print the object with the given verbosity level to a FancyOStream.
Definition at line 145 of file Xpetra_EpetraOperator.hpp.
|
inlinevirtual |
Compute a residual R = B - (*this) * X.
Implements Xpetra::Operator< double, int, EpetraGlobalOrdinal, Node >.
Definition at line 160 of file Xpetra_EpetraOperator.hpp.
|
private |
The Tpetra::Operator which this class wraps.
Definition at line 172 of file Xpetra_EpetraOperator.hpp.