https://mooseframework.inl.gov
Loading...
Searching...
No Matches
EigenproblemESProblemOperator.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
16
17namespace Moose::MFEM
18{
19class EigensolverBase;
20
23{
24public:
25 EigenproblemESProblemOperator(MFEMProblem & problem, const std::string & weak_form_name = "");
26
27 virtual void Solve() override;
28
29 [[nodiscard]] EigenproblemEquationSystem * GetEquationSystem() const override
30 {
31 return cast_ptr<EigenproblemEquationSystem *>(
33 }
34
35private:
36 void RecoverEigenproblemSolution(GridFunctions & gridfunctions, EigensolverBase * eigensolver);
37
38protected:
41};
42
43} // namespace Moose::MFEM
44
45#endif
Steady-state eigenproblem operator with an equation system.
EigenproblemEquationSystem * GetEquationSystem() const override
Returns a pointer to the operator's equation system.
void FormEquationSystemOperator()
Form the equation-system operator used by the eigensolver.
void RecoverEigenproblemSolution(GridFunctions &gridfunctions, EigensolverBase *eigensolver)
Equation system specialization for eigenproblems.
Base class for eigensolvers.
Steady-state ProblemOperator that prepares and solves a single EquationSystem.
virtual EquationSystem * GetEquationSystem() const override
Returns a pointer to the operator's equation system.
Utilities for converting between vector(s) of libMesh Points and MFEM Vector(s).