MueLu  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MueLu_EminPFactory_decl.hpp
Go to the documentation of this file.
1 // @HEADER
2 // *****************************************************************************
3 // MueLu: A package for multigrid based preconditioning
4 //
5 // Copyright 2012 NTESS and the MueLu contributors.
6 // SPDX-License-Identifier: BSD-3-Clause
7 // *****************************************************************************
8 // @HEADER
9 
10 #ifndef MUELU_EMINPFACTORY_DECL_HPP
11 #define MUELU_EMINPFACTORY_DECL_HPP
12 
13 #include "MueLu_ConfigDefs.hpp"
14 
15 #include <Xpetra_Matrix_fwd.hpp>
17 
19 
20 #include "MueLu_CGSolver_fwd.hpp"
21 #include "MueLu_Constraint_fwd.hpp"
23 #include "MueLu_Level_fwd.hpp"
24 #include "MueLu_PerfUtils_fwd.hpp"
25 #include "MueLu_PFactory.hpp"
26 #include "MueLu_SolverBase_fwd.hpp"
28 
29 namespace MueLu {
30 
37 template <class Scalar = DefaultScalar,
40  class Node = DefaultNode>
41 class EminPFactory : public PFactory {
42 #undef MUELU_EMINPFACTORY_SHORT
43 #include "MueLu_UseShortNames.hpp"
44 
45  public:
47 
48 
51 
53  virtual ~EminPFactory() {}
54 
56 
58 
60 
61 
62  void DeclareInput(Level& fineLevel, Level& coarseLevel) const;
63 
65 
67 
68 
74  void Build(Level& fineLevel, Level& coarseLevel) const;
75  void BuildP(Level& fineLevel, Level& coarseLevel) const;
76 
78 
79 }; // class EminPFactory
80 
81 } // namespace MueLu
82 
83 #define MUELU_EMINPFACTORY_SHORT
84 #endif // MUELU_EMINPFACTORY_DECL_HPP
MueLu::DefaultLocalOrdinal LocalOrdinal
void Build(Level &fineLevel, Level &coarseLevel) const
Build method.
Tpetra::KokkosClassic::DefaultNode::DefaultNodeType DefaultNode
void BuildP(Level &fineLevel, Level &coarseLevel) const
Abstract Build method.
MueLu::DefaultNode Node
MueLu::DefaultScalar Scalar
Tpetra::Details::DefaultTypes::scalar_type DefaultScalar
MueLu::DefaultGlobalOrdinal GlobalOrdinal
Class that holds all level-specific information.
Definition: MueLu_Level.hpp:63
virtual ~EminPFactory()
Destructor.
void DeclareInput(Level &fineLevel, Level &coarseLevel) const
Input.
Factory for building Energy Minimization prolongators.
Factory that provides an interface for a concrete implementation of a prolongation operator...
RCP< const ParameterList > GetValidParameterList() const
Return a const parameter list of valid parameters that setParameterList() will accept.