MFEM  v3.1
Finite element discretization library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | List of all members
mfem::miniapps::H1_ParFESpace Class Reference

#include <pfem_extras.hpp>

Inheritance diagram for mfem::miniapps::H1_ParFESpace:
[legend]
Collaboration diagram for mfem::miniapps::H1_ParFESpace:
[legend]

Public Member Functions

 H1_ParFESpace (ParMesh *m, const int p, const int space_dim=3, const int type=0, int vdim=1, int order=Ordering::byNODES)
 
 ~H1_ParFESpace ()
 
- Public Member Functions inherited from mfem::ParFiniteElementSpace
 ParFiniteElementSpace (ParMesh *pm, const FiniteElementCollection *f, int dim=1, int ordering=Ordering::byNODES)
 
MPI_Comm GetComm ()
 
int GetNRanks ()
 
int GetMyRank ()
 
ParMeshGetParMesh ()
 
int GetDofSign (int i)
 
HYPRE_Int * GetDofOffsets ()
 
HYPRE_Int * GetTrueDofOffsets ()
 
HYPRE_Int GlobalVSize ()
 
HYPRE_Int GlobalTrueVSize ()
 
virtual int GetTrueVSize ()
 Return the number of local vector true dofs. More...
 
virtual void GetElementDofs (int i, Array< int > &dofs) const
 Returns indexes of degrees of freedom in array dofs for i'th element. More...
 
virtual void GetBdrElementDofs (int i, Array< int > &dofs) const
 Returns indexes of degrees of freedom for i'th boundary element. More...
 
virtual void GetFaceDofs (int i, Array< int > &dofs) const
 
HypreParMatrixDof_TrueDof_Matrix ()
 The true dof-to-dof interpolation matrix. More...
 
HypreParVectorNewTrueDofVector ()
 
void DivideByGroupSize (double *vec)
 Scale a vector of true dofs. More...
 
GroupCommunicatorGroupComm ()
 Return a reference to the internal GroupCommunicator (on VDofs) More...
 
GroupCommunicatorScalarGroupComm ()
 Return a new GroupCommunicator on Dofs. More...
 
void Synchronize (Array< int > &ldof_marker) const
 
virtual void GetEssentialVDofs (const Array< int > &bdr_attr_is_ess, Array< int > &ess_dofs) const
 Determine the boundary degrees of freedom. More...
 
virtual void GetEssentialTrueDofs (const Array< int > &bdr_attr_is_ess, Array< int > &ess_tdof_list)
 
int GetLocalTDofNumber (int ldof)
 
HYPRE_Int GetGlobalTDofNumber (int ldof)
 Returns the global tdof number of the given local degree of freedom. More...
 
HYPRE_Int GetGlobalScalarTDofNumber (int sldof)
 
HYPRE_Int GetMyDofOffset () const
 
HYPRE_Int GetMyTDofOffset () const
 
virtual const SparseMatrixGetRestrictionMatrix ()
 Get the R matrix which restricts a local dof vector to true dof vector. More...
 
void ExchangeFaceNbrData ()
 
int GetFaceNbrVSize () const
 
void GetFaceNbrElementVDofs (int i, Array< int > &vdofs) const
 
const FiniteElementGetFaceNbrFE (int i) const
 
const HYPRE_Int * GetFaceNbrGlobalDofMap ()
 
void Lose_Dof_TrueDof_Matrix ()
 
void LoseDofOffsets ()
 
void LoseTrueDofOffsets ()
 
bool Conforming () const
 
bool Nonconforming () const
 
virtual void Update ()
 
virtual FiniteElementSpaceSaveUpdate ()
 Return a copy of the current FE space and update. More...
 
virtual ~ParFiniteElementSpace ()
 
int TrueVSize ()
 
- Public Member Functions inherited from mfem::FiniteElementSpace
 FiniteElementSpace (Mesh *m, const FiniteElementCollection *f, int vdim=1, int ordering=Ordering::byNODES)
 
MeshGetMesh () const
 Returns the mesh. More...
 
NURBSExtensionGetNURBSext ()
 
NURBSExtensionStealNURBSext ()
 
bool Conforming () const
 
bool Nonconforming () const
 
const SparseMatrixGetConformingProlongation ()
 
const SparseMatrixGetConformingRestriction ()
 
int GetVDim () const
 Returns vector dimension. More...
 
int GetOrder (int i) const
 Returns the order of the i'th finite element. More...
 
int GetFaceOrder (int i) const
 Returns the order of the i'th face finite element. More...
 
int GetNDofs () const
 Returns number of degrees of freedom. More...
 
int GetVSize () const
 
int GetNConformingDofs ()
 
int GetConformingVSize ()
 
int GetOrdering () const
 Return the ordering method. More...
 
const FiniteElementCollectionFEColl () const
 
int GetNVDofs () const
 
int GetNEDofs () const
 
int GetNFDofs () const
 
int GetNE () const
 Returns number of elements in the mesh. More...
 
int GetNV () const
 Returns number of nodes in the mesh. More...
 
int GetNBE () const
 Returns number of boundary elements in the mesh. More...
 
int GetElementType (int i) const
 Returns the type of element i. More...
 
void GetElementVertices (int i, Array< int > &vertices) const
 Returns the vertices of element i. More...
 
int GetBdrElementType (int i) const
 Returns the type of boundary element i. More...
 
ElementTransformationGetElementTransformation (int i) const
 Returns ElementTransformation for the i'th element. More...
 
void GetElementTransformation (int i, IsoparametricTransformation *ElTr)
 
ElementTransformationGetBdrElementTransformation (int i) const
 Returns ElementTransformation for the i'th boundary element. More...
 
int GetAttribute (int i) const
 
int GetBdrAttribute (int i) const
 
void GetEdgeDofs (int i, Array< int > &dofs) const
 
void GetVertexDofs (int i, Array< int > &dofs) const
 
void GetElementInteriorDofs (int i, Array< int > &dofs) const
 
int GetNumElementInteriorDofs (int i) const
 
void GetEdgeInteriorDofs (int i, Array< int > &dofs) const
 
void DofsToVDofs (Array< int > &dofs) const
 
void DofsToVDofs (int vd, Array< int > &dofs, int ndofs=-1) const
 
int DofToVDof (int dof, int vd, int ndofs=-1) const
 
int VDofToDof (int vdof) const
 
void GetElementVDofs (int i, Array< int > &vdofs) const
 Returns indexes of degrees of freedom in array dofs for i'th element. More...
 
void GetBdrElementVDofs (int i, Array< int > &vdofs) const
 Returns indexes of degrees of freedom for i'th boundary element. More...
 
void GetFaceVDofs (int i, Array< int > &vdofs) const
 Returns indexes of degrees of freedom for i'th face element (2D and 3D). More...
 
void GetEdgeVDofs (int i, Array< int > &vdofs) const
 Returns indexes of degrees of freedom for i'th edge. More...
 
void GetVertexVDofs (int i, Array< int > &vdofs) const
 
void GetElementInteriorVDofs (int i, Array< int > &vdofs) const
 
void GetEdgeInteriorVDofs (int i, Array< int > &vdofs) const
 
void BuildElementToDofTable ()
 
void BuildDofToArrays ()
 
const TableGetElementToDofTable () const
 
const TableGetBdrElementToDofTable () const
 
int GetElementForDof (int i)
 
int GetLocalDofForDof (int i)
 
const FiniteElementGetFE (int i) const
 Returns pointer to the FiniteElement associated with i'th element. More...
 
const FiniteElementGetBE (int i) const
 Returns pointer to the FiniteElement for the i'th boundary element. More...
 
const FiniteElementGetFaceElement (int i) const
 
const FiniteElementGetEdgeElement (int i) const
 
const FiniteElementGetTraceElement (int i, int geom_type) const
 Return the trace element from element 'i' to the given 'geom_type'. More...
 
SparseMatrixGlobalRestrictionMatrix (FiniteElementSpace *cfes, int one_vdim=-1)
 
void ConvertToConformingVDofs (const Array< int > &dofs, Array< int > &cdofs)
 
void ConvertFromConformingVDofs (const Array< int > &cdofs, Array< int > &dofs)
 
void EliminateEssentialBCFromGRM (FiniteElementSpace *cfes, Array< int > &bdr_attr_is_ess, SparseMatrix *R)
 
SparseMatrixGlobalRestrictionMatrix (FiniteElementSpace *cfes, Array< int > &bdr_attr_is_ess, int one_vdim=-1)
 Generate the global restriction matrix with eliminated essential bc. More...
 
SparseMatrixD2C_GlobalRestrictionMatrix (FiniteElementSpace *cfes)
 
SparseMatrixD2Const_GlobalRestrictionMatrix (FiniteElementSpace *cfes)
 
SparseMatrixH2L_GlobalRestrictionMatrix (FiniteElementSpace *lfes)
 
virtual void UpdateAndInterpolate (int num_grid_fns,...)
 
void UpdateAndInterpolate (GridFunction *gf)
 A shortcut for passing only one GridFunction to UndateAndInterpolate. More...
 
void Save (std::ostream &out) const
 
virtual ~FiniteElementSpace ()
 

Additional Inherited Members

- Static Public Member Functions inherited from mfem::FiniteElementSpace
static void AdjustVDofs (Array< int > &vdofs)
 
static void MarkerToList (const Array< int > &marker, Array< int > &list)
 Convert a Boolean marker array to a list containing all marked indices. More...
 
static void ListToMarker (const Array< int > &list, int marker_size, Array< int > &marker, int mark_val=-1)
 
- Public Attributes inherited from mfem::ParFiniteElementSpace
int num_face_nbr_dofs
 
Table face_nbr_element_dof
 
Table face_nbr_ldof
 
Array< HYPRE_Int > face_nbr_glob_dof_map
 
Table send_face_nbr_ldof
 
- Protected Member Functions inherited from mfem::FiniteElementSpace
void UpdateNURBS ()
 
void Constructor ()
 
void Destructor ()
 
 FiniteElementSpace (FiniteElementSpace &)
 
void ConstructRefinementData (int k, int cdofs, RefinementType type)
 Constructs new refinement data using coarse element k as a template. More...
 
DenseMatrixLocalInterpolation (int k, int cdofs, RefinementType type, Array< int > &rows)
 Generates the local interpolation matrix for coarse element k. More...
 
SparseMatrixNC_GlobalRestrictionMatrix (FiniteElementSpace *cfes, NCMesh *ncmesh)
 
void GetEdgeFaceDofs (int type, int index, Array< int > &dofs)
 
void GetConformingInterpolation ()
 
void MakeVDimMatrix (SparseMatrix &mat) const
 
- Protected Attributes inherited from mfem::FiniteElementSpace
Meshmesh
 The mesh that FE space lives on. More...
 
int vdim
 Vector dimension (number of unknowns per degree of freedom). More...
 
int ndofs
 Number of degrees of freedom. Number of unknowns are ndofs*vdim. More...
 
int ordering
 
const FiniteElementCollectionfec
 
int nvdofs
 
int nedofs
 
int nfdofs
 
int nbdofs
 
int * fdofs
 
int * bdofs
 
Array< RefinementData * > RefData
 Collection of currently known refinement data. More...
 
Tableelem_dof
 
TablebdrElem_dof
 
Array< int > dof_elem_array
 
Array< int > dof_ldof_array
 
NURBSExtensionNURBSext
 
int own_ext
 
SparseMatrixcP
 
SparseMatrixcR
 

Detailed Description

The H1_ParFESpace class is a ParFiniteElementSpace which automatically allocates and destroys its own FiniteElementCollection, in this case an H1_FECollection object.

Definition at line 32 of file pfem_extras.hpp.

Constructor & Destructor Documentation

mfem::miniapps::H1_ParFESpace::H1_ParFESpace ( ParMesh m,
const int  p,
const int  space_dim = 3,
const int  type = 0,
int  vdim = 1,
int  order = Ordering::byNODES 
)

Definition at line 26 of file pfem_extras.cpp.

mfem::miniapps::H1_ParFESpace::~H1_ParFESpace ( )

Definition at line 34 of file pfem_extras.cpp.


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