|
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 |
Public Types inherited from Xpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
| 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. | |
| const Teuchos::RCP< const Xpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | getDomainMap () const |
| Returns the Tpetra::Map object associated with the domain of this TpetraOperator. | |
| const 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 | |
Public Member Functions inherited from Xpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > | |
| virtual | ~Operator () |
| virtual void | removeEmptyProcessesInPlace (const RCP< const map_type > &) |
Public Member Functions inherited from Teuchos::Describable | |
| 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 () |
Public Member Functions inherited from Teuchos::LabeledObject | |
| LabeledObject () | |
| virtual | ~LabeledObject () |
| virtual void | setObjectLabel (const std::string &objectLabel) |
| virtual std::string | getObjectLabel () const |
Static Public Attributes inherited from Teuchos::Describable | |
| static const EVerbosityLevel | verbLevel_default |
Wraps an existing halfer precision Xpetra::Operator as a Xpetra::Operator.
Definition at line 70 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
| typedef Teuchos::ScalarTraits<Scalar>::halfPrecision Xpetra::TpetraHalfPrecisionOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::HalfScalar |
Definition at line 72 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inline |
Constructor.
Definition at line 78 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inlinevirtual |
Destructor.
Definition at line 89 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inline |
Definition at line 83 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 94 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 99 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 108 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 122 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inlinevirtual |
Compute a residual R = B - (*this) * X.
Implements Xpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Definition at line 125 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inline |
Direct access to the underlying TpetraOperator.
Definition at line 137 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
inline |
Definition at line 139 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
private |
Definition at line 144 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
private |
Definition at line 145 of file Xpetra_TpetraHalfPrecisionOperator.hpp.
|
private |
Definition at line 145 of file Xpetra_TpetraHalfPrecisionOperator.hpp.