10 #ifdef MOOSE_MFEM_ENABLED 22 params.
addClassDescription(
"Class to transfer MFEM variable data to or from a restricted copy of " 23 "the variable defined on " 24 " a subspace of an MFEMMesh, represented as an MFEMSubMesh.");
25 MFEMExecutedObject::addRequiredDependencyParam<VariableName>(
28 "MFEM variable to transfer data from. Can be defined on either the parent mesh or a " 30 params.addRequiredParam<VariableName>(
"to_variable",
31 "MFEM variable to transfer data into. Can be defined on " 32 "either the parent mesh or a submesh of it.");
39 _source_var_name(getParam<VariableName>(
"from_variable")),
40 _source_var(*getMFEMProblem().getGridFunction(_source_var_name)),
41 _result_var_name(getParam<VariableName>(
"to_variable")),
42 _result_var(*getMFEMProblem().getGridFunction(_result_var_name))
46 std::optional<std::string>
MFEMSubMeshTransfer(const InputParameters ¶meters)
static InputParameters validParams()
Base class for MFEM objects that participate in execution ordering but are not UserObjects.
const mfem::ParGridFunction & _source_var
Reference to source gridfunction.
Class to transfer MFEM variable data to or from a restricted copy of the variable defined on an a sub...
static InputParameters validParams()
Declare the common parameters used by MFEM executed objects.
mfem::ParGridFunction & _result_var
Reference to result gridfunction.
virtual void execute() override
Executes the transfer.
registerMooseObject("MooseApp", MFEMSubMeshTransfer)
const VariableName & _result_var_name
Name of MFEMVariable to store the transferred output in.
virtual std::optional< std::string > suppliedVariableName() const override
Return the variable name supplied by this object, or std::nullopt if none.