https://mooseframework.inl.gov
Loading...
Searching...
No Matches
MFEMScalarIC.C
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#include "MFEMScalarIC.h"
13#include "MFEMProblem.h"
14
16
19{
21 params.addClassDescription("Sets the initial values of an MFEM scalar variable from a "
22 "user-specified scalar coefficient.");
23 params.addRequiredParam<MFEMScalarCoefficientName>("coefficient", "The scalar coefficient");
24 return params;
25}
26
28
29void
31{
32 auto & coeff = getScalarCoefficient("coefficient");
33 auto grid_function = getMFEMProblem().getGridFunction(getParam<VariableName>("variable"));
34 grid_function->ProjectCoefficient(coeff);
35}
36
37#endif
registerMooseObject("MooseApp", MFEMScalarIC)
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
Base class used to set the initial value(s) on an MFEMVariable.
static InputParameters validParams()
MFEMProblem & getMFEMProblem()
Return the owning MFEM problem.
Definition MFEMObject.h:45
mfem::Coefficient & getScalarCoefficient(const std::string &name)
Retrieve a scalar MFEM coefficient using the value of an input parameter.
Definition MFEMObject.C:58
std::shared_ptr< mfem::ParGridFunction > getGridFunction(const std::string &name)
Class used to set the initial value(s) on a scalar valued MFEMVariable.
static InputParameters validParams()
virtual void execute() override
Perform the main work for this object.
MFEMScalarIC(const InputParameters &params)