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.
virtual Teuchos::RCP< Teuchos::ParameterList > getRequestedParameters() const
For assisting in construction of the preconditioner.
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.
DiagonalType
Type describing the type of diagonal to construct.
LinearOp buildPreconditionerOperator(BlockedLinearOp &blo, BlockPreconditionerState &state) const
Function that is called to build the preconditioner for the linear operator that is passed in...