|
Tpetra parallel linear algebra
Version of the Day
|
Go to the documentation of this file.
42 #ifndef TPETRA_APPLYOP_HPP
43 #define TPETRA_APPLYOP_HPP
45 #include "Tpetra_ConfigDefs.hpp"
46 #include "Tpetra_Operator.hpp"
47 #include "Tpetra_MultiVector.hpp"
77 template <
class Scalar,
class OperatorType>
80 typename OperatorType::local_ordinal_type,
81 typename OperatorType::global_ordinal_type,
82 typename OperatorType::node_type> {
124 Teuchos::ETransp mode = Teuchos::NO_TRANS,
125 Scalar alpha = Teuchos::ScalarTraits<Scalar>::one(),
126 Scalar beta = Teuchos::ScalarTraits<Scalar>::zero())
const
128 operator_->template applyTempl<Scalar,Scalar> (X, Y, mode, alpha, beta);
142 Teuchos::RCP<const Tpetra::Map<local_ordinal_type,global_ordinal_type,node_type> >
148 Teuchos::RCP<const Tpetra::Map<local_ordinal_type,global_ordinal_type,node_type> >
162 #endif // TPETRA_APPLYOP_HPP
void apply(const Tpetra::MultiVector< Scalar, local_ordinal_type, global_ordinal_type, node_type > &X, Tpetra::MultiVector< Scalar, local_ordinal_type, global_ordinal_type, node_type > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, Scalar alpha=Teuchos::ScalarTraits< Scalar >::one(), Scalar beta=Teuchos::ScalarTraits< Scalar >::zero()) const
Compute Y = beta*Y + alpha*Op(A)*X, where Op(A) is either A, , or .
OperatorType::global_ordinal_type global_ordinal_type
The type of global indices in the input OperatorType.
One or more distributed dense vectors.
Abstract interface for operators (e.g., matrices and preconditioners).
bool hasTransposeApply() const
Whether this Operator's apply() method can apply the transpose or conjugate transpose.
Teuchos::RCP< const OperatorType > operator_
The underlying Operator object.
ApplyOp(const Teuchos::RCP< const OperatorType > &op)
Constructor.
virtual ~ApplyOp()
Destructor.
OperatorType::local_ordinal_type local_ordinal_type
The type of local indices in the input OperatorType.
Teuchos::RCP< const Tpetra::Map< local_ordinal_type, global_ordinal_type, node_type > > getDomainMap() const
The domain Map of this Operator.
OperatorType::scalar_type scalar_type
The type of the entries of the input OperatorType.
Teuchos::RCP< const Tpetra::Map< local_ordinal_type, global_ordinal_type, node_type > > getRangeMap() const
The range Map of this Operator.
A class for wrapping an Operator apply in a Operator.
Namespace Tpetra contains the class and methods constituting the Tpetra library.
OperatorType::node_type node_type
The type of the Kokkos Node used by the input OperatorType.