Abstract strategy for computing inv(F) and inv(S) in the LU2x2PreconditionerFactory. More...
#include <Teko_LU2x2Strategy.hpp>
Public Member Functions | |
virtual const Teko::LinearOp | getHatInvA00 (const Teko::BlockedLinearOp &A, BlockPreconditionerState &state) const =0 |
virtual const Teko::LinearOp | getTildeInvA00 (const Teko::BlockedLinearOp &A, BlockPreconditionerState &state) const =0 |
virtual const Teko::LinearOp | getInvS (const Teko::BlockedLinearOp &A, BlockPreconditionerState &state) const =0 |
virtual void | initializeFromParameterList (const Teuchos::ParameterList &, const InverseLibrary &) |
This function builds the internals of the state from a parameter list. More... | |
virtual Teuchos::RCP < Teuchos::ParameterList > | getRequestedParameters () const |
Request the additional parameters this preconditioner factory needs. More... | |
virtual bool | updateRequestedParameters (const Teuchos::ParameterList &) |
Update this object with the fields from a parameter list. More... | |
void | setRequestHandler (const Teuchos::RCP< RequestHandler > &rh) |
This method sets the request handler for this object. More... | |
Teuchos::RCP< RequestHandler > | getRequestHandler () const |
This method gets the request handler uses by this object. More... | |
Abstract strategy for computing inv(F) and inv(S) in the LU2x2PreconditionerFactory.
This should be paired with a LU2x2PreconditionerFactory, it build the and opreators. Building an approximate inverse of this system
using a 2x2 block LDU decomposition gives
where the Shur complement is To invert , and are required. The idea of this strategy is to give those operators.
Definition at line 103 of file Teko_LU2x2Strategy.hpp.
|
pure virtual |
returns the first (approximate) inverse of
Implemented in Teko::StaticLU2x2Strategy, Teko::NS::PCDStrategy, and Teko::LU2x2DiagonalStrategy.
|
pure virtual |
returns the scond (approximate) inverse of
Implemented in Teko::StaticLU2x2Strategy, Teko::NS::PCDStrategy, and Teko::LU2x2DiagonalStrategy.
|
pure virtual |
returns an (approximate) inverse of
Implemented in Teko::StaticLU2x2Strategy, Teko::NS::PCDStrategy, and Teko::LU2x2DiagonalStrategy.
|
inlinevirtual |
This function builds the internals of the state from a parameter list.
This function builds the internals of the LU 2x2 state from a parameter list. Furthermore, it allows a developer to easily add a factory to the build system.
[in] | settings | Parameter list to use as the internal settings |
[in] | invLib | Inverse library to use for building inverse factory objects |
Reimplemented in Teko::LU2x2DiagonalStrategy, and Teko::NS::PCDStrategy.
Definition at line 130 of file Teko_LU2x2Strategy.hpp.
|
inlinevirtual |
Request the additional parameters this preconditioner factory needs.
Request the additonal parameters needed by this preconditioner factory. The parameter list will have a set of fields that can be filled with the requested values. These fields include all requirements, even those of the sub-solvers if there are any. Once correctly filled the object can be updated by calling the updateRequestedParameters with the filled parameter list.
Reimplemented in Teko::NS::PCDStrategy.
Definition at line 148 of file Teko_LU2x2Strategy.hpp.
|
inlinevirtual |
Update this object with the fields from a parameter list.
Update the requested fields using a parameter list. This method is expected to pair with the getRequestedParameters method (i.e. the fields requested are going to be update using this method).
[in] | pl | Parameter list containing the requested parameters. |
Reimplemented in Teko::NS::PCDStrategy.
Definition at line 164 of file Teko_LU2x2Strategy.hpp.
|
inline |
This method sets the request handler for this object.
Definition at line 168 of file Teko_LU2x2Strategy.hpp.
|
inline |
This method gets the request handler uses by this object.
Definition at line 172 of file Teko_LU2x2Strategy.hpp.