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 & A,BlockPreconditionerState & state)
const {}
89 virtual LinearOp getInvF(
const BlockedLinearOp & A,BlockPreconditionerState & state)
const 100 virtual LinearOp getInvBQBt(
const BlockedLinearOp & A,BlockPreconditionerState & state)
const 101 {
return invBQBtmC_; }
111 virtual LinearOp getInvBHBt(
const BlockedLinearOp & A,BlockPreconditionerState & state)
const 112 {
return invBQBtmC_; }
122 virtual LinearOp getOuterStabilization(
const BlockedLinearOp & A,BlockPreconditionerState & state)
const 125 virtual LinearOp getInnerStabilization(
const BlockedLinearOp & A,BlockPreconditionerState & state)
const 126 {
return Teuchos::null; }
136 virtual LinearOp getInvMass(
const BlockedLinearOp & A,BlockPreconditionerState & state)
const 147 virtual LinearOp getHScaling(
const BlockedLinearOp & A,BlockPreconditionerState & state)
const 156 virtual bool useFullLDU()
const {
return false; }
163 virtual void setSymmetric(
bool isSymmetric) { }