47 #ifndef __Teko_PresLaplaceLSCStrategy_hpp__
48 #define __Teko_PresLaplaceLSCStrategy_hpp__
50 #include "Teko_LSCStrategy.hpp"
55 class LSCPrecondState;
73 const Teuchos::RCP<InverseFactory> & invFactS);
132 {
return Teuchos::null; }
168 { isSymmetric_ = isSymmetric; }
172 const InverseLibrary & invLib);
202 Teuchos::RCP<InverseFactory> invFactoryV_;
203 Teuchos::RCP<InverseFactory> invFactoryP_;
220 static std::string getPressureLaplaceString() {
return "Pressure Laplace Operator"; }
221 static std::string getVelocityMassString() {
return "Velocity Mass Operator"; }
virtual int getEigSolveParam()
Return the number of power series iterations to use when finding the spectral radius.
virtual bool updateRequestedParameters(const Teuchos::ParameterList &pl)
For assiting in construction of the preconditioner.
virtual void setSymmetric(bool isSymmetric)
virtual LinearOp getInnerStabilization(const BlockedLinearOp &A, BlockPreconditionerState &state) const
virtual void initializeFromParameterList(const Teuchos::ParameterList &pl, const InverseLibrary &invLib)
Initialize from a parameter list.
virtual LinearOp getInvBQBt(const BlockedLinearOp &A, BlockPreconditionerState &state) const
Strategy for driving LSCPreconditionerFactory.
virtual void buildState(BlockedLinearOp &A, BlockPreconditionerState &state) const
Functions inherited from LSCStrategy.
virtual void setEigSolveParam(int sz)
Set the number of power series iterations to use when finding the spectral radius.
Preconditioner state for the LSC factory.
virtual LinearOp getInvMass(const BlockedLinearOp &A, BlockPreconditionerState &state) const
virtual LinearOp getInvBHBt(const BlockedLinearOp &A, BlockPreconditionerState &state) const
virtual void setUseFullLDU(bool val)
Set to true to use the Full LDU decomposition, false otherwise.
virtual LinearOp getInvF(const BlockedLinearOp &A, BlockPreconditionerState &state) const
virtual Teuchos::RCP< Teuchos::ParameterList > getRequestedParameters() const
For assiting in construction of the preconditioner.
virtual bool useFullLDU() const
A strategy that takes a single inverse factory and uses that for all inverses. If no mass matrix is p...
virtual LinearOp getHScaling(const BlockedLinearOp &A, BlockPreconditionerState &state) const
DiagonalType
Type describing the type of diagonal to construct.
virtual void initializeState(const BlockedLinearOp &A, LSCPrecondState *state) const
Initialize the state object using this blocked linear operator.
void computeInverses(const BlockedLinearOp &A, LSCPrecondState *state) const
An implementation of a state object for block preconditioners.
virtual LinearOp getOuterStabilization(const BlockedLinearOp &A, BlockPreconditionerState &state) const