10 #ifdef MOOSE_MFEM_ENABLED 36 inline std::shared_ptr<mfem::ParFiniteElementSpace>
getFESpace()
const 44 inline std::shared_ptr<mfem::FiniteElementCollection>
getFEC()
const 64 virtual int getVDim()
const = 0;
74 mutable std::shared_ptr<mfem::FiniteElementCollection>
_fec{
nullptr};
79 mutable std::shared_ptr<mfem::ParFiniteElementSpace>
_fespace{
nullptr};
Thin base for MFEM objects backed directly by MooseObject instead of UserObject.
virtual int getVDim() const =0
Get the number of degrees of freedom per basis function needed in this finite element space...
const InputParameters & parameters() const
Get the parameters of the object.
const int _ordering
Type of ordering of the vector dofs when _vdim > 1.
MFEMFESpace(const InputParameters ¶meters)
std::shared_ptr< mfem::FiniteElementCollection > getFEC() const
Returns a shared pointer to the constructed fec.
virtual bool isScalar() const =0
void buildFEC() const
Constructs the fec from the fec name.
static InputParameters validParams()
void buildFESpace() const
Constructs the fespace.
virtual std::string getFECName() const =0
Get the name of the desired FECollection.
std::shared_ptr< mfem::FiniteElementCollection > _fec
Stores the constructed fecollection.
mfem::ParMesh & _pmesh
Mesh FESpace is defined with respect to.
Constructs and stores an mfem::ParFiniteElementSpace object.
std::shared_ptr< mfem::ParFiniteElementSpace > _fespace
Stores the constructed fespace.
std::shared_ptr< mfem::ParFiniteElementSpace > getFESpace() const
Returns a shared pointer to the constructed fespace.
virtual bool isVector() const =0