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. This is my own modified version that was originally in Thyra. More...
#include <Teko_EpetraOperatorWrapper.hpp>

Public Member Functions | |
| EpetraOperatorWrapper (const RCP< const Thyra::LinearOpBase< double > > &thyraOp) | |
| virtual | ~EpetraOperatorWrapper () |
| int | SetUseTranspose (bool UseTranspose) |
| 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 |
| const RCP< const Thyra::LinearOpBase< double > > | getThyraOp () const |
| Return the thyra operator associated with this wrapper. | |
| const RCP< const MappingStrategy > | getMapStrategy () const |
| Get the mapping strategy for this wrapper (translate between Thyra and Epetra) | |
| virtual int | GetBlockRowCount () |
| Get the number of block rows in this operator. | |
| virtual int | GetBlockColCount () |
| Get the number of block columns in this operator. | |
| Teuchos::RCP< const Epetra_Operator > | GetBlock (int i, int j) const |
| Grab the i,j block. | |
Protected Member Functions | |
| EpetraOperatorWrapper () | |
| RCP< const Epetra_Comm > | getEpetraComm (const Thyra::LinearOpBase< double > &inOp) const |
| void | SetOperator (const RCP< const Thyra::LinearOpBase< double > > &thyraOp, bool buildMap=true) |
| void | SetMapStrategy (const RCP< const MappingStrategy > &mapStrategy) |
Protected Attributes | |
| RCP< const MappingStrategy > | mapStrategy_ |
| RCP< const Thyra::LinearOpBase < double > > | thyraOp_ |
| bool | useTranspose_ |
| RCP< const Epetra_Comm > | comm_ |
| std::string | label_ |
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. This is my own modified version that was originally in Thyra.
Definition at line 202 of file Teko_EpetraOperatorWrapper.hpp.
| Teko::Epetra::EpetraOperatorWrapper::EpetraOperatorWrapper | ( | const RCP< const Thyra::LinearOpBase< double > > & | thyraOp | ) |
Definition at line 107 of file Teko_EpetraOperatorWrapper.cpp.
| virtual Teko::Epetra::EpetraOperatorWrapper::~EpetraOperatorWrapper | ( | ) | [inline, virtual] |
Definition at line 212 of file Teko_EpetraOperatorWrapper.hpp.
| Teko::Epetra::EpetraOperatorWrapper::EpetraOperatorWrapper | ( | ) | [protected] |
Definition at line 98 of file Teko_EpetraOperatorWrapper.cpp.
| int Teko::Epetra::EpetraOperatorWrapper::SetUseTranspose | ( | bool | UseTranspose | ) | [inline] |
Reimplemented in Teko::Epetra::BlockedEpetraOperator.
Definition at line 215 of file Teko_EpetraOperatorWrapper.hpp.
| int Teko::Epetra::EpetraOperatorWrapper::Apply | ( | const Epetra_MultiVector & | X, |
| Epetra_MultiVector & | Y | ||
| ) | const |
Definition at line 144 of file Teko_EpetraOperatorWrapper.cpp.
| int Teko::Epetra::EpetraOperatorWrapper::ApplyInverse | ( | const Epetra_MultiVector & | X, |
| Epetra_MultiVector & | Y | ||
| ) | const |
Reimplemented in Teko::Epetra::BlockedEpetraOperator.
Definition at line 177 of file Teko_EpetraOperatorWrapper.cpp.
| double Teko::Epetra::EpetraOperatorWrapper::NormInf | ( | ) | const |
Reimplemented in Teko::Epetra::BlockedEpetraOperator.
Definition at line 137 of file Teko_EpetraOperatorWrapper.cpp.
| const char* Teko::Epetra::EpetraOperatorWrapper::Label | ( | ) | const [inline] |
Definition at line 227 of file Teko_EpetraOperatorWrapper.hpp.
| bool Teko::Epetra::EpetraOperatorWrapper::UseTranspose | ( | ) | const [inline] |
Reimplemented in Teko::Epetra::BlockedEpetraOperator.
Definition at line 230 of file Teko_EpetraOperatorWrapper.hpp.
| bool Teko::Epetra::EpetraOperatorWrapper::HasNormInf | ( | ) | const [inline] |
Reimplemented in Teko::Epetra::BlockedEpetraOperator.
Definition at line 233 of file Teko_EpetraOperatorWrapper.hpp.
| const Epetra_Comm& Teko::Epetra::EpetraOperatorWrapper::Comm | ( | ) | const [inline] |
Reimplemented in Teko::Epetra::BlockedEpetraOperator.
Definition at line 236 of file Teko_EpetraOperatorWrapper.hpp.
| const Epetra_Map& Teko::Epetra::EpetraOperatorWrapper::OperatorDomainMap | ( | ) | const [inline] |
Definition at line 239 of file Teko_EpetraOperatorWrapper.hpp.
| const Epetra_Map& Teko::Epetra::EpetraOperatorWrapper::OperatorRangeMap | ( | ) | const [inline] |
Definition at line 242 of file Teko_EpetraOperatorWrapper.hpp.
| const RCP<const Thyra::LinearOpBase<double> > Teko::Epetra::EpetraOperatorWrapper::getThyraOp | ( | ) | const [inline] |
Return the thyra operator associated with this wrapper.
Definition at line 245 of file Teko_EpetraOperatorWrapper.hpp.
| const RCP<const MappingStrategy> Teko::Epetra::EpetraOperatorWrapper::getMapStrategy | ( | ) | const [inline] |
Get the mapping strategy for this wrapper (translate between Thyra and Epetra)
Definition at line 249 of file Teko_EpetraOperatorWrapper.hpp.
| int Teko::Epetra::EpetraOperatorWrapper::GetBlockRowCount | ( | ) | [virtual] |
Get the number of block rows in this operator.
Definition at line 278 of file Teko_EpetraOperatorWrapper.cpp.
| int Teko::Epetra::EpetraOperatorWrapper::GetBlockColCount | ( | ) | [virtual] |
Get the number of block columns in this operator.
Definition at line 286 of file Teko_EpetraOperatorWrapper.cpp.
| Teuchos::RCP< const Epetra_Operator > Teko::Epetra::EpetraOperatorWrapper::GetBlock | ( | int | i, |
| int | j | ||
| ) | const |
Grab the i,j block.
Reimplemented in Teko::NS::ALOperator, and Teko::Epetra::BlockedEpetraOperator.
Definition at line 294 of file Teko_EpetraOperatorWrapper.cpp.
| RCP< const Epetra_Comm > Teko::Epetra::EpetraOperatorWrapper::getEpetraComm | ( | const Thyra::LinearOpBase< double > & | inOp | ) | const [protected] |
Definition at line 187 of file Teko_EpetraOperatorWrapper.cpp.
| void Teko::Epetra::EpetraOperatorWrapper::SetOperator | ( | const RCP< const Thyra::LinearOpBase< double > > & | thyraOp, |
| bool | buildMap = true |
||
| ) | [protected] |
Definition at line 127 of file Teko_EpetraOperatorWrapper.cpp.
| void Teko::Epetra::EpetraOperatorWrapper::SetMapStrategy | ( | const RCP< const MappingStrategy > & | mapStrategy | ) | [inline, protected] |
Definition at line 272 of file Teko_EpetraOperatorWrapper.hpp.
RCP<const MappingStrategy> Teko::Epetra::EpetraOperatorWrapper::mapStrategy_ [protected] |
Definition at line 276 of file Teko_EpetraOperatorWrapper.hpp.
RCP<const Thyra::LinearOpBase<double> > Teko::Epetra::EpetraOperatorWrapper::thyraOp_ [protected] |
Definition at line 279 of file Teko_EpetraOperatorWrapper.hpp.
bool Teko::Epetra::EpetraOperatorWrapper::useTranspose_ [protected] |
Definition at line 282 of file Teko_EpetraOperatorWrapper.hpp.
RCP<const Epetra_Comm> Teko::Epetra::EpetraOperatorWrapper::comm_ [protected] |
Definition at line 285 of file Teko_EpetraOperatorWrapper.hpp.
std::string Teko::Epetra::EpetraOperatorWrapper::label_ [protected] |
Reimplemented in Teko::Epetra::BlockedEpetraOperator.
Definition at line 288 of file Teko_EpetraOperatorWrapper.hpp.
1.7.6.1