2 #ifndef PACKAGES_MUELU_ADAPTERS_AZTECOO_MUELU_AZTECEPETRAOPERATOR_HPP_ 3 #define PACKAGES_MUELU_ADAPTERS_AZTECOO_MUELU_AZTECEPETRAOPERATOR_HPP_ 5 #include <Epetra_Operator.h> 7 #include "Xpetra_Operator.hpp" 9 #if defined(HAVE_MUELU_SERIAL) and defined(HAVE_MUELU_EPETRA) 19 class AztecEpetraOperator :
public Epetra_Operator {
25 typedef Xpetra::Map<LO,GO,NO> Map;
26 typedef Xpetra::EpetraMapT<GO,NO> EpetraMap;
27 typedef Xpetra::Operator<SC,LO,GO,NO> Operator;
35 AztecEpetraOperator(
const Teuchos::RCP<Operator>& Op) : xOp_(Op) { }
38 virtual ~AztecEpetraOperator() { }
42 int SetUseTranspose(
bool UseTransposeBool) {
return -1; }
56 int Apply(
const Epetra_MultiVector& X, Epetra_MultiVector& Y)
const {
return -1; }
70 int ApplyInverse(
const Epetra_MultiVector& X, Epetra_MultiVector& Y)
const;
78 double NormInf()
const {
return 0; }
85 const char * Label()
const {
return "MueLu::AztecEpetraOperator"; }
88 bool UseTranspose()
const {
return false; }
91 bool HasNormInf()
const {
return 0; }
94 const Epetra_Comm & Comm()
const;
97 const Epetra_Map & OperatorDomainMap()
const;
100 const Epetra_Map & OperatorRangeMap()
const;
108 Teuchos::RCP<Operator> GetOperator()
const {
return xOp_; }
115 Teuchos::RCP<Operator> xOp_;
Namespace for MueLu classes and methods.
Kokkos::Compat::KokkosSerialWrapperNode EpetraNode