47 #ifndef __Teko_TimingsSIMPLEPreconditionerFactory_hpp__ 48 #define __Teko_TimingsSIMPLEPreconditionerFactory_hpp__ 50 #include "Teko_BlockPreconditionerFactory.hpp" 51 #include "Teko_InverseFactory.hpp" 54 #include "Teuchos_Time.hpp" 84 const Teuchos::RCP<InverseFactory> & invPrsFactory,
99 { massMatrix_ = mass; }
112 Teuchos::RCP<InverseFactory> customHFactory_;
113 Teuchos::RCP<InverseFactory> invVelFactory_;
114 Teuchos::RCP<InverseFactory> invPrsFactory_;
120 Teko::LinearOp massMatrix_;
123 mutable Teuchos::ParameterList BlkDiagList_;
125 mutable Teuchos::Time constrTotal_;
126 mutable Teuchos::Time subTotal_;
127 mutable int constrCount_;
129 mutable Teuchos::RCP<DiagnosticLinearOp> timed_HBt_;
130 mutable Teuchos::RCP<DiagnosticLinearOp> timed_B_;
131 mutable Teuchos::RCP<DiagnosticLinearOp> timed_invF_;
132 mutable Teuchos::RCP<DiagnosticLinearOp> timed_invS_;
133 mutable Teuchos::RCP<DiagnosticLinearOp> timed_iU_t_iL_;
virtual bool updateRequestedParameters(const Teuchos::ParameterList &pl)
For assisting in construction of the preconditioner.
virtual ~TimingsSIMPLEPreconditionerFactory()
Destructor that outputs construction timings.
TimingsSIMPLEPreconditionerFactory()
Default constructor.
virtual void setMassMatrix(Teko::LinearOp &mass)
Set the mass matrix for this factory.
LinearOp buildPreconditionerOperator(BlockedLinearOp &blo, BlockPreconditionerState &state) const
Function that is called to build the preconditioner for the linear operator that is passed in...
Abstract class which block preconditioner factories in Teko should be based on.
virtual void initializeFromParameterList(const Teuchos::ParameterList &pl)
Initialize from a parameter list.
An implementation of a state object for block preconditioners.
virtual Teuchos::RCP< Teuchos::ParameterList > getRequestedParameters() const
For assisting in construction of the preconditioner.
DiagonalType
Type describing the type of diagonal to construct.