Advanced Multi-Physics (AMP)
On-Line Documentation
HypreGMRESSolver.h
Go to the documentation of this file.
1#ifndef included_AMP_HypreGMRESSolver
2#define included_AMP_HypreGMRESSolver
3
4
5#include "AMP/matrices/Matrix.h"
6#include "AMP/solvers/SolverStrategy.h"
7#include "AMP/solvers/SolverStrategyParameters.h"
8#include "AMP/solvers/hypre/HypreSolver.h"
9
10namespace AMP::LinearAlgebra {
11class HypreMatrixAdaptor;
12}
13
14namespace AMP::Solver {
15
16
18
19
27{
28
29public:
34
41 explicit HypreGMRESSolver( std::shared_ptr<HypreGMRESSolverParameters> parameters );
42
47
48 std::string type() const override { return "HypreGMRESSolver"; }
49
51 static std::unique_ptr<SolverStrategy>
52 createSolver( std::shared_ptr<SolverStrategyParameters> solverStrategyParameters )
53 {
54 return std::make_unique<HypreGMRESSolver>( solverStrategyParameters );
55 }
56
66 void initialize( std::shared_ptr<const SolverStrategyParameters> parameters ) override;
67
68 void getFromInput( std::shared_ptr<const AMP::Database> db );
69
70 void reset( std::shared_ptr<SolverStrategyParameters> params ) override;
71
72private:
73 void setupHypreSolver( std::shared_ptr<const SolverStrategyParameters> parameters );
75 int d_iMaxKrylovDim = 100;
76};
77} // namespace AMP::Solver
78
79#endif
void reset(std::shared_ptr< SolverStrategyParameters > params) override
void setupHypreSolver(std::shared_ptr< const SolverStrategyParameters > parameters)
void initialize(std::shared_ptr< const SolverStrategyParameters > parameters) override
static std::unique_ptr< SolverStrategy > createSolver(std::shared_ptr< SolverStrategyParameters > solverStrategyParameters)
static create routine that is used by SolverFactory
void getFromInput(std::shared_ptr< const AMP::Database > db)
std::string type() const override
Return the name of the solver.
HypreGMRESSolver(std::shared_ptr< HypreGMRESSolverParameters > parameters)
std::shared_ptr< AMP::Solver::SolverStrategy > shared_ptr



Advanced Multi-Physics (AMP)
Oak Ridge National Laboratory
Idaho National Laboratory
Los Alamos National Laboratory
This page automatically produced from the
source code by doxygen
Last updated: Tue Mar 10 2026 13:06:41.
Comments on this page