35#ifndef NEKTAR_SPATIALDOMAINS_PYRGEOM_H
36#define NEKTAR_SPATIALDOMAINS_PYRGEOM_H
58 std::array<Geometry2D *, kNfaces> faces);
64 int v_GetDir(
const int faceidx,
const int facedir)
const override;
#define SPATIAL_DOMAINS_EXPORT
std::array< Geometry2D *, kNfaces > m_faces
std::array< SegGeom *, kNedges > m_edges
void v_GenGeomFactors() override
std::array< StdRegions::Orientation, kNfaces > m_forient
Geometry1D * v_GetEdge(const int i) const final
Returns edge i of this object.
void SetUpFaceOrientation()
int v_GetNumVerts() const final
Get the number of vertices of this object.
int v_GetDir(const int faceidx, const int facedir) const override
Returns the element coordinate direction corresponding to a given face coordinate direction.
static const std::string XMLElementType
std::array< StdRegions::Orientation, kNedges > m_eorient
void SetUpEdgeOrientation()
void SetUpLocalVertices()
PointGeom * v_GetVertex(const int i) const final
Returns vertex i of this object.
~PyrGeom() override=default
void SetUpXmap()
Set up the m_xmap object by determining the order of each direction from derived faces.
StdRegions::Orientation v_GetForient(const int i) const final
Returns the orientation of face i with respect to the ordering of faces in the standard element.
void v_Reset(CurveMap &curvedEdges, CurveMap &curvedFaces) override
Reset this geometry object: unset the current state, zero Geometry::m_coeffs and remove allocated Geo...
static const int kNtfaces
static const int kNqfaces
static const unsigned int EdgeNormalToFaceVert[5][4]
int v_GetNumEdges() const final
Get the number of edges of this object.
void v_FillGeom() override
Put all quadrature information into face/edge structure and backward transform.
int v_GetNumFaces() const final
Get the number of faces of this object.
Geometry2D * v_GetFace(const int i) const final
Returns face i of this object.
static const int kNfacets
StdRegions::Orientation v_GetEorient(const int i) const final
Returns the orientation of edge i with respect to the ordering of edges in the standard element.
std::array< PointGeom *, kNverts > m_verts
int v_GetEdgeNormalToFaceVert(const int i, const int j) const override
Returns the standard lement edge IDs that are normal to a given face vertex.
std::unordered_map< int, CurveSharedPtr > CurveMap