MFEM  v3.3.2
Finite element discretization library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | Static Public Member Functions | Static Protected Member Functions | List of all members
mfem::FiniteElementCollection Class Referenceabstract

#include <fe_coll.hpp>

Inherited by mfem::Const2DFECollection, mfem::Const3DFECollection, mfem::CrouzeixRaviartFECollection, mfem::CubicDiscont2DFECollection, mfem::CubicFECollection, mfem::GaussLinearDiscont2DFECollection, mfem::GaussQuadraticDiscont2DFECollection, mfem::H1_FECollection, mfem::L2_FECollection, mfem::LinearDiscont2DFECollection, mfem::LinearDiscont3DFECollection, mfem::LinearFECollection, mfem::LinearNonConf3DFECollection, mfem::Local_FECollection, mfem::ND1_3DFECollection, mfem::ND_FECollection, mfem::NURBSFECollection, mfem::P1OnQuadFECollection, mfem::QuadraticDiscont2DFECollection, mfem::QuadraticDiscont3DFECollection, mfem::QuadraticFECollection, mfem::QuadraticPosDiscont2DFECollection, mfem::QuadraticPosFECollection, mfem::RefinedLinearFECollection, mfem::RT0_2DFECollection, mfem::RT0_3DFECollection, mfem::RT1_2DFECollection, mfem::RT1_3DFECollection, mfem::RT2_2DFECollection, and mfem::RT_FECollection.

Public Member Functions

virtual const FiniteElementFiniteElementForGeometry (int GeomType) const =0
 
virtual int DofForGeometry (int GeomType) const =0
 
virtual int * DofOrderForOrientation (int GeomType, int Or) const =0
 
virtual const char * Name () const
 
int HasFaceDofs (int GeomType) const
 
virtual const FiniteElementTraceFiniteElementForGeometry (int GeomType) const
 
virtual FiniteElementCollectionGetTraceCollection () const
 
virtual ~FiniteElementCollection ()
 
void SubDofOrder (int Geom, int SDim, int Info, Array< int > &dofs) const
 Get the local dofs for a given sub-manifold. More...
 

Static Public Member Functions

static FiniteElementCollectionNew (const char *name)
 Factory method: return a newly allocated FiniteElementCollection according to the given name. More...
 

Static Protected Member Functions

template<Geometry::Type geom>
static void GetNVE (int &nv, int &ne)
 
template<Geometry::Type geom, typename v_t >
static void GetEdge (int &nv, v_t &v, int &ne, int &e, int &eo, const int edge_info)
 
template<Geometry::Type geom, Geometry::Type f_geom, typename v_t , typename e_t , typename eo_t >
static void GetFace (int &nv, v_t &v, int &ne, e_t &e, eo_t &eo, int &nf, int &f, int &fg, int &fo, const int face_info)
 

Detailed Description

Collection of finite elements from the same family in multiple dimensions. This class is used to match the degrees of freedom of a FiniteElementSpace between elements, and to provide the finite element restriction from an element to its boundary.

Definition at line 93 of file fe_coll.hpp.

Constructor & Destructor Documentation

virtual mfem::FiniteElementCollection::~FiniteElementCollection ( )
inlinevirtual

Definition at line 129 of file fe_coll.hpp.

Member Function Documentation

virtual int mfem::FiniteElementCollection::DofForGeometry ( int  GeomType) const
pure virtual
virtual int* mfem::FiniteElementCollection::DofOrderForOrientation ( int  GeomType,
int  Or 
) const
pure virtual
virtual const FiniteElement* mfem::FiniteElementCollection::FiniteElementForGeometry ( int  GeomType) const
pure virtual
template<Geometry::Type geom, typename v_t >
void mfem::FiniteElementCollection::GetEdge ( int &  nv,
v_t &  v,
int &  ne,
int &  e,
int &  eo,
const int  edge_info 
)
inlinestaticprotected

Definition at line 288 of file fe_coll.cpp.

template<Geometry::Type geom, Geometry::Type f_geom, typename v_t , typename e_t , typename eo_t >
void mfem::FiniteElementCollection::GetFace ( int &  nv,
v_t &  v,
int &  ne,
e_t &  e,
eo_t &  eo,
int &  nf,
int &  f,
int &  fg,
int &  fo,
const int  face_info 
)
inlinestaticprotected

Definition at line 308 of file fe_coll.cpp.

template<Geometry::Type geom>
void mfem::FiniteElementCollection::GetNVE ( int &  nv,
int &  ne 
)
inlinestaticprotected

Definition at line 278 of file fe_coll.cpp.

FiniteElementCollection * mfem::FiniteElementCollection::GetTraceCollection ( ) const
virtual
int mfem::FiniteElementCollection::HasFaceDofs ( int  GeomType) const

Definition at line 25 of file fe_coll.cpp.

virtual const char* mfem::FiniteElementCollection::Name ( ) const
inlinevirtual
FiniteElementCollection * mfem::FiniteElementCollection::New ( const char *  name)
static

Factory method: return a newly allocated FiniteElementCollection according to the given name.

Definition at line 44 of file fe_coll.cpp.

void mfem::FiniteElementCollection::SubDofOrder ( int  Geom,
int  SDim,
int  Info,
Array< int > &  dofs 
) const

Get the local dofs for a given sub-manifold.

Return the local dofs for a SDim-dimensional sub-manifold (0D - vertex, 1D - edge, 2D - face) including those on its boundary. The local index of the sub-manifold (inside Geom) and its orientation are given by the parameter Info = 64 * SubIndex + SubOrientation. Naturally, it is assumed that 0 <= SDim <= Dim(Geom).

Definition at line 353 of file fe_coll.cpp.

virtual const FiniteElement* mfem::FiniteElementCollection::TraceFiniteElementForGeometry ( int  GeomType) const
inlinevirtual

Reimplemented in mfem::L2_FECollection.

Definition at line 121 of file fe_coll.hpp.


The documentation for this class was generated from the following files: