42 #ifndef THYRA_EPETRA_OPERATOR_WRAPPER_HPP 43 #define THYRA_EPETRA_OPERATOR_WRAPPER_HPP 45 #include "Thyra_LinearOpBase.hpp" 46 #include "Epetra_Map.h" 47 #include "Epetra_Comm.h" 48 #include "Epetra_MultiVector.h" 49 #include "Epetra_Operator.h" 81 const Ptr<VectorBase<double> > &thyraVec)
const;
85 Epetra_MultiVector &x)
const;
100 int Apply(
const Epetra_MultiVector& X, Epetra_MultiVector& Y)
const ;
103 int ApplyInverse(
const Epetra_MultiVector& X, Epetra_MultiVector& Y)
const ;
132 RCP<const VectorSpaceBase<double> >
range_;
140 static RCP<const Epetra_Comm>
getEpetraComm(
const LinearOpBase<double>& thyraOp);
153 RCP<const LinearOpBase<double> >
154 makeEpetraWrapper(
const RCP<
const LinearOpBase<double> > &thyraOp);
160 #endif // THYRA_EPETRA_OPERATOR_WRAPPER_HPP bool UseTranspose() const
EpetraOperatorWrapper(const RCP< const LinearOpBase< double > > &thyraOp)
const Epetra_Comm & Comm() const
int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
static RCP< const Epetra_Comm > getEpetraComm(const LinearOpBase< double > &thyraOp)
void copyThyraIntoEpetra(const VectorBase< double > &thyraVec, Epetra_MultiVector &x) const
RCP< const LinearOpBase< double > > getThyraOp() const
int SetUseTranspose(bool UseTranspose_in)
const Epetra_Map & OperatorDomainMap() const
Implements the Epetra_Operator interface with a Thyra LinearOperator.
RCP< const VectorSpaceBase< double > > range_
RCP< const VectorSpaceBase< double > > domain_
RCP< const Epetra_Map > rangeMap_
void copyEpetraIntoThyra(const Epetra_MultiVector &x, const Ptr< VectorBase< double > > &thyraVec) const
const char * Label() const
RCP< const LinearOpBase< double > > thyraOp_
int ApplyInverse(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
RCP< const Epetra_Comm > comm_
const Epetra_Map & OperatorRangeMap() const
RCP< const Epetra_Map > domainMap_