DataTransferKit - Multiphysics Solution Transfer Services
2.0
|
Prolongation operator for projecting a vector into the extended spline space. More...
#include <DTK_SplineProlongationOperator.hpp>
Inherits Operator< double, int, SupportId >.
Public Member Functions | |
SplineProlongationOperator (const int offset, const Teuchos::RCP< const Tpetra::Map< int, SupportId >> &domain_map) | |
Constructor. More... | |
Teuchos::RCP< const Tpetra::Map< int, SupportId > > | getDomainMap () const override |
Teuchos::RCP< const Tpetra::Map< int, SupportId > > | getRangeMap () const override |
void | apply (const Tpetra::MultiVector< double, int, SupportId > &X, Tpetra::MultiVector< double, int, SupportId > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, double alpha=Teuchos::ScalarTraits< double >::one(), double beta=Teuchos::ScalarTraits< double >::zero()) const override |
Computes the operator-multivector application. More... | |
bool | hasTransposeApply () const override |
Whether this operator supports applying the transpose or conjugate transpose. More... | |
Prolongation operator for projecting a vector into the extended spline space.
Definition at line 62 of file DTK_SplineProlongationOperator.hpp.
DataTransferKit::SplineProlongationOperator::SplineProlongationOperator | ( | const int | offset, |
const Teuchos::RCP< const Tpetra::Map< int, SupportId >> & | domain_map | ||
) |
Constructor.
Definition at line 52 of file DTK_SplineProlongationOperator.cpp.
|
inlineoverride |
The Map associated with the domain of this operator, which must be compatible with X.getMap().
Definition at line 74 of file DTK_SplineProlongationOperator.hpp.
|
inlineoverride |
The Map associated with the range of this operator, which must be compatible with Y.getMap().
Definition at line 81 of file DTK_SplineProlongationOperator.hpp.
|
override |
Computes the operator-multivector application.
Loosely, performs . 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 86 of file DTK_SplineProlongationOperator.cpp.
|
inlineoverride |
Whether this operator supports applying the transpose or conjugate transpose.
Definition at line 104 of file DTK_SplineProlongationOperator.hpp.