MueLu Version of the Day
Loading...
Searching...
No Matches
MueLu_Details_LinearSolverFactory_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
13
14#ifndef MUELU_DETAILS_LINEARSOLVERFACTORY_DECL_HPP
15#define MUELU_DETAILS_LINEARSOLVERFACTORY_DECL_HPP
16
17#include "MueLu_config.hpp"
18#include "Trilinos_Details_LinearSolverFactory.hpp"
19
20namespace MueLu {
21namespace Details {
22
42template <class MV, class OP, class NormType>
43class LinearSolverFactory : public Trilinos::Details::LinearSolverFactory<MV, OP, NormType> {
44 public:
54 virtual Teuchos::RCP<Trilinos::Details::LinearSolver<MV, OP, NormType> >
55 getLinearSolver(const std::string& solverName);
56
70 static void registerLinearSolverFactory();
71};
72
73} // namespace Details
74} // namespace MueLu
75
76#endif // MUELU_DETAILS_LINEARSOLVERFACTORY_DECL_HPP
Interface for a "factory" that creates MueLu solvers.
static void registerLinearSolverFactory()
Register this LinearSolverFactory with the central registry.
virtual Teuchos::RCP< Trilinos::Details::LinearSolver< MV, OP, NormType > > getLinearSolver(const std::string &solverName)
Get an instance of a MueLu solver.
Namespace for MueLu classes and methods.