MueLu  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MueLu_GMRESSolver_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_GMRESSOLVER_DECL_HPP
11 #define MUELU_GMRESSOLVER_DECL_HPP
12 
15 #include <Xpetra_Matrix_fwd.hpp>
16 
17 #include "MueLu_ConfigDefs.hpp"
18 #include "MueLu_SolverBase.hpp"
19 #include "MueLu_Constraint_fwd.hpp"
20 #include "MueLu_Utilities_fwd.hpp"
21 
22 namespace MueLu {
23 
39 template <class Scalar = DefaultScalar,
42  class Node = DefaultNode>
43 class GMRESSolver : public SolverBase<Scalar, LocalOrdinal, GlobalOrdinal, Node> {
44 #undef MUELU_GMRESSOLVER_SHORT
45 #include "MueLu_UseShortNames.hpp"
46 
47  public:
49 
50 
54  GMRESSolver(size_t Its);
55 
57 
59 
60 
62  void Iterate(const Matrix& A, const Constraint& C, const Matrix& P0, RCP<Matrix>& P) const;
63 
65 
66  private:
67  void givapp(SC* c, SC* s, SC* v, int k) const;
68 
69  private:
70  size_t nIts_;
71 };
72 
73 } // namespace MueLu
74 
75 #define MUELU_GMRESSOLVER_SHORT
76 #endif // MUELU_GMRESSOLVER_DECL_HPP
MueLu::DefaultLocalOrdinal LocalOrdinal
void givapp(SC *c, SC *s, SC *v, int k) const
Tpetra::KokkosClassic::DefaultNode::DefaultNodeType DefaultNode
size_t nIts_
Number of performed iterations.
Constraint space information for the potential prolongator.
MueLu::DefaultNode Node
Implements conjugate gradient algorithm for energy-minimization.
MueLu::DefaultScalar Scalar
Tpetra::Details::DefaultTypes::scalar_type DefaultScalar
MueLu::DefaultGlobalOrdinal GlobalOrdinal
void Iterate(const Matrix &A, const Constraint &C, const Matrix &P0, RCP< Matrix > &P) const
Iterate.
Scalar SC
Base class for energy-minimization iterative solvers.