Line data Source code
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 MFEM_ENABLED 11 : 12 : #pragma once 13 : #include "MFEMProblemData.h" 14 : #include "ProblemOperatorInterface.h" 15 : 16 : namespace Moose::MFEM 17 : { 18 : std::vector<std::string> GetTimeDerivativeNames(std::vector<std::string> gridfunction_names); 19 : 20 : /// Problem operator for time-dependent problems with no equation system. The user will need to subclass this since the solve is not 21 : /// implemented. 22 : class TimeDomainProblemOperator : public mfem::TimeDependentOperator, 23 : public ProblemOperatorInterface 24 : { 25 : public: 26 24 : TimeDomainProblemOperator(MFEMProblemData & problem) : ProblemOperatorInterface(problem) {} 27 : 28 : void SetGridFunctions() override; 29 : 30 0 : void ImplicitSolve(const double, const mfem::Vector &, mfem::Vector &) override {} 31 : }; 32 : 33 : } // namespace Moose::MFEM 34 : 35 : #endif