https://mooseframework.inl.gov
Loading...
Searching...
No Matches
MFEMHypreBoomerAMG.h
Go to the documentation of this file.
1//* This file is part of the MOOSE framework
2//* https://mooseframework.inl.gov
3//*
4//* All rights reserved, see COPYRIGHT for full restrictions
5//* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6//*
7//* Licensed under LGPL 2.1, please see LICENSE for details
8//* https://www.gnu.org/licenses/lgpl-2.1.html
9
10#ifdef MOOSE_MFEM_ENABLED
11
12#pragma once
13
15
19class MFEMHypreBoomerAMG : public Moose::MFEM::LORLinearSolverBase<mfem::HypreBoomerAMG>
20{
21public:
23
26
27 void ConstructSolver() override;
28
29protected:
31 virtual void SetSolverParameters(mfem::HypreBoomerAMG & solver) override;
32
33private:
34 std::shared_ptr<mfem::ParFiniteElementSpace> _mfem_fespace{nullptr};
35};
36
37#endif
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
Wrapper for mfem::HypreBoomerAMG solver.
std::shared_ptr< mfem::ParFiniteElementSpace > _mfem_fespace
virtual void SetSolverParameters(mfem::HypreBoomerAMG &solver) override
Update the wrapped MFEM solver parameters.
static InputParameters validParams()
void ConstructSolver() override
Override in derived classes to construct and set the solver options.
Base class for LOR compatible linear MFEM solvers and preconditioners.