7 #ifndef __Teko_ModALPreconditionerFactory_hpp__
8 #define __Teko_ModALPreconditionerFactory_hpp__
10 #include "Teko_BlockPreconditionerFactory.hpp"
11 #include "Teko_InvModALStrategy.hpp"
24 LinearOp pressureMassMatrix_;
25 LinearOp invPressureMassMatrix_;
26 ModifiableLinearOp B1tMpB1_, B2tMpB2_, B3tMpB3_;
27 ModifiableLinearOp A11p_, A22p_, A33p_;
28 ModifiableLinearOp invA11p_, invA22p_, invA33p_, invS_;
29 ModifiableLinearOp S_;
117 const Teuchos::RCP<InverseFactory>& invFactoryS);
120 LinearOp& pressureMassMatrix);
123 const Teuchos::RCP<InverseFactory>& invFactoryS,
124 LinearOp& pressureMassMatrix);
134 invOpsStrategy_->setPressureMassMatrix(pressureMassMatrix);
142 void setGamma(
double gamma) { invOpsStrategy_->setGamma(gamma); }
165 Teuchos::RCP<InvModALStrategy> invOpsStrategy_;
void setPressureMassMatrix(const LinearOp &pressureMassMatrix)
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...
Modified augmented Lagrangian-based preconditioner for incompressible Navier-Stokes equations...
Abstract class which block preconditioner factories in Teko should be based on.
virtual Teuchos::RCP< PreconditionerState > buildPreconditionerState() const
virtual LinearOp buildPreconditionerOperator(BlockedLinearOp &alOp, BlockPreconditionerState &state) const
An implementation of a state object for block preconditioners.
void setGamma(double gamma)
Class for saving state variables for ModALPreconditionerFactory.