Teko Version of the Day
Public Member Functions
Teko::Epetra::InverseFactoryOperator Class Reference

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

#include <Teko_InverseFactoryOperator.hpp>

Inherits Teko::Epetra::EpetraInverseOpWrapper.

List of all members.

Public Member Functions

 InverseFactoryOperator (const Teuchos::RCP< const InverseFactory > &bfp)
virtual void initInverse (bool clearOld=false)
 Build the underlying data structure for the inverse operator.
virtual void buildInverseOperator (const Teuchos::RCP< const Epetra_Operator > &A, bool clear=true)
 Build this inverse operator from an Epetra_Operator passed in to this object.
virtual void buildInverseOperator (const Teuchos::RCP< Epetra_Operator > &A, bool clear=true)
 Build this inverse operator from an Epetra_Operator passed in to this object.
virtual void rebuildInverseOperator (const Teuchos::RCP< const Epetra_Operator > &A)
 Rebuild this inverse from an Epetra_Operator passed in this to object.
virtual void rebuildInverseOperator (const Teuchos::RCP< Epetra_Operator > &A)
 Rebuild this inverse from an Epetra_Operator passed in this to object.
Teuchos::RCP< const
Epetra_Operator > 
getForwardOp () const
Teuchos::RCP< Epetra_Operator > getNonconstForwardOp () const

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 68 of file Teko_InverseFactoryOperator.hpp.


Constructor & Destructor Documentation

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

Constructor that takes the InverseFactory that will build the operator.

Definition at line 69 of file Teko_InverseFactoryOperator.cpp.


Member Function Documentation

void Teko::Epetra::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_InverseFactoryOperator.cpp.

void Teko::Epetra::InverseFactoryOperator::buildInverseOperator ( const Teuchos::RCP< const Epetra_Operator > &  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 105 of file Teko_InverseFactoryOperator.cpp.

void Teko::Epetra::InverseFactoryOperator::buildInverseOperator ( const Teuchos::RCP< Epetra_Operator > &  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_InverseFactoryOperator.cpp.

void Teko::Epetra::InverseFactoryOperator::rebuildInverseOperator ( const Teuchos::RCP< const Epetra_Operator > &  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 159 of file Teko_InverseFactoryOperator.cpp.

void Teko::Epetra::InverseFactoryOperator::rebuildInverseOperator ( const Teuchos::RCP< Epetra_Operator > &  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_InverseFactoryOperator.cpp.

Teuchos::RCP<const Epetra_Operator> Teko::Epetra::InverseFactoryOperator::getForwardOp ( ) const [inline]

Extract the forward op used by buildInverseOperator or rebuildInverseOperator.

Definition at line 151 of file Teko_InverseFactoryOperator.hpp.

Teuchos::RCP<Epetra_Operator> Teko::Epetra::InverseFactoryOperator::getNonconstForwardOp ( ) const [inline]

Extract the forward op used by buildInverseOperator or rebuildInverseOperator.

Definition at line 156 of file Teko_InverseFactoryOperator.hpp.


The documentation for this class was generated from the following files:
 All Classes Files Functions Variables