MFEM v4.7.0
Finite element discretization library
|
Class representing the storage layout of a FaceQuadratureFunction. More...
#include <qspace.hpp>
Public Member Functions | |
FaceQuadratureSpace (Mesh &mesh_, int order_, FaceType face_type_) | |
Create a FaceQuadratureSpace based on the global rules from IntRules. | |
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. | |
int | GetNumFaces () const |
Returns number of faces in the mesh. | |
FaceType | GetFaceType () const |
Returns the face type (boundary or interior). | |
ElementTransformation * | GetTransformation (int idx) override |
Returns the face transformation of face idx. | |
Geometry::Type | GetGeometry (int idx) const override |
Returns the geometry type of face idx. | |
const IntegrationRule & | GetFaceIntRule (int idx) const |
Get the IntegrationRule associated with mesh element idx. | |
int | GetPermutedIndex (int idx, int iq) const override |
Returns the permuted index of the iq quadrature point in entity idx. | |
int | GetMeshFaceIndex (int idx) const |
Get the face index (in the standard Mesh numbering) associated with face idx in the FaceQuadratureSpace. | |
int | GetEntityIndex (const ElementTransformation &T) const override |
Returns the index associated with the face described by T. | |
void | Save (std::ostream &out) const override |
Write the FaceQuadratureSpace to the stream out. | |
Public Member Functions inherited from mfem::QuadratureSpaceBase | |
int | GetSize () const |
Return the total number of quadrature points. | |
int | GetOrder () const |
Return the order of the quadrature rule(s) used by all elements. | |
int | GetNE () const |
Return the number of entities. | |
Mesh * | GetMesh () const |
Returns the mesh. | |
const IntegrationRule & | GetIntRule (int idx) const |
Return the IntegrationRule associated with entity idx. | |
const Vector & | GetWeights () const |
Return the integration weights (including geometric factors). | |
real_t | Integrate (Coefficient &coeff) const |
Return the integral of the scalar Coefficient coeff. | |
void | Integrate (VectorCoefficient &coeff, Vector &integrals) const |
Return the integral of the VectorCoefficient coeff in integrals. | |
virtual | ~QuadratureSpaceBase () |
Additional Inherited Members | |
Protected Member Functions inherited from mfem::QuadratureSpaceBase | |
QuadratureSpaceBase (Mesh &mesh_, int order_=0) | |
Protected constructor. Used by derived classes. | |
QuadratureSpaceBase (Mesh &mesh_, Geometry::Type geom, const IntegrationRule &ir) | |
Protected constructor. Used by derived classes. | |
void | ConstructIntRules (int dim) |
Fill the int_rule array for each geometry type using order. | |
void | ConstructWeights () const |
Compute the integration weights. | |
Protected Attributes inherited from mfem::QuadratureSpaceBase | |
Mesh & | mesh |
The underlying mesh. | |
int | order |
The order of integration rule. | |
int | size |
Total number of quadrature points. | |
Vector | weights |
Integration weights. | |
long | nodes_sequence = 0 |
Nodes counter for cache invalidation. | |
Array< int > | offsets |
Entity quadrature point offset array, of size num_entities + 1. | |
const IntegrationRule * | int_rule [Geometry::NumGeom] |
The quadrature rules used for each geometry type. | |
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 169 of file qspace.hpp.
Create a FaceQuadratureSpace based on the global rules from IntRules.
Definition at line 167 of file qspace.cpp.
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 176 of file qspace.cpp.
|
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 235 of file qspace.cpp.
|
inline |
Get the IntegrationRule associated with mesh element idx.
Definition at line 208 of file qspace.hpp.
|
inline |
Returns the face type (boundary or interior).
Definition at line 197 of file qspace.hpp.
|
inlineoverridevirtual |
Returns the geometry type of face idx.
Implements mfem::QuadratureSpaceBase.
Definition at line 204 of file qspace.hpp.
|
inline |
Get the face index (in the standard Mesh numbering) associated with face idx in the FaceQuadratureSpace.
Definition at line 220 of file qspace.hpp.
|
inline |
Returns number of faces in the mesh.
Definition at line 194 of file qspace.hpp.
|
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 218 of file qspace.cpp.
|
inlineoverridevirtual |
Returns the face transformation of face idx.
Implements mfem::QuadratureSpaceBase.
Definition at line 200 of file qspace.hpp.
|
overridevirtual |
Write the FaceQuadratureSpace to the stream out.
Implements mfem::QuadratureSpaceBase.
Definition at line 257 of file qspace.cpp.