36 #ifndef NekMeshUtils_MESHELEMENTS_TET
37 #define NekMeshUtils_MESHELEMENTS_TET
44 namespace NekMeshUtils
55 std::vector<NodeSharedPtr> pNodeList,
56 std::vector<int> pTagList)
58 return boost::shared_ptr<Element>(
65 std::vector<NodeSharedPtr> pNodeList,
66 std::vector<int> pTagList);
75 std::vector<NodeSharedPtr> &nodeList)
const;
84 bool justConfig =
false);
static ElementSharedPtr create(ElmtConfig pConf, std::vector< NodeSharedPtr > pNodeList, std::vector< int > pTagList)
Creates an instance of this class.
virtual NEKMESHUTILS_EXPORT void GetCurvedNodes(std::vector< NodeSharedPtr > &nodeList) const
get list of volume interior nodes
A 3-dimensional four-faced element.
Basic information about an element.
virtual NEKMESHUTILS_EXPORT StdRegions::Orientation GetEdgeOrient(int edgeId, EdgeSharedPtr edge)
Get the edge orientation of edge with respect to the local element, which lies at edge index edgeId...
virtual NEKMESHUTILS_EXPORT ~Tetrahedron()
virtual NEKMESHUTILS_EXPORT SpatialDomains::GeometrySharedPtr GetGeom(int coordDim)
Generate a Nektar++ geometry object for this element.
virtual NEKMESHUTILS_EXPORT int GetFaceVertex(int i, int j)
Returns the local index of vertex j of face i.
static LibUtilities::ShapeType m_type
Element type.
static int m_faceIds[4][3]
Vertex IDs that make up tetrahedron faces.
void OrientTet()
Orient tetrahedron to align degenerate vertices.
boost::shared_ptr< Edge > EdgeSharedPtr
Shared pointer to an edge.
static NEKMESHUTILS_EXPORT unsigned int GetNumNodes(ElmtConfig pConf)
Return the number of nodes defining a tetrahedron.
#define NEKMESHUTILS_EXPORT
virtual NEKMESHUTILS_EXPORT void MakeOrder(int order, SpatialDomains::GeometrySharedPtr geom, LibUtilities::PointsType pType, int coordDim, int &id, bool justConfig=false)
Insert interior (i.e. volume) points into this element to make the geometry an order order representa...
boost::shared_ptr< Element > ElementSharedPtr
NEKMESHUTILS_EXPORT Tetrahedron(ElmtConfig pConf, std::vector< NodeSharedPtr > pNodeList, std::vector< int > pTagList)
Create a tetrahedron element.
boost::shared_ptr< Geometry > GeometrySharedPtr
Base class for element definitions.