![]() |
v0.15.0 |
High-order geometry operators for finite element computations. More...
Go to the source code of this file.
Classes | |
| struct | MoFEM::OpCalculateHOJacForVolume |
| Calculate Jacobian on Hex or other volume elements which are not simplex. More... | |
| struct | MoFEM::OpCalculateHOCoords< FIELD_DIM > |
| Calculate high-order coordinates at Gauss points. More... | |
| struct | MoFEM::OpSetHOInvJacToScalarBasesImpl |
| struct | MoFEM::OpSetHOInvJacToScalarBases< DIM > |
| Set inverse jacobian to base functions. More... | |
| struct | MoFEM::OpSetHOInvJacToScalarBases< 2 > |
| struct | MoFEM::OpSetHOInvJacVectorBase |
| Transform local reference derivatives of shape functions to global derivatives. More... | |
| struct | MoFEM::OpSetHOWeightsOnFace |
| Modify integration weights on face to take into account higher-order geometry. More... | |
| struct | MoFEM::OpSetHOWeightsOnEdge |
| Modify integration weights on edge to take into account higher-order geometry. More... | |
| struct | MoFEM::OpSetHOWeightsOnSubDim< 2 > |
| struct | MoFEM::OpSetHOWeightsOnSubDim< 3 > |
| struct | MoFEM::OpSetHOWeights |
| Set integration weights for higher-order elements. More... | |
| struct | MoFEM::OpSetHOContravariantPiolaTransform |
| Apply contravariant (Piola) transformation to Hdiv space for HO geometry. More... | |
| struct | MoFEM::OpSetHOCovariantPiolaTransform |
| Apply covariant (Piola) transformation to Hcurl space for HO geometry. More... | |
| struct | MoFEM::OpCalculateHOJacForFaceImpl< 2 > |
| struct | MoFEM::OpCalculateHOJacForFaceImpl< 3 > |
| struct | MoFEM::OpCalculateHOJac< 3 > |
| struct | MoFEM::OpCalculateHOJac< 2 > |
| struct | MoFEM::OpGetHONormalsOnFace< FIELD_DIM > |
| Calculate normal vectors at Gauss points of face elements. More... | |
| struct | MoFEM::OpHOSetContravariantPiolaTransformOnFace3D |
| Transform Hdiv base fluxes from reference element to physical face in 3D. More... | |
| struct | MoFEM::OpHOSetContravariantPiolaTransformOnEdge3D |
| Transform Hcurl base functions from reference element to physical edge in 3D. More... | |
| struct | MoFEM::OpHOSetCovariantPiolaTransformOnFace3D |
| Transform Hcurl base functions from reference element to physical face in 3D. More... | |
| struct | MoFEM::OpGetHOTangentsOnEdge< FIELD_DIM > |
| Calculate tangent vector on edge from HO geometry approximation. More... | |
| struct | MoFEM::OpScaleBaseBySpaceInverseOfMeasure |
| Scale base functions by inverses of measure of element. More... | |
| struct | MoFEM::AddHOOps< 2, 2, 2 > |
| Specialization for 2D face elements in 2D problems with 2D space. More... | |
| struct | MoFEM::AddHOOps< 2, 2, 3 > |
| Specialization for 2D face elements in 2D problems embedded in 3D space. More... | |
| struct | MoFEM::AddHOOps< 1, 2, 2 > |
| Specialization for 1D edge elements in 2D problems with 2D space. More... | |
| struct | MoFEM::AddHOOps< 1, 3, 3 > |
| Specialization for 1D edge elements in 3D problems with 3D space. More... | |
| struct | MoFEM::AddHOOps< 2, 3, 3 > |
| Specialization for 2D face elements in 3D problems with 3D space. More... | |
| struct | MoFEM::AddHOOps< 3, 3, 3 > |
| Specialization for 3D volume elements in 3D problems with 3D space. More... | |
Namespaces | |
| namespace | MoFEM |
| implementation of Data Operators for Forces and Sources | |
Typedefs | |
| using | MoFEM::OpCalculateHOJacVolume = OpCalculateHOJacForVolume |
| using | MoFEM::OpCalculateHOJacForFace = OpCalculateHOJacForFaceImpl< 2 > |
| using | MoFEM::OpCalculateHOJacForFaceEmbeddedIn3DSpace = OpCalculateHOJacForFaceImpl< 3 > |
Functions | |
| template<typename E > | |
| MoFEMErrorCode | MoFEM::addHOOpsVol (const std::string field, E &e, bool h1, bool hcurl, bool hdiv, bool l2) |
| template<typename E > | |
| MoFEMErrorCode | MoFEM::addHOOpsFace3D (const std::string field, E &e, bool hcurl, bool hdiv) |
High-order geometry operators for finite element computations.
This file provides operators for managing high-order (curved) geometry in finite element analysis. These operators handle geometric transformations, coordinate mappings, and basis function modifications required when elements have curved boundaries or use high-order shape functions.
Jacobian Calculations: Compute transformation matrices between reference and physical coordinates for curved elements (OpCalculateHOJacForVolume, OpCalculateHOJacForFace, OpGetHOTangentsOnEdge, OpGetHONormalsOnFace)
Coordinate Transformations: Calculate physical coordinates at integration points using high-order approximations (OpCalculateHOCoords)
Basis Function Transformations: Apply Piola transforms and inverse Jacobian operations to basis functions for H1, Hdiv, and Hcurl spaces (OpSetHOContravariantPiolaTransform, OpSetHOCovariantPiolaTransform)
Integration Weight Corrections: Adjust integration weights to account for geometric distortions in curved elements (OpSetHOWeights, OpSetHOWeightsOnFace)
Pipeline Management: AddHOOps template specializations automatically add appropriate HO operators to finite element pipelines based on element dimension and problem type
Definition in file HODataOperators.hpp.