Xpetra Version of the Day
|
Wraps an existing halfer precision Xpetra::Operator as a Xpetra::Operator. More...
#include <Xpetra_TpetraHalfPrecisionOperator.hpp>
Public Types | |
typedef Teuchos::ScalarTraits< Scalar >::halfPrecision | HalfScalar |
![]() | |
typedef Scalar | scalar_type |
The type of the entries of the input and output multivectors. | |
typedef LocalOrdinal | local_ordinal_type |
The local index type. | |
typedef GlobalOrdinal | global_ordinal_type |
The global index type. | |
typedef Node | node_type |
The Kokkos Node type. | |
Xpetra specific | |
RCP< Xpetra::Operator< HalfScalar, LocalOrdinal, GlobalOrdinal, Node > > | Op_ |
RCP< Xpetra::MultiVector< HalfScalar, LocalOrdinal, GlobalOrdinal, Node > > | X_ |
RCP< Xpetra::MultiVector< HalfScalar, LocalOrdinal, GlobalOrdinal, Node > > | Y_ |
RCP< Xpetra::Operator< HalfScalar, LocalOrdinal, GlobalOrdinal, Node > > | GetHalfPrecisionOperator () const |
Direct access to the underlying TpetraOperator. | |
void | SetHalfPrecisionOperator (const RCP< Xpetra::Operator< HalfScalar, LocalOrdinal, GlobalOrdinal, Node > > &op) |
Constructor/Destructor | |
TpetraHalfPrecisionOperator (const RCP< Xpetra::Operator< HalfScalar, LocalOrdinal, GlobalOrdinal, Node > > &op) | |
Constructor. | |
void | Allocate (int numVecs) |
virtual | ~TpetraHalfPrecisionOperator () |
Destructor. | |
Teuchos::RCP< const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | getDomainMap () const |
Returns the Tpetra::Map object associated with the domain of this TpetraOperator. | |
Teuchos::RCP< const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | getRangeMap () const |
Returns the Tpetra::Map object associated with the range of this TpetraOperator. | |
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 >::one()) const |
Returns in Y the result of a Xpetra::TpetraOperator applied to a Xpetra::MultiVector X. | |
bool | hasTransposeApply () const |
Indicates whether this TpetraOperator supports applying the adjoint TpetraOperator. | |
void | residual (const Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, const Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &B, Xpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &R) const |
Compute a residual R = B - (*this) * X. | |
Additional Inherited Members | |
![]() | |
virtual | ~Operator () |
virtual void | removeEmptyProcessesInPlace (const RCP< const Map > &) |
![]() | |
virtual std::string | description () const |
virtual void | describe (FancyOStream &out, const EVerbosityLevel verbLevel=verbLevel_default) const |
void | describe (std::ostream &out, const EVerbosityLevel verbLevel=verbLevel_default) const |
virtual | ~Describable () |
DescribableStreamManipulatorState | describe (const Describable &describable, const EVerbosityLevel verbLevel=Describable::verbLevel_default) |
std::ostream & | operator<< (std::ostream &os, const DescribableStreamManipulatorState &d) |
virtual std::string | description () const |
virtual void | describe (FancyOStream &out, const EVerbosityLevel verbLevel=verbLevel_default) const |
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 |
![]() | |
static const EVerbosityLevel | verbLevel_default |
Wraps an existing halfer precision Xpetra::Operator as a Xpetra::Operator.
Definition at line 106 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
typedef Teuchos::ScalarTraits<Scalar>::halfPrecision Xpetra::TpetraHalfPrecisionOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::HalfScalar |
Definition at line 108 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inline |
Constructor.
Definition at line 114 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inlinevirtual |
Destructor.
Definition at line 124 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inline |
Definition at line 118 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inlinevirtual |
Returns the Tpetra::Map object associated with the domain of this TpetraOperator.
Implements Xpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 129 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inlinevirtual |
Returns the Tpetra::Map object associated with the range of this TpetraOperator.
Implements Xpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 134 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inlinevirtual |
Returns in Y the result of a Xpetra::TpetraOperator applied to a Xpetra::MultiVector X.
[in] | X | - Xpetra::MultiVector of dimension NumVectors to multiply with matrix. |
[out] | Y | - Xpetra::MultiVector of dimension NumVectors containing result. |
Implements Xpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 143 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inlinevirtual |
Indicates whether this TpetraOperator supports applying the adjoint TpetraOperator.
Reimplemented from Xpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 157 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inlinevirtual |
Compute a residual R = B - (*this) * X.
Implements Xpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 160 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inline |
Direct access to the underlying TpetraOperator.
Definition at line 172 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inline |
Definition at line 174 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
private |
Definition at line 179 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
private |
Definition at line 180 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
private |
Definition at line 180 of file Xpetra_TpetraHalfPrecisionOperator.hpp.