Teko  Version of the Day
 All Classes Files Functions Variables Pages
Public Member Functions | List of all members
Teko::TpetraHelpers::InverseFactoryOperator Class Reference

A single Epetra wrapper for all operators constructed from an inverse operator. More...

#include <Teko_TpetraInverseFactoryOperator.hpp>

Inherits Teko::TpetraHelpers::TpetraInverseOpWrapper.

Public Member Functions

 InverseFactoryOperator (const Teuchos::RCP< const InverseFactory > &bfp)
 Constructor that takes the InverseFactory that will build the operator. More...
 
virtual void initInverse (bool clearOld=false)
 Build the underlying data structure for the inverse operator. More...
 
virtual void buildInverseOperator (const Teuchos::RCP< const Tpetra::Operator< ST, LO, GO, NT > > &A, bool clear=true)
 Build this inverse operator from an Epetra_Operator passed in to this object. More...
 
virtual void buildInverseOperator (const Teuchos::RCP< Tpetra::Operator< ST, LO, GO, NT > > &A, bool clear=true)
 Build this inverse operator from an Epetra_Operator passed in to this object. More...
 
virtual void rebuildInverseOperator (const Teuchos::RCP< const Tpetra::Operator< ST, LO, GO, NT > > &A)
 Rebuild this inverse from an Epetra_Operator passed in this to object. More...
 
virtual void rebuildInverseOperator (const Teuchos::RCP< Tpetra::Operator< ST, LO, GO, NT > > &A)
 Rebuild this inverse from an Epetra_Operator passed in this to object. More...
 
Teuchos::RCP< const
Tpetra::Operator< ST, LO, GO,
NT > > 
getForwardOp () const
 
Teuchos::RCP< Tpetra::Operator
< ST, LO, GO, NT > > 
getNonconstForwardOp () const
 
- Public Member Functions inherited from Teko::TpetraHelpers::TpetraOperatorWrapper
const RCP< const
Thyra::LinearOpBase< ST > > 
getThyraOp () const
 Return the thyra operator associated with this wrapper. More...
 
const RCP< const MappingStrategygetMapStrategy () const
 Get the mapping strategy for this wrapper (translate between Thyra and Epetra) More...
 
virtual int GetBlockRowCount ()
 Get the number of block rows in this operator. More...
 
virtual int GetBlockColCount ()
 Get the number of block columns in this operator. More...
 
Teuchos::RCP< const
Tpetra::Operator< ST, LO, GO,
NT > > 
GetBlock (int i, int j) const
 Grab the i,j block. More...
 

Detailed Description

A single Epetra wrapper for all operators constructed from an inverse operator.

This class uses the Teko inverse factories to build an Epetra_Operator that behaves like the inverse operatotr. This is done by using the InverseFactory, and letting it build whatever operator is neccessary. Thus the Epetra "layer" is just a single class that handles any generic InverseFactory.

Definition at line 69 of file Teko_TpetraInverseFactoryOperator.hpp.

Constructor & Destructor Documentation

Teko::TpetraHelpers::InverseFactoryOperator::InverseFactoryOperator ( const Teuchos::RCP< const InverseFactory > &  ifp)

Constructor that takes the InverseFactory that will build the operator.

Constructor that takes the InverseFactory that will build the operator.

Definition at line 69 of file Teko_TpetraInverseFactoryOperator.cpp.

Member Function Documentation

void Teko::TpetraHelpers::InverseFactoryOperator::initInverse ( bool  clearOld = false)
virtual

Build the underlying data structure for the inverse operator.

Build the underlying data structure for the inverse operator. This permits the manipulation of the state object for an inverse operator.

Parameters
[in]clearOldIf true any previously constructed operator will be wiped out and a new one created. If false, anoperator will be created only if the current one is empty (i.e. initPreconditioner had not been called).

Definition at line 86 of file Teko_TpetraInverseFactoryOperator.cpp.

void Teko::TpetraHelpers::InverseFactoryOperator::buildInverseOperator ( const Teuchos::RCP< const Tpetra::Operator< ST, LO, GO, NT > > &  A,
bool  clear = true 
)
virtual

Build this inverse operator from an Epetra_Operator passed in to this object.

Build this inverse operator from an Tpetra::Operator<ST,LO,GO,NT> passed in to this object.

Build this inverse opeerator from an Epetra_Operator passed in to this object. If this Epetra_Operator is an EpetraOperatorWrapper object then the block Thyra components are extracted.

Parameters
[in]AThe Epetra source operator.
[in]clearIf true, than any previous state saved by the operator is discarded.

Build this inverse opeerator from an Tpetra::Operator<ST,LO,GO,NT> passed in to this object. If this Tpetra::Operator<ST,LO,GO,NT> is an EpetraOperatorWrapper object then the block Thyra components are extracted.

Parameters
[in]AThe Epetra source operator.
[in]clearIf true, than any previous state saved by the operator is discarded.

Definition at line 105 of file Teko_TpetraInverseFactoryOperator.cpp.

void Teko::TpetraHelpers::InverseFactoryOperator::buildInverseOperator ( const Teuchos::RCP< Tpetra::Operator< ST, LO, GO, NT > > &  A,
bool  clear = true 
)
virtual

Build this inverse operator from an Epetra_Operator passed in to this object.

Build this inverse opeerator from an Epetra_Operator passed in to this object. If this Epetra_Operator is an EpetraOperatorWrapper object then the block Thyra components are extracted.

Parameters
[in]AThe Epetra source operator.
[in]clearIf true, than any previous state saved by the operator is discarded.

Definition at line 136 of file Teko_TpetraInverseFactoryOperator.cpp.

void Teko::TpetraHelpers::InverseFactoryOperator::rebuildInverseOperator ( const Teuchos::RCP< const Tpetra::Operator< ST, LO, GO, NT > > &  A)
virtual

Rebuild this inverse from an Epetra_Operator passed in this to object.

Rebuild this inverse from an Tpetra::Operator<ST,LO,GO,NT> passed in this to object.

Rebuild this inverse from an Epetra_Operator passed in this to object. If buildInverseOperator has not been called the inverse operator will be built instead. Otherwise efforts are taken to only rebuild what is neccessary. Also, that this Epetra_Operator may be an EpetraOperatorWrapper object, so the block Thyra components can be extracted.

Parameters
[in]AThe Epetra source operator. (Should be a EpetraOperatorWrapper!)

Rebuild this inverse from an Tpetra::Operator<ST,LO,GO,NT> passed in this to object. If buildInverseOperator has not been called the inverse operator will be built instead. Otherwise efforts are taken to only rebuild what is neccessary. Also, that this Tpetra::Operator<ST,LO,GO,NT> may be an EpetraOperatorWrapper object, so the block Thyra components can be extracted.

Parameters
[in]AThe Epetra source operator. (Should be a EpetraOperatorWrapper!)

Definition at line 159 of file Teko_TpetraInverseFactoryOperator.cpp.

void Teko::TpetraHelpers::InverseFactoryOperator::rebuildInverseOperator ( const Teuchos::RCP< Tpetra::Operator< ST, LO, GO, NT > > &  A)
virtual

Rebuild this inverse from an Epetra_Operator passed in this to object.

Rebuild this inverse from an Epetra_Operator passed in this to object. If buildInverseOperator has not been called the inverse operator will be built instead. Otherwise efforts are taken to only rebuild what is neccessary. Also, that this Epetra_Operator may be an EpetraOperatorWrapper object, so the block Thyra components can be extracted.

Parameters
[in]AThe Epetra source operator. (Should be a EpetraOperatorWrapper!)

Definition at line 185 of file Teko_TpetraInverseFactoryOperator.cpp.

Teuchos::RCP<const Tpetra::Operator<ST,LO,GO,NT> > Teko::TpetraHelpers::InverseFactoryOperator::getForwardOp ( ) const
inline

Extract the forward op used by buildInverseOperator or rebuildInverseOperator.

Definition at line 152 of file Teko_TpetraInverseFactoryOperator.hpp.

Teuchos::RCP<Tpetra::Operator<ST,LO,GO,NT> > Teko::TpetraHelpers::InverseFactoryOperator::getNonconstForwardOp ( ) const
inline

Extract the forward op used by buildInverseOperator or rebuildInverseOperator.

Definition at line 157 of file Teko_TpetraInverseFactoryOperator.hpp.


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