Thyra Package Browser (Single Doxygen Collection)
Version of the Day
|
Implements the Epetra_Operator interface with a Thyra LinearOperator. More...
#include <Thyra_EpetraOperatorWrapper.hpp>
Inherits Epetra_Operator.
Static Private Member Functions | |
static RCP< const Epetra_Comm > | getEpetraComm (const LinearOpBase< double > &thyraOp) |
Private Attributes | |
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_ |
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. More... | |
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 |
Overridden from Epetra_Operator | |
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 |
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.
Thyra::EpetraOperatorWrapper::EpetraOperatorWrapper | ( | const RCP< const LinearOpBase< double > > & | thyraOp | ) |
Definition at line 68 of file Thyra_EpetraOperatorWrapper.cpp.
|
inline |
Definition at line 74 of file Thyra_EpetraOperatorWrapper.hpp.
References thyraOp_.
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().
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().
|
inline |
Definition at line 93 of file Thyra_EpetraOperatorWrapper.hpp.
References useTranspose_.
int Thyra::EpetraOperatorWrapper::Apply | ( | const Epetra_MultiVector & | X, |
Epetra_MultiVector & | Y | ||
) | const |
Definition at line 159 of file Thyra_EpetraOperatorWrapper.cpp.
References CONJTRANS, copyEpetraIntoThyra(), copyThyraIntoEpetra(), domain_, NOTRANS, Teuchos::RCP< T >::ptr(), range_, thyraOp_, and useTranspose_.
int Thyra::EpetraOperatorWrapper::ApplyInverse | ( | const Epetra_MultiVector & | X, |
Epetra_MultiVector & | Y | ||
) | const |
Definition at line 181 of file Thyra_EpetraOperatorWrapper.cpp.
References TEUCHOS_TEST_FOR_EXCEPTION, and TEUCHOS_UNREACHABLE_RETURN.
double Thyra::EpetraOperatorWrapper::NormInf | ( | ) | const |
Definition at line 190 of file Thyra_EpetraOperatorWrapper.cpp.
References TEUCHOS_TEST_FOR_EXCEPTION, and TEUCHOS_UNREACHABLE_RETURN.
|
inline |
Definition at line 109 of file Thyra_EpetraOperatorWrapper.hpp.
References label_.
|
inline |
Definition at line 112 of file Thyra_EpetraOperatorWrapper.hpp.
References useTranspose_.
|
inline |
Definition at line 115 of file Thyra_EpetraOperatorWrapper.hpp.
|
inline |
Definition at line 118 of file Thyra_EpetraOperatorWrapper.hpp.
References comm_.
|
inline |
Definition at line 121 of file Thyra_EpetraOperatorWrapper.hpp.
References domainMap_.
|
inline |
Definition at line 124 of file Thyra_EpetraOperatorWrapper.hpp.
References rangeMap_.
|
staticprivate |
Definition at line 202 of file Thyra_EpetraOperatorWrapper.cpp.
References Thyra::get_Epetra_Comm(), nonnull(), and Teuchos::rcp().
|
private |
Definition at line 130 of file Thyra_EpetraOperatorWrapper.hpp.
Referenced by Apply(), SetUseTranspose(), and UseTranspose().
|
private |
Definition at line 131 of file Thyra_EpetraOperatorWrapper.hpp.
Referenced by Apply(), and getThyraOp().
|
private |
Definition at line 132 of file Thyra_EpetraOperatorWrapper.hpp.
Referenced by Apply().
|
private |
Definition at line 133 of file Thyra_EpetraOperatorWrapper.hpp.
Referenced by Apply().
|
private |
Definition at line 134 of file Thyra_EpetraOperatorWrapper.hpp.
Referenced by Comm().
|
private |
Definition at line 135 of file Thyra_EpetraOperatorWrapper.hpp.
Referenced by OperatorRangeMap().
|
private |
Definition at line 136 of file Thyra_EpetraOperatorWrapper.hpp.
Referenced by OperatorDomainMap().
|
private |
Definition at line 138 of file Thyra_EpetraOperatorWrapper.hpp.
Referenced by Label().