Teko Version of the Day
Public Member Functions
Teko::BlockPreconditionerFactory Class Reference

Abstract class which block preconditioner factories in Teko should be based on. More...

#include <Teko_BlockPreconditionerFactory.hpp>

Inheritance diagram for Teko::BlockPreconditionerFactory:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual LinearOp buildPreconditionerOperator (BlockedLinearOp &blo, BlockPreconditionerState &state) const =0
 Function that is called to build the preconditioner for the linear operator that is passed in.
virtual RCP< PreconditionerStatebuildPreconditionerState () const
 Function that permits the construction of an arbitrary BlockPreconditionerState object.
RCP< BlockPreconditionerStatebuildBlockPreconditionerState () const
 Function that constructs a BlockPreconditionerState object.
virtual LinearOp buildPreconditionerOperator (LinearOp &blo, PreconditionerState &state) const
 Function that is called to build the preconditioner for the linear operator that is passed in.
bool isCompatible (const Thyra::LinearOpSourceBase< double > &fwdOpSrc) const
 is this operator compatiable with the preconditioner factory?

Detailed Description

Abstract class which block preconditioner factories in Teko should be based on.

Abstract class which block preconditioner factories in Teko should be based on. All that is needed is the implementation of "buildPreconditionerOperator".

Definition at line 98 of file Teko_BlockPreconditionerFactory.hpp.


Member Function Documentation

virtual LinearOp Teko::BlockPreconditionerFactory::buildPreconditionerOperator ( BlockedLinearOp &  blo,
BlockPreconditionerState state 
) const [pure virtual]

Function that is called to build the preconditioner for the linear operator that is passed in.

This function builds a preconditioner based on the passed in BlockedLinearOp.

Parameters:
[in]bloSource linear operator that is to be preconditioned.
[in]stateAn object associated with this operator to store the preconditioner state.
Returns:
The preconditioner as a linear operator (i.e. to perform a matrix-vector operation simply call "apply").

Implemented in Teko::MLPreconditionerFactory, Teko::NS::ModALPreconditionerFactory, Teko::NS::SIMPLEPreconditionerFactory, Teko::AddPreconditionerFactory, Teko::GaussSeidelPreconditionerFactory, Teko::JacobiPreconditionerFactory, Teko::LU2x2PreconditionerFactory, and Teko::MultPreconditionerFactory.

virtual RCP<PreconditionerState> Teko::BlockPreconditionerFactory::buildPreconditionerState ( ) const [inline, virtual]

Function that permits the construction of an arbitrary BlockPreconditionerState object.

Function that permits the construction of an arbitrary BlockPreconditionerState object. If the basic state object, which takes a parameter list, is sufficient the default behavior does precisely what is needed. Otherwise, an author of a PreconditionerFactory would need to reimplement this method to return a new state object.

Returns:
A state object associated with this factory.

Reimplemented from Teko::PreconditionerFactory.

Reimplemented in Teko::MLPreconditionerFactory, Teko::NS::ModALPreconditionerFactory, Teko::AddPreconditionerFactory, and Teko::MultPreconditionerFactory.

Definition at line 129 of file Teko_BlockPreconditionerFactory.hpp.

RCP<BlockPreconditionerState> Teko::BlockPreconditionerFactory::buildBlockPreconditionerState ( ) const [inline]

Function that constructs a BlockPreconditionerState object.

This function is simply included for convenience. Its implementation just call "buildPreconditionerState" and returns a dynamically casted BlockPreconditionState poniter.

Definition at line 138 of file Teko_BlockPreconditionerFactory.hpp.

LinearOp Teko::BlockPreconditionerFactory::buildPreconditionerOperator ( LinearOp &  lo,
PreconditionerState state 
) const [virtual]

Function that is called to build the preconditioner for the linear operator that is passed in.

This function builds a preconditioner based on the passed in LinearOp.

Parameters:
[in]loSource linear operator that is to be preconditioned.
[in]stateAn object associated with this operator to store the preconditioner state.
Returns:
The preconditioner as a linear operator (i.e. to perform a matrix-vector operation simply call "apply").

Implements Teko::PreconditionerFactory.

Definition at line 60 of file Teko_BlockPreconditionerFactory.cpp.

bool Teko::BlockPreconditionerFactory::isCompatible ( const Thyra::LinearOpSourceBase< double > &  fwdOpSrc) const

is this operator compatiable with the preconditioner factory?

Reimplemented from Teko::PreconditionerFactory.

Definition at line 72 of file Teko_BlockPreconditionerFactory.cpp.


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