MueLu Version of the Day
Loading...
Searching...
No Matches
MueLu_SolverBase.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_SOLVERBASE_HPP
11#define MUELU_SOLVERBASE_HPP
12
13#include <Xpetra_MultiVector_fwd.hpp>
14#include <Xpetra_Matrix_fwd.hpp>
15
16#include "MueLu_ConfigDefs.hpp"
17#include "MueLu_BaseClass.hpp"
19
20namespace MueLu {
21
27template <class Scalar = DefaultScalar,
30 class Node = DefaultNode>
31class SolverBase : public BaseClass {
32#undef MUELU_SOLVERBASE_SHORT
34
35 public:
38
39 virtual ~SolverBase() {}
41
43
44
52 virtual void Iterate(const Matrix& A, const Constraint& C, const Matrix& P0, RCP<Matrix>& P) const = 0;
53
55
56}; // class SolverBase
57
58} // namespace MueLu
59
60#define MUELU_SOLVERBASE_SHORT
61
62#endif // ifndef MUELU_SOLVERBASE_HPP
MueLu::DefaultLocalOrdinal LocalOrdinal
MueLu::DefaultScalar Scalar
MueLu::DefaultGlobalOrdinal GlobalOrdinal
MueLu::DefaultNode Node
Base class for MueLu classes.
Constraint space information for the potential prolongator.
Base class for energy-minimization iterative solvers.
virtual void Iterate(const Matrix &A, const Constraint &C, const Matrix &P0, RCP< Matrix > &P) const =0
Namespace for MueLu classes and methods.
Tpetra::KokkosClassic::DefaultNode::DefaultNodeType DefaultNode
Tpetra::Details::DefaultTypes::scalar_type DefaultScalar