10#ifdef MOOSE_MFEM_ENABLED
29 _eigensolver->SetMassMatrix(cast_ref<mfem::HypreParMatrix &>(mass));
36 virtual void GetEigenvalues(mfem::Array<mfem::real_t> & eigenvalues)
const override
42 virtual const mfem::HypreParVector &
GetEigenvector(
int index)
const override
56 _eigensolver->SetOperator(cast_ref<const mfem::HypreParMatrix &>(op));
Class for the HypreAME eigensolver.
virtual const mfem::HypreParVector & GetEigenvector(int index) const override
Retrieves the computed eigenvector corresponding to the given index.
virtual void ConstructSolver() override
Override in derived classes to construct and set the solver options.
virtual void SetOperatorImpl(const mfem::Operator &op) override
Sets the operator for the eigensolver w/ the necessary casting.
static InputParameters validParams()
virtual void SetMassMatrix(mfem::Operator &mass) override
Sets the mass matrix for the eigensolver.
virtual void Solve() override
Solves the eigenvalue problem.
virtual void GetEigenvalues(mfem::Array< mfem::real_t > &eigenvalues) const override
Retrieves the computed eigenvalues.
std::unique_ptr< mfem::HypreAME > _eigensolver
Eigensolver to be used for the problem.
virtual void SetPreconditionerImpl() override
Override in solvers that accept a preconditioner.
const InputParameters & parameters() const
Get the parameters of the object.
Base class for eigensolvers.