10 #ifndef __Teko_DiagnosticPreconditionerFactory_hpp__
11 #define __Teko_DiagnosticPreconditionerFactory_hpp__
13 #include "Teuchos_Time.hpp"
16 #include "Teko_PreconditionerFactory.hpp"
49 const std::string& label,
50 const Teuchos::RCP<std::ostream>& os = Teuchos::null,
51 bool printResidual =
false);
61 const Teuchos::RCP<Teko::InverseFactory>& precFactory,
62 const std::string& label,
63 const Teuchos::RCP<std::ostream>& os = Teuchos::null,
64 bool printResidual =
false);
128 int numInitialBuilds()
const {
return buildTimer_->numCalls(); }
129 double totalInitialBuildTime()
const;
131 int numRebuilds()
const {
return rebuildTimer_->numCalls(); }
132 double totalRebuildTime()
const;
135 void initTimers(
const std::string& label);
137 Teuchos::RCP<std::ostream> outputStream_;
138 Teuchos::RCP<Teko::InverseFactory> invFactory_;
139 Teuchos::RCP<Teko::InverseFactory> precFactory_;
140 std::string diagString_;
143 mutable Teuchos::RCP<Teuchos::Time>
145 mutable Teuchos::RCP<Teuchos::Time>
147 mutable Teuchos::RCP<Teuchos::Time> rebuildTimer_;
148 mutable Teuchos::RCP<Teuchos::Time> precRebuildTimer_;
virtual Teuchos::RCP< Teuchos::ParameterList > getRequestedParameters() const
Request the additional parameters this preconditioner factory needs.
virtual ~DiagnosticPreconditionerFactory()
default destructor: prints out diagnostic string
Abstract class which block preconditioner factories in Teko should be based on.
DiagnosticPreconditionerFactory()
Default constructor, for use with the AutoClone class.
virtual bool updateRequestedParameters(const Teuchos::ParameterList &pl)
Update this object with the fields from a parameter list.
A class which builds a diagnostic operator to wrap the application of the inverse operator...
virtual void initializeFromParameterList(const Teuchos::ParameterList &settings)
This function builds the internals of the preconditioner factory from a parameter list...
An implementation of a state object preconditioners.
virtual LinearOp buildPreconditionerOperator(LinearOp &lo, PreconditionerState &state) const
Function that is called to build the preconditioner for the linear operator that is passed in...