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