Abstract class for building an inverse operator. More...
#include <Teko_InverseFactory.hpp>
Public Member Functions | |
virtual InverseLinearOp | buildInverse (const LinearOp &linearOp) const =0 |
Build an inverse operator. More... | |
virtual InverseLinearOp | buildInverse (const LinearOp &linearOp, const LinearOp &) const |
Build a preconditioned inverse operator. More... | |
virtual void | rebuildInverse (const LinearOp &source, InverseLinearOp &dest) const =0 |
Pass in an already constructed inverse operator. Update the inverse operator based on the new source operator. More... | |
virtual void | rebuildInverse (const LinearOp &source, const LinearOp &, InverseLinearOp &dest) const |
Pass in an already constructed inverse operator. Update the inverse operator based on the new source operator. More... | |
virtual Teuchos::RCP< const Teuchos::ParameterList > | getParameterList () const =0 |
A function that permits inspection of the parameters used to create this object. More... | |
virtual std::string | toString () const =0 |
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) |
Set the request handler with pointers to the appropriate callbacks. More... | |
Teuchos::RCP< RequestHandler > | getRequestHandler () const |
Get the request handler with pointers to the appropriate callbacks. More... | |
Protected Attributes | |
Teuchos::RCP< RequestHandler > | callbackHandler_ |
For handling requests and send requests back to the user. More... | |
Related Functions | |
(Note that these are not member functions.) | |
InverseLinearOp | buildInverse (const InverseFactory &factory, const LinearOp &A, const LinearOp &precOp) |
void | rebuildInverse (const InverseFactory &factory, const LinearOp &A, const LinearOp &precOp, InverseLinearOp &invA) |
Functions for constructing and initializing solvers | |
InverseLinearOp | buildInverse (const InverseFactory &factory, const LinearOp &A) |
InverseLinearOp | buildInverse (const InverseFactory &factory, const LinearOp &A, const LinearOp &precOp) |
void | rebuildInverse (const InverseFactory &factory, const LinearOp &A, InverseLinearOp &invA) |
void | rebuildInverse (const InverseFactory &factory, const LinearOp &A, const LinearOp &precOp, InverseLinearOp &invA) |
Teuchos::RCP< InverseFactory > | invFactoryFromParamList (const Teuchos::ParameterList &list, const std::string &type) |
Build an InverseFactory object from a ParameterList, as specified in Stratimikos. More... | |
Teuchos::RCP< const Teuchos::ParameterList > | invFactoryValidParameters () |
Get a valid parameter list for the inverse factory class. More... | |
Abstract class for building an inverse operator.
Abstract class for building an inverse operator. It pairs with a linear operator and gives you a new operator that behaves like its inverse.
Definition at line 34 of file Teko_InverseFactory.hpp.
|
pure virtual |
Build an inverse operator.
Build the inverse operator using this factory.
[in] | linearOp | Linear operator needing to be inverted. |
linearOp
.
|
inlinevirtual |
Build a preconditioned inverse operator.
Build the inverse operator using this factory and a user specified preconditioning operator. The default behavior is to call buildInverse ignoring the preconditioner.
[in] | linearOp | Linear operator needing to be inverted. |
[in] | precOp | Preconditioning operator |
linearOp
. Definition at line 61 of file Teko_InverseFactory.hpp.
|
pure virtual |
Pass in an already constructed inverse operator. Update the inverse operator based on the new source operator.
Pass in an already constructed inverse operator. Update the inverse operator based on the new source operator.
[in] | source | Source operator to be inverted. |
[in,out] | dest | Pre constructed inverse operator to be rebuilt using the source object. |
|
inlinevirtual |
Pass in an already constructed inverse operator. Update the inverse operator based on the new source operator.
Pass in an already constructed inverse operator. Update the inverse operator based on the new source operator.
[in] | source | Source operator to be inverted. |
[in] | precOp | Preconditioning operator |
[in,out] | dest | Pre constructed inverse operator to be rebuilt using the source object. |
Definition at line 126 of file Teko_InverseFactory.hpp.
|
pure virtual |
A function that permits inspection of the parameters used to create this object.
A function that permits inspection of the parameters used to create this object. Useful for determining defaults and settings used.
|
pure virtual |
Return a string that describes this factory
|
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.
Definition at line 158 of file Teko_InverseFactory.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. |
Definition at line 175 of file Teko_InverseFactory.hpp.
|
inlinevirtual |
Set the request handler with pointers to the appropriate callbacks.
Implements Teko::RequestHandlerContainer.
Definition at line 178 of file Teko_InverseFactory.hpp.
|
inlinevirtual |
Get the request handler with pointers to the appropriate callbacks.
Implements Teko::RequestHandlerContainer.
Definition at line 181 of file Teko_InverseFactory.hpp.
|
related |
Build an inverse operator using a factory and a linear operator
[in] | factory | The inverse factory used to construct the inverse operator |
[in] | precOp | Preconditioning operator |
[in] | A | Linear operator whose inverse is required |
A
. Definition at line 112 of file Teko_InverseFactory.cpp.
|
related |
Using a prebuilt linear operator, use factory to build an inverse operator given a new forward operator.
[in] | factory | The inverse factory used to construct the inverse operator |
[in] | A | Linear operator whose inverse is required |
[in] | precOp | Preconditioning operator |
[in] | invA | The inverse operator that is to be rebuilt using the A operator. |
Definition at line 170 of file Teko_InverseFactory.cpp.
|
related |
Build an inverse operator using a factory and a linear operator
[in] | factory | The inverse factory used to construct the inverse operator |
[in] | A | Linear operator whose inverse is required |
A
. Definition at line 81 of file Teko_InverseFactory.cpp.
|
related |
Build an inverse operator using a factory and a linear operator
[in] | factory | The inverse factory used to construct the inverse operator |
[in] | precOp | Preconditioning operator |
[in] | A | Linear operator whose inverse is required |
A
.
|
related |
Using a prebuilt linear operator, use factory to build an inverse operator given a new forward operator.
[in] | factory | The inverse factory used to construct the inverse operator |
[in] | A | Linear operator whose inverse is required |
[in] | invA | The inverse operator that is to be rebuilt using the A operator. |
Definition at line 137 of file Teko_InverseFactory.cpp.
|
related |
Using a prebuilt linear operator, use factory to build an inverse operator given a new forward operator.
[in] | factory | The inverse factory used to construct the inverse operator |
[in] | A | Linear operator whose inverse is required |
[in] | precOp | Preconditioning operator |
[in] | invA | The inverse operator that is to be rebuilt using the A operator. |
|
related |
Build an InverseFactory object from a ParameterList, as specified in Stratimikos.
Build an InverseFactory object from a ParameterList, as specified in Stratimikos. The specific inverse routine (either solver or preconditioner) to be chosen is specified by a string.
InverseLibrary
is used to construct an InverseFactory
instead.[in] | list | ParameterList that describes the available solvers/preconditioners. |
[in] | type | String saying which solver/preconditioner to use. |
Definition at line 200 of file Teko_InverseFactory.cpp.
|
related |
Get a valid parameter list for the inverse factory class.
Get a valid parameter list for the inverse factory class. This will specify the set of parameters for each possible "inverse".
InverseLibrary
is used to get paramter lists for InverseFactory
construction.invFactoryFromParamList
. Definition at line 240 of file Teko_InverseFactory.cpp.
|
protected |
For handling requests and send requests back to the user.
Definition at line 185 of file Teko_InverseFactory.hpp.