Teko  Version of the Day
 All Classes Files Functions Variables Pages
Teko_IterativePreconditionerFactory.hpp
1 // @HEADER
2 // *****************************************************************************
3 // Teko: A package for block and physics based preconditioning
4 //
5 // Copyright 2010 NTESS and the Teko contributors.
6 // SPDX-License-Identifier: BSD-3-Clause
7 // *****************************************************************************
8 // @HEADER
9 
10 #ifndef __Teko_IterativePreconditionerFactory_hpp__
11 #define __Teko_IterativePreconditionerFactory_hpp__
12 
13 // Teko includes
14 #include "Teko_PreconditionerFactory.hpp"
15 
16 namespace Teko {
17 
61  public:
64 
75  IterativePreconditionerFactory(unsigned int correctionNum,
76  const Teuchos::RCP<Teko::InverseFactory>& precFactory);
77 
88  IterativePreconditionerFactory(unsigned int correctionNum,
89  const Teuchos::RCP<Teko::PreconditionerFactory>& precFactory);
90 
104  virtual LinearOp buildPreconditionerOperator(LinearOp& lo, PreconditionerState& state) const;
105 
107 
108 
119  virtual void initializeFromParameterList(const Teuchos::ParameterList& settings);
120 
133  virtual Teuchos::RCP<Teuchos::ParameterList> getRequestedParameters() const;
134 
146  virtual bool updateRequestedParameters(const Teuchos::ParameterList& pl);
147 
149 
150  protected:
151  unsigned int correctionNum_;
152  Teuchos::RCP<Teko::InverseFactory> precFactory_;
153 };
154 
155 } // end namespace Teko
156 
157 #endif
IterativePreconditionerFactory()
Default constructor, for use with the AutoClone class.
Abstract class which block preconditioner factories in Teko should be based on.
virtual Teuchos::RCP< Teuchos::ParameterList > getRequestedParameters() const
Request the additional parameters this preconditioner factory needs.
virtual void initializeFromParameterList(const Teuchos::ParameterList &settings)
This function builds the internals of the preconditioner factory from a parameter list...
virtual LinearOp buildPreconditionerOperator(LinearOp &lo, PreconditionerState &state) const
Function that is called to build the preconditioner for the linear operator that is passed in...
A class which applies a preconditioner repeatedly. The inherit assumption is that the preconditioner ...
An implementation of a state object preconditioners.
virtual bool updateRequestedParameters(const Teuchos::ParameterList &pl)
Update this object with the fields from a parameter list.