Ifpack2 Templated Preconditioning Package
Version 1.0
|
Ifpack2 bordered operator. More...
#include <Ifpack2_BorderedOperator_decl.hpp>
Inherits Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node >.
Public Member Functions | |
BorderedOperator (const Teuchos::RCP< const Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &A) | |
Constructor with Tpetra::Operator input. More... | |
virtual | ~BorderedOperator () |
Destructor. More... | |
Implementation of Tpetra::Operator. | |
virtual Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | getDomainMap () const |
The domain Map of this operator. It must be compatible with X.getMap(). More... | |
virtual Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | getRangeMap () const |
The range Map of this operator. It must be compatible with Y.getMap(). More... | |
bool | hasTransposeApply () const |
Whether this operator can apply the transpose or conjugate transpose. More... | |
void | apply (const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, Tpetra::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 |
Apply the bordered operator. More... | |
Ifpack2 bordered operator.
Ifpack2::BorderedOperator is a concrete class extending Tpetra::Operator and defining an interface.
This class extends Tpetra::Operator, providing the additional methods:
The bordered operator is applied by apply() (which returns if isComputed() is false). Each time compute() is called, the object re-computes the actual values of the bordered operator.
Title of Method Description
Ifpack2::BorderedOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::BorderedOperator | ( | const Teuchos::RCP< const Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > & | A | ) |
Constructor with Tpetra::Operator input.
|
inlinevirtual |
Destructor.
|
virtual |
The domain Map of this operator. It must be compatible with X.getMap().
|
virtual |
The range Map of this operator. It must be compatible with Y.getMap().
bool Ifpack2::BorderedOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::hasTransposeApply | ( | ) | const |
Whether this operator can apply the transpose or conjugate transpose.
void Ifpack2::BorderedOperator< Scalar, LocalOrdinal, GlobalOrdinal, Node >::apply | ( | const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & | X, |
Tpetra::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 |
Apply the bordered operator.