10 #ifndef __Teko_StaticLSCStrategy_hpp__
11 #define __Teko_StaticLSCStrategy_hpp__
13 #include "Teko_LSCStrategy.hpp"
18 class LSCPrecondState;
21 class StaticLSCStrategy :
public LSCStrategy {
24 StaticLSCStrategy(
const LinearOp& invF,
const LinearOp& invBQBtmC,
const LinearOp& invD,
25 const LinearOp& invMass);
28 StaticLSCStrategy(
const LinearOp& invF,
const LinearOp& invBQBtmC,
const LinearOp& invMass);
37 virtual void buildState(BlockedLinearOp& , BlockPreconditionerState& )
const {}
47 virtual LinearOp getInvF(
const BlockedLinearOp& ,
48 BlockPreconditionerState& )
const {
60 virtual LinearOp getInvBQBt(
const BlockedLinearOp& ,
61 BlockPreconditionerState& )
const {
73 virtual LinearOp getInvBHBt(
const BlockedLinearOp& ,
74 BlockPreconditionerState& )
const {
86 virtual LinearOp getOuterStabilization(
const BlockedLinearOp& ,
87 BlockPreconditionerState& )
const {
91 virtual LinearOp getInnerStabilization(
const BlockedLinearOp& ,
92 BlockPreconditionerState& )
const {
104 virtual LinearOp getInvMass(
const BlockedLinearOp& ,
105 BlockPreconditionerState& )
const {
117 virtual LinearOp getHScaling(
const BlockedLinearOp& ,
118 BlockPreconditionerState& )
const {
128 virtual bool useFullLDU()
const {
return false; }
135 virtual void setSymmetric(
bool ) {}