Thyra Package Browser (Single Doxygen Collection) Version of the Day
Loading...
Searching...
No Matches
Related Functions | List of all members
Thyra::EpetraOperatorWrapper Class Reference

Implements the Epetra_Operator interface with a Thyra LinearOperator. More...

#include <Thyra_EpetraOperatorWrapper.hpp>

Inherits Epetra_Operator.

Related Functions

(Note that these are not member functions.)

RCP< const LinearOpBase< double > > makeEpetraWrapper (const RCP< const LinearOpBase< double > > &thyraOp)
 Wrap a Thyra operator in the Epetra_Operator interface, and then wrap it again in a Thyra operator interface.
 

Overridden from Epetra_Operator

bool useTranspose_
 
RCP< const LinearOpBase< double > > thyraOp_
 
RCP< const VectorSpaceBase< double > > range_
 
RCP< const VectorSpaceBase< double > > domain_
 
RCP< const Epetra_Comm > comm_
 
RCP< const Epetra_Map > rangeMap_
 
RCP< const Epetra_Map > domainMap_
 
std::string label_
 
int SetUseTranspose (bool UseTranspose_in)
 
int Apply (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
 
int ApplyInverse (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
 
double NormInf () const
 
const char * Label () const
 
bool UseTranspose () const
 
bool HasNormInf () const
 
const Epetra_Comm & Comm () const
 
const Epetra_Map & OperatorDomainMap () const
 
const Epetra_Map & OperatorRangeMap () const
 
static RCP< const Epetra_Comm > getEpetraComm (const LinearOpBase< double > &thyraOp)
 

Constructor, utilties.

 EpetraOperatorWrapper (const RCP< const LinearOpBase< double > > &thyraOp)
 
RCP< const LinearOpBase< double > > getThyraOp () const
 
void copyEpetraIntoThyra (const Epetra_MultiVector &x, const Ptr< VectorBase< double > > &thyraVec) const
 
void copyThyraIntoEpetra (const VectorBase< double > &thyraVec, Epetra_MultiVector &x) const
 

Detailed Description

Implements the Epetra_Operator interface with a Thyra LinearOperator.

This enables the use of absrtact Thyra operators in AztecOO as preconditioners and operators, without being rendered into concrete Epetra matrices.

Definition at line 63 of file Thyra_EpetraOperatorWrapper.hpp.

Constructor & Destructor Documentation

◆ EpetraOperatorWrapper()

Thyra::EpetraOperatorWrapper::EpetraOperatorWrapper ( const RCP< const LinearOpBase< double > > &  thyraOp)

Definition at line 68 of file Thyra_EpetraOperatorWrapper.cpp.

Member Function Documentation

◆ getThyraOp()

RCP< const LinearOpBase< double > > Thyra::EpetraOperatorWrapper::getThyraOp ( ) const
inline

Definition at line 74 of file Thyra_EpetraOperatorWrapper.hpp.

References thyraOp_.

◆ copyEpetraIntoThyra()

void Thyra::EpetraOperatorWrapper::copyEpetraIntoThyra ( const Epetra_MultiVector &  x,
const Ptr< VectorBase< double > > &  thyraVec 
) const

Definition at line 82 of file Thyra_EpetraOperatorWrapper.cpp.

References TEUCHOS_TEST_FOR_EXCEPTION.

Referenced by Apply().

◆ copyThyraIntoEpetra()

void Thyra::EpetraOperatorWrapper::copyThyraIntoEpetra ( const VectorBase< double > &  thyraVec,
Epetra_MultiVector &  x 
) const

Definition at line 120 of file Thyra_EpetraOperatorWrapper.cpp.

References TEUCHOS_TEST_FOR_EXCEPTION.

Referenced by Apply().

◆ SetUseTranspose()

int Thyra::EpetraOperatorWrapper::SetUseTranspose ( bool  UseTranspose_in)
inline

Definition at line 93 of file Thyra_EpetraOperatorWrapper.hpp.

References useTranspose_.

◆ Apply()

int Thyra::EpetraOperatorWrapper::Apply ( const Epetra_MultiVector &  X,
Epetra_MultiVector &  Y 
) const

◆ ApplyInverse()

int Thyra::EpetraOperatorWrapper::ApplyInverse ( const Epetra_MultiVector &  X,
Epetra_MultiVector &  Y 
) const

◆ NormInf()

double Thyra::EpetraOperatorWrapper::NormInf ( ) const

◆ Label()

const char * Thyra::EpetraOperatorWrapper::Label ( ) const
inline

Definition at line 109 of file Thyra_EpetraOperatorWrapper.hpp.

References label_.

◆ UseTranspose()

bool Thyra::EpetraOperatorWrapper::UseTranspose ( ) const
inline

Definition at line 112 of file Thyra_EpetraOperatorWrapper.hpp.

References useTranspose_.

◆ HasNormInf()

bool Thyra::EpetraOperatorWrapper::HasNormInf ( ) const
inline

Definition at line 115 of file Thyra_EpetraOperatorWrapper.hpp.

◆ Comm()

const Epetra_Comm & Thyra::EpetraOperatorWrapper::Comm ( ) const
inline

Definition at line 118 of file Thyra_EpetraOperatorWrapper.hpp.

References comm_.

◆ OperatorDomainMap()

const Epetra_Map & Thyra::EpetraOperatorWrapper::OperatorDomainMap ( ) const
inline

Definition at line 121 of file Thyra_EpetraOperatorWrapper.hpp.

References domainMap_.

◆ OperatorRangeMap()

const Epetra_Map & Thyra::EpetraOperatorWrapper::OperatorRangeMap ( ) const
inline

Definition at line 124 of file Thyra_EpetraOperatorWrapper.hpp.

References rangeMap_.

◆ getEpetraComm()

RCP< const Epetra_Comm > Thyra::EpetraOperatorWrapper::getEpetraComm ( const LinearOpBase< double > &  thyraOp)
staticprivate

Friends And Related Function Documentation

◆ makeEpetraWrapper()

RCP< const LinearOpBase< double > > makeEpetraWrapper ( const RCP< const LinearOpBase< double > > &  thyraOp)
related

Wrap a Thyra operator in the Epetra_Operator interface, and then wrap it again in a Thyra operator interface.

This lets an arbitrary Thyra operator be given to the Thyra AztecOO adapters.

Member Data Documentation

◆ useTranspose_

bool Thyra::EpetraOperatorWrapper::useTranspose_
private

Definition at line 130 of file Thyra_EpetraOperatorWrapper.hpp.

Referenced by Apply(), SetUseTranspose(), and UseTranspose().

◆ thyraOp_

RCP<const LinearOpBase<double> > Thyra::EpetraOperatorWrapper::thyraOp_
private

Definition at line 131 of file Thyra_EpetraOperatorWrapper.hpp.

Referenced by Apply(), and getThyraOp().

◆ range_

RCP<const VectorSpaceBase<double> > Thyra::EpetraOperatorWrapper::range_
private

Definition at line 132 of file Thyra_EpetraOperatorWrapper.hpp.

Referenced by Apply().

◆ domain_

RCP<const VectorSpaceBase<double> > Thyra::EpetraOperatorWrapper::domain_
private

Definition at line 133 of file Thyra_EpetraOperatorWrapper.hpp.

Referenced by Apply().

◆ comm_

RCP<const Epetra_Comm> Thyra::EpetraOperatorWrapper::comm_
private

Definition at line 134 of file Thyra_EpetraOperatorWrapper.hpp.

Referenced by Comm().

◆ rangeMap_

RCP<const Epetra_Map> Thyra::EpetraOperatorWrapper::rangeMap_
private

Definition at line 135 of file Thyra_EpetraOperatorWrapper.hpp.

Referenced by OperatorRangeMap().

◆ domainMap_

RCP<const Epetra_Map> Thyra::EpetraOperatorWrapper::domainMap_
private

Definition at line 136 of file Thyra_EpetraOperatorWrapper.hpp.

Referenced by OperatorDomainMap().

◆ label_

std::string Thyra::EpetraOperatorWrapper::label_
private

Definition at line 138 of file Thyra_EpetraOperatorWrapper.hpp.

Referenced by Label().


The documentation for this class was generated from the following files: