47 #ifndef __Teko_StaticLSCStrategy_hpp__
48 #define __Teko_StaticLSCStrategy_hpp__
50 #include "Teko_LSCStrategy.hpp"
55 class LSCPrecondState;
58 class StaticLSCStrategy :
public LSCStrategy {
62 StaticLSCStrategy(
const LinearOp & invF,
63 const LinearOp & invBQBtmC,
64 const LinearOp & invD,
65 const LinearOp & invMass);
68 StaticLSCStrategy(
const LinearOp & invF,
69 const LinearOp & invBQBtmC,
70 const LinearOp & invMass);
79 virtual void buildState(BlockedLinearOp & ,BlockPreconditionerState & )
const {}
89 virtual LinearOp getInvF(
const BlockedLinearOp & ,BlockPreconditionerState & )
const
100 virtual LinearOp getInvBQBt(
const BlockedLinearOp & ,BlockPreconditionerState & )
const
101 {
return invBQBtmC_; }
111 virtual LinearOp getInvBHBt(
const BlockedLinearOp & ,BlockPreconditionerState & )
const
112 {
return invBQBtmC_; }
122 virtual LinearOp getOuterStabilization(
const BlockedLinearOp & ,BlockPreconditionerState & )
const
125 virtual LinearOp getInnerStabilization(
const BlockedLinearOp & ,BlockPreconditionerState & )
const
126 {
return Teuchos::null; }
136 virtual LinearOp getInvMass(
const BlockedLinearOp & ,BlockPreconditionerState & )
const
147 virtual LinearOp getHScaling(
const BlockedLinearOp & ,BlockPreconditionerState & )
const
156 virtual bool useFullLDU()
const {
return false; }
163 virtual void setSymmetric(
bool ) { }