10 #ifdef MOOSE_MFEM_ENABLED 22 params.
addClassDescription(
"Class to construct an MFEMSubMesh formed from the subspace of the " 23 "parent mesh restricted to the set of user-specified subdomains.");
24 params.
addParam<BoundaryName>(
"submesh_boundary",
"Name to assign submesh boundary.");
37 _submesh = std::make_shared<mfem::ParSubMesh>(
39 _submesh->attribute_sets.attr_sets =
getMesh().attribute_sets.attr_sets;
40 _submesh->bdr_attribute_sets.attr_sets =
getMesh().bdr_attribute_sets.attr_sets;
44 const BoundaryName & submesh_boundary = getParam<BoundaryName>(
"submesh_boundary");
45 _submesh->bdr_attribute_sets.CreateAttributeSet(submesh_boundary);
46 _submesh->bdr_attribute_sets.AddToAttributeSet(submesh_boundary,
47 getMesh().bdr_attributes.Max() + 1);
const mfem::Array< int > & getSubdomainAttributes()
static InputParameters validParams()
static InputParameters validParams()
Constructs and stores an mfem::ParSubMesh object as as a restriction of the parent mesh to the set of...
Base class for construction of a mfem::ParSubMesh object.
MFEMDomainSubMesh(const InputParameters ¶meters)
static InputParameters validParams()
const mfem::ParMesh & getMesh() const
registerMooseObject("MooseApp", MFEMDomainSubMesh)
bool isParamSetByUser(const std::string &name) const
Test if the supplied parameter is set by a user, as opposed to not set or set to default.
std::shared_ptr< mfem::ParSubMesh > _submesh
Stores the constructed submesh.
Base class for construction of an object that is restricted to a subset of subdomains of the problem ...
virtual void buildSubMesh() override
Constructs the submesh.