Element types
Below is the currently implemented set of elements organized by vertices, edges, faces, and volumes respectively. If you would like to see an additional element type supported, please file and issue or open a PR.
0-Dimensional Elements
ReferenceFiniteElements.Vertex — Type
struct Vertex <: ReferenceFiniteElements.AbstractVertex1-Dimensional Elements
ReferenceFiniteElements.Edge — Type
struct Edge{PT, PD, Shifted} <: ReferenceFiniteElements.AbstractEdge{PT, PD}2-Dimensional Elements
ReferenceFiniteElements.Quad — Type
struct Quad{PT, PD} <: ReferenceFiniteElements.AbstractQuad{PT, PD}ReferenceFiniteElements.Tri — Type
struct Tri{PT, PD} <: ReferenceFiniteElements.AbstractTri{PT, PD}Enriched elements
Tri{EnrichedLagrange, 2} and Tet{EnrichedLagrange, 2} carry the degree-2 Lagrange space enriched with bubbles in a nodal basis; see EnrichedLagrange.
3-Dimensional Elements
ReferenceFiniteElements.Hex — Type
struct Hex{PT, PD} <: ReferenceFiniteElements.AbstractHex{PT, PD}ReferenceFiniteElements.Tet — Type
struct Tet{PT, PD} <: ReferenceFiniteElements.AbstractTet{PT, PD}Polynomial types
ReferenceFiniteElements.EnrichedLagrange — Type
struct EnrichedLagrange <: ReferenceFiniteElements.AbstractPolynomialTypeLagrange functions of degree $PD$ enriched with bubble functions, carried by a nodal basis (unit value at one node, zero at the others). Implemented at degree 2 for the triangle, the six $P_2$ functions and the cubic interior bubble on seven nodes, and for the tetrahedron, the ten $P_2$ functions, one cubic bubble per face and the quartic interior bubble on fifteen nodes, which is the conforming three-dimensional Crouzeix–Raviart displacement space.
ReferenceFiniteElements.Hermite — Type
struct Hermite <: ReferenceFiniteElements.AbstractPolynomialTypeReferenceFiniteElements.Lagrange — Type
struct Lagrange <: ReferenceFiniteElements.AbstractPolynomialTypeReferenceFiniteElements.NedelecFirstKind — Type
struct NedelecFirstKind <: ReferenceFiniteElements.AbstractPolynomialTypePlanned
ReferenceFiniteElements.NedelecSecondKind — Type
struct NedelecSecondKind <: ReferenceFiniteElements.AbstractPolynomialTypePlanned
ReferenceFiniteElements.NoInterpolation — Type
struct NoInterpolation <: ReferenceFiniteElements.AbstractPolynomialTypespecial type for $Vertex$
ReferenceFiniteElements.RaviartThomas — Type
struct RaviartThomas <: ReferenceFiniteElements.AbstractPolynomialTypeReferenceFiniteElements.Serendipity — Type
struct Serendipity <: ReferenceFiniteElements.AbstractPolynomialTypeQuadrature types
ReferenceFiniteElements.GaussLegendre — Type
struct GaussLegendre{CD, SD} <: AbstractQuadratureType{CD, SD}ReferenceFiniteElements.GaussLobattoLegendre — Type
struct GaussLobattoLegendre{CD, SD} <: AbstractQuadratureType{CD, SD}