MueLu  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MueLu_MatrixAnalysisFactory_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_MATRIXANALYSISFACTORY_DECL_HPP_
11 #define MUELU_MATRIXANALYSISFACTORY_DECL_HPP_
12 
13 #include <Xpetra_Map_fwd.hpp>
15 #include <Xpetra_Vector_fwd.hpp>
17 #include <Xpetra_Matrix_fwd.hpp>
18 
19 #include "MueLu_ConfigDefs.hpp"
21 #include "MueLu_Utilities_fwd.hpp"
22 
23 namespace MueLu {
24 
53 template <class Scalar = DefaultScalar,
56  class Node = DefaultNode>
57 class MatrixAnalysisFactory : public TwoLevelFactoryBase {
58 #undef MUELU_MATRIXANALYSISFACTORY_SHORT
59 #include "MueLu_UseShortNames.hpp"
60 
61  public:
63 
64 
67 
69  virtual ~MatrixAnalysisFactory();
70 
72 
73  RCP<const ParameterList> GetValidParameterList() const;
74 
76 
77 
83  void DeclareInput(Level &fineLevel, Level &coarseLevel) const;
84 
86 
88 
89 
91  void Build(Level &fineLevel, Level &coarseLevel) const;
92 
94 
95  private:
96  void checkVectorEntries(const Teuchos::RCP<Vector> &vec, std::string info) const;
97 
98 }; // class MatrixAnalysisFactory
99 
100 } // namespace MueLu
101 
102 #define MUELU_MATRIXANALYSISFACTORY_SHORT
103 
104 #endif /* MUELU_MATRIXANALYSISFACTORY_DECL_HPP_ */
void Build(Level &fineLevel, Level &coarseLevel) const
Build an object with this factory.
MueLu::DefaultLocalOrdinal LocalOrdinal
Tpetra::KokkosClassic::DefaultNode::DefaultNodeType DefaultNode
MueLu::DefaultNode Node
void checkVectorEntries(const Teuchos::RCP< Vector > &vec, std::string info) const
MueLu::DefaultScalar Scalar
Tpetra::Details::DefaultTypes::scalar_type DefaultScalar
MueLu::DefaultGlobalOrdinal GlobalOrdinal
RCP< const ParameterList > GetValidParameterList() const
Return a const parameter list of valid parameters that setParameterList() will accept.
void DeclareInput(Level &fineLevel, Level &coarseLevel) const
Specifies the data that this class needs, and the factories that generate that data.