10#ifndef __Teko_TpetraInverseOpWrapper_hpp__
11#define __Teko_TpetraInverseOpWrapper_hpp__
13#include "Teko_TpetraOperatorWrapper.hpp"
14#include "Teko_ConfigDefs.hpp"
15#include "Tpetra_MultiVector.hpp"
18namespace TpetraHelpers {
22 TpetraInverseOpWrapper(
const RCP<const MappingStrategy>& forwardMaps)
23 : TpetraOperatorWrapper(forwardMaps) {}
25 TpetraInverseOpWrapper(
const RCP<
const Thyra::LinearOpBase<ST> >& thyraOp)
26 : TpetraOperatorWrapper(thyraOp) {}
29 virtual void apply(
const Tpetra::MultiVector<ST, LO, GO, NT>& X,
30 Tpetra::MultiVector<ST, LO, GO, NT>& Y,
31 Teuchos::ETransp mode = Teuchos::NO_TRANS,
32 ST alpha = Teuchos::ScalarTraits<ST>::one(),
33 ST beta = Teuchos::ScalarTraits<ST>::zero())
const;
36 virtual void applyInverse(
const Tpetra::MultiVector<ST, LO, GO, NT>& X,
37 Tpetra::MultiVector<ST, LO, GO, NT>& Y,
38 Teuchos::ETransp mode = Teuchos::NO_TRANS,
39 ST alpha = Teuchos::ScalarTraits<ST>::one(),
40 ST beta = Teuchos::ScalarTraits<ST>::zero())
const;
48 TpetraInverseOpWrapper() {}
Implements the Epetra_Operator interface with a Thyra LinearOperator. This enables the use of absrtac...