MFEM  v4.6.0
Finite element discretization library
Public Member Functions | List of all members
mfem::FaceQuadratureSpace Class Reference

Class representing the storage layout of a FaceQuadratureFunction. More...

#include <qspace.hpp>

Inheritance diagram for mfem::FaceQuadratureSpace:
[legend]
Collaboration diagram for mfem::FaceQuadratureSpace:
[legend]

Public Member Functions

 FaceQuadratureSpace (Mesh &mesh_, int order_, FaceType face_type_)
 Create a FaceQuadratureSpace based on the global rules from IntRules. More...
 
 FaceQuadratureSpace (Mesh &mesh_, const IntegrationRule &ir, FaceType face_type_)
 Create a FaceQuadratureSpace with an IntegrationRule, valid only when the mesh has one type of face geometry. More...
 
int GetNumFaces () const
 Returns number of faces in the mesh. More...
 
FaceType GetFaceType () const
 Returns the face type (boundary or interior). More...
 
ElementTransformationGetTransformation (int idx) override
 Returns the face transformation of face idx. More...
 
Geometry::Type GetGeometry (int idx) const override
 Returns the geometry type of face idx. More...
 
const IntegrationRuleGetFaceIntRule (int idx) const
 Get the IntegrationRule associated with mesh element idx. More...
 
int GetPermutedIndex (int idx, int iq) const override
 Returns the permuted index of the iq quadrature point in entity idx. More...
 
int GetEntityIndex (const ElementTransformation &T) const override
 Returns the index associated with the face described by T. More...
 
void Save (std::ostream &out) const override
 Write the FaceQuadratureSpace to the stream out. More...
 
- Public Member Functions inherited from mfem::QuadratureSpaceBase
int GetSize () const
 Return the total number of quadrature points. More...
 
int GetOrder () const
 Return the order of the quadrature rule(s) used by all elements. More...
 
int GetNE () const
 Return the number of entities. More...
 
MeshGetMesh () const
 Returns the mesh. More...
 
const IntegrationRuleGetIntRule (int idx) const
 Return the IntegrationRule associated with entity idx. More...
 
virtual ~QuadratureSpaceBase ()
 

Additional Inherited Members

- Protected Member Functions inherited from mfem::QuadratureSpaceBase
 QuadratureSpaceBase (Mesh &mesh_, int order_=0)
 Protected constructor. Used by derived classes. More...
 
 QuadratureSpaceBase (Mesh &mesh_, Geometry::Type geom, const IntegrationRule &ir)
 Protected constructor. Used by derived classes. More...
 
void ConstructIntRules (int dim)
 Fill the int_rule array for each geometry type using order. More...
 
- Protected Attributes inherited from mfem::QuadratureSpaceBase
Meshmesh
 The underlying mesh. More...
 
int order
 The order of integration rule. More...
 
int size
 Total number of quadrature points. More...
 
Array< int > offsets
 Entity quadrature point offset array, of size num_entities + 1. More...
 
const IntegrationRuleint_rule [Geometry::NumGeom]
 The quadrature rules used for each geometry type. More...
 

Detailed Description

Class representing the storage layout of a FaceQuadratureFunction.

FaceQuadratureSpace is defined on either the interior or boundary faces of a mesh, depending on the provided FaceType.

Definition at line 150 of file qspace.hpp.

Constructor & Destructor Documentation

◆ FaceQuadratureSpace() [1/2]

mfem::FaceQuadratureSpace::FaceQuadratureSpace ( Mesh mesh_,
int  order_,
FaceType  face_type_ 
)

Create a FaceQuadratureSpace based on the global rules from IntRules.

Definition at line 97 of file qspace.cpp.

◆ FaceQuadratureSpace() [2/2]

mfem::FaceQuadratureSpace::FaceQuadratureSpace ( Mesh mesh_,
const IntegrationRule ir,
FaceType  face_type_ 
)

Create a FaceQuadratureSpace with an IntegrationRule, valid only when the mesh has one type of face geometry.

Definition at line 106 of file qspace.cpp.

Member Function Documentation

◆ GetEntityIndex()

int mfem::FaceQuadratureSpace::GetEntityIndex ( const ElementTransformation T) const
overridevirtual

Returns the index associated with the face described by T.

The index may differ from the mesh face or boundary element index depending on the FaceType used to construct the FaceQuadratureSpace.

Implements mfem::QuadratureSpaceBase.

Definition at line 165 of file qspace.cpp.

◆ GetFaceIntRule()

const IntegrationRule& mfem::FaceQuadratureSpace::GetFaceIntRule ( int  idx) const
inline

Get the IntegrationRule associated with mesh element idx.

Definition at line 188 of file qspace.hpp.

◆ GetFaceType()

FaceType mfem::FaceQuadratureSpace::GetFaceType ( ) const
inline

Returns the face type (boundary or interior).

Definition at line 177 of file qspace.hpp.

◆ GetGeometry()

Geometry::Type mfem::FaceQuadratureSpace::GetGeometry ( int  idx) const
inlineoverridevirtual

Returns the geometry type of face idx.

Implements mfem::QuadratureSpaceBase.

Definition at line 184 of file qspace.hpp.

◆ GetNumFaces()

int mfem::FaceQuadratureSpace::GetNumFaces ( ) const
inline

Returns number of faces in the mesh.

Definition at line 174 of file qspace.hpp.

◆ GetPermutedIndex()

int mfem::FaceQuadratureSpace::GetPermutedIndex ( int  idx,
int  iq 
) const
overridevirtual

Returns the permuted index of the iq quadrature point in entity idx.

For tensor-product faces, returns the lexicographic index of the quadrature point, oriented relative to "element 1".

Implements mfem::QuadratureSpaceBase.

Definition at line 148 of file qspace.cpp.

◆ GetTransformation()

ElementTransformation* mfem::FaceQuadratureSpace::GetTransformation ( int  idx)
inlineoverridevirtual

Returns the face transformation of face idx.

Implements mfem::QuadratureSpaceBase.

Definition at line 180 of file qspace.hpp.

◆ Save()

void mfem::FaceQuadratureSpace::Save ( std::ostream &  out) const
overridevirtual

Write the FaceQuadratureSpace to the stream out.

Implements mfem::QuadratureSpaceBase.

Definition at line 180 of file qspace.cpp.


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