47#ifndef __Teko_LU2x2DiagonalStrategy_hpp__
48#define __Teko_LU2x2DiagonalStrategy_hpp__
50#include "Teko_LU2x2Strategy.hpp"
53#include "Teuchos_Time.hpp"
73 const Teuchos::RCP<InverseFactory> & invS);
79 virtual const Teko::LinearOp
83 virtual const Teko::LinearOp
87 virtual const Teko::LinearOp
102 const InverseLibrary & invLib);
118 Teuchos::RCP<InverseFactory> invFactoryA00_;
119 Teuchos::RCP<InverseFactory> invFactoryS_;
123 static Teuchos::RCP<Teuchos::Time> initTimer_;
124 static Teuchos::RCP<Teuchos::Time> invSTimer_;
125 static Teuchos::RCP<Teuchos::Time> invA00Timer_;
126 static Teuchos::RCP<Teuchos::Time> opsTimer_;
DiagonalType
Type describing the type of diagonal to construct.
An implementation of a state object for block preconditioners.
Strategy for computing and in the LU2x2PreconditionerFactory. Uses the diagonal of to build .
virtual const Teko::LinearOp getInvS(const Teko::BlockedLinearOp &A, BlockPreconditionerState &state) const
virtual const Teko::LinearOp getTildeInvA00(const Teko::BlockedLinearOp &A, BlockPreconditionerState &state) const
static void buildTimers()
virtual ~LU2x2DiagonalStrategy()
Destructor (does nothing)
virtual const Teko::LinearOp getHatInvA00(const Teko::BlockedLinearOp &A, BlockPreconditionerState &state) const
LU2x2DiagonalStrategy()
default Constructor
void initializeState(const Teko::BlockedLinearOp &A, BlockPreconditionerState &state) const
virtual void initializeFromParameterList(const Teuchos::ParameterList &settings, const InverseLibrary &invLib)
This function builds the internals of the state from a parameter list.
Abstract strategy for computing inv(F) and inv(S) in the LU2x2PreconditionerFactory.