|
Nektar++
|
#include <TetGeom.h>


Public Member Functions | |
| TetGeom () | |
| TetGeom (const TriGeomSharedPtr faces[]) | |
| ~TetGeom () | |
Public Member Functions inherited from Nektar::LibUtilities::GraphVertexObject | |
| GraphVertexObject () | |
| GraphVertexObject (const GraphVertexID id) | |
| int | getid () |
| void | setid (const GraphVertexID id) |
| virtual | ~GraphVertexObject () |
Public Member Functions inherited from Nektar::SpatialDomains::Geometry3D | |
| Geometry3D () | |
| Geometry3D (const int coordim) | |
| virtual | ~Geometry3D () |
| int | GetEid (int i) const |
| Return the ID of edge i in this element. | |
| const Geometry1DSharedPtr | GetEdge (int i) const |
| Geometry2DSharedPtr | GetFace (int i) |
| Return face i in this element. | |
| int | GetDir (const int faceidx, const int facedir) const |
| Returns the element coordinate direction corresponding to a given face coordinate direction. | |
Public Member Functions inherited from Nektar::SpatialDomains::Geometry | |
| Geometry () | |
| Geometry (int coordim) | |
| virtual | ~Geometry () |
| bool | IsElmtConnected (int gvo_id, int locid) const |
| void | AddElmtConnected (int gvo_id, int locid) |
| int | NumElmtConnected () const |
| int | GetCoordim () const |
| void | SetCoordim (int coordim) |
| GeomFactorsSharedPtr | GetGeomFactors () |
| GeomFactorsSharedPtr | GetRefGeomFactors (const Array< OneD, const LibUtilities::BasisSharedPtr > &tbasis) |
| GeomFactorsSharedPtr | GetMetricInfo () |
| LibUtilities::ShapeType | GetShapeType (void) |
| int | GetGlobalID (void) |
| void | SetGlobalID (int globalid) |
| int | GetVid (int i) const |
| int | GetFid (int i) const |
| int | GetTid (int i) const |
| int | GetNumVerts () const |
| PointGeomSharedPtr | GetVertex (int i) const |
| StdRegions::Orientation | GetEorient (const int i) const |
| StdRegions::Orientation | GetPorient (const int i) const |
| StdRegions::Orientation | GetForient (const int i) const |
| int | GetNumEdges () const |
| int | GetNumFaces () const |
| int | GetShapeDim () const |
| StdRegions::StdExpansionSharedPtr | GetXmap () const |
| const Array< OneD, const NekDouble > & | GetCoeffs (const int i) const |
| bool | ContainsPoint (const Array< OneD, const NekDouble > &gloCoord, NekDouble tol=0.0) |
| bool | ContainsPoint (const Array< OneD, const NekDouble > &gloCoord, Array< OneD, NekDouble > &locCoord, NekDouble tol) |
| bool | ContainsPoint (const Array< OneD, const NekDouble > &gloCoord, Array< OneD, NekDouble > &locCoord, NekDouble tol, NekDouble &resid) |
| int | GetVertexEdgeMap (int i, int j) const |
| int | GetVertexFaceMap (int i, int j) const |
return the id of the face attached to the vertex | |
| int | GetEdgeFaceMap (int i, int j) const |
| void | FillGeom () |
| Put all quadrature information into face/edge structure and backward transform. | |
| NekDouble | GetLocCoords (const Array< OneD, const NekDouble > &coords, Array< OneD, NekDouble > &Lcoords) |
| NekDouble | GetCoord (const int i, const Array< OneD, const NekDouble > &Lcoord) |
| Given local collapsed coordinate Lcoord return the value of physical coordinate in direction i. | |
| void | SetOwnData () |
| const LibUtilities::BasisSharedPtr | GetBasis (const int i) |
| Return the j-th basis of the i-th co-ordinate dimension. | |
| const LibUtilities::PointsKeyVector | GetPointsKeys () |
Static Public Attributes | |
| static const int | kNverts = 4 |
| static const int | kNedges = 6 |
| static const int | kNqfaces = 0 |
| static const int | kNtfaces = 4 |
| static const int | kNfaces = kNqfaces + kNtfaces |
| static const std::string | XMLElementType |
Protected Member Functions | |
| virtual NekDouble | v_GetLocCoords (const Array< OneD, const NekDouble > &coords, Array< OneD, NekDouble > &Lcoords) |
| Get Local cartesian points. | |
| virtual bool | v_ContainsPoint (const Array< OneD, const NekDouble > &gloCoord, NekDouble tol=0.0) |
| Determines if a point specified in global coordinates is located within this tetrahedral geometry. | |
| virtual bool | v_ContainsPoint (const Array< OneD, const NekDouble > &gloCoord, Array< OneD, NekDouble > &locCoord, NekDouble tol) |
| virtual bool | v_ContainsPoint (const Array< OneD, const NekDouble > &gloCoord, Array< OneD, NekDouble > &locCoord, NekDouble tol, NekDouble &resid) |
| Determines if a point specified in global coordinates is located within this tetrahedral geometry and return local caretsian coordinates. | |
| virtual int | v_GetNumVerts () const |
| virtual int | v_GetNumEdges () const |
| virtual int | v_GetNumFaces () const |
| virtual int | v_GetVertexEdgeMap (const int i, const int j) const |
| virtual int | v_GetVertexFaceMap (const int i, const int j) const |
| virtual int | v_GetEdgeFaceMap (const int i, const int j) const |
| virtual int | v_GetDir (const int faceidx, const int facedir) const |
Protected Member Functions inherited from Nektar::SpatialDomains::Geometry3D | |
| void | NewtonIterationForLocCoord (const Array< OneD, const NekDouble > &coords, const Array< OneD, const NekDouble > &ptsx, const Array< OneD, const NekDouble > &ptsy, const Array< OneD, const NekDouble > &ptsz, Array< OneD, NekDouble > &Lcoords, NekDouble &resid) |
| virtual void | v_FillGeom () |
| Put all quadrature information into face/edge structure and backward transform. | |
| virtual NekDouble | v_GetCoord (const int i, const Array< OneD, const NekDouble > &Lcoord) |
| Given local collapsed coordinate Lcoord return the value of physical coordinate in direction i. | |
| virtual void | v_GenGeomFactors () |
| virtual int | v_GetShapeDim () const |
| Return the dimension of this element. | |
| virtual int | v_GetVid (int i) const |
| Return the vertex ID of vertex i. | |
| virtual PointGeomSharedPtr | v_GetVertex (int i) const |
| Return vertex i in this element. | |
| virtual const SegGeomSharedPtr | v_GetEdge (int i) const |
| Return edge i of this element. | |
| virtual StdRegions::Orientation | v_GetEorient (const int i) const |
| Return the orientation of edge i in this element. | |
| virtual int | v_GetEid (int i) const |
| Return the ID of edge i in this element. | |
| virtual const Geometry2DSharedPtr | v_GetFace (int i) const |
| Return face i in this element. | |
| virtual StdRegions::Orientation | v_GetForient (const int i) const |
| Return the orientation of face i in this element. | |
| virtual int | v_GetFid (int i) const |
| Return the ID of face i in this element. | |
| virtual int | v_GetEid () const |
| Return the ID of this element. | |
| virtual int | v_WhichEdge (SegGeomSharedPtr edge) |
| Return the local ID of a given edge. | |
| virtual int | v_WhichFace (Geometry2DSharedPtr face) |
| Return the local ID of a given face. | |
| virtual const LibUtilities::BasisSharedPtr | v_GetBasis (const int i) |
| Return the j-th basis of the i-th co-ordinate dimension. | |
| virtual void | v_AddElmtConnected (int gvo_id, int locid) |
| virtual bool | v_IsElmtConnected (int gvo_id, int locid) const |
| virtual int | v_NumElmtConnected () const |
| virtual void | v_SetOwnData () |
Protected Member Functions inherited from Nektar::SpatialDomains::Geometry | |
| void | GenGeomFactors () |
| virtual StdRegions::Orientation | v_GetPorient (const int i) const |
| virtual StdRegions::StdExpansionSharedPtr | v_GetXmap () const |
| virtual int | v_GetCoordim () const |
| void | SetUpCoeffs (const int nCoeffs) |
Private Member Functions | |
| void | SetUpLocalEdges () |
| void | SetUpLocalVertices () |
| void | SetUpEdgeOrientation () |
| void | SetUpFaceOrientation () |
Static Private Attributes | |
| static const unsigned int | VertexEdgeConnectivity [4][3] |
| static const unsigned int | VertexFaceConnectivity [4][3] |
| static const unsigned int | EdgeFaceConnectivity [6][2] |
Additional Inherited Members | |
Static Protected Member Functions inherited from Nektar::SpatialDomains::Geometry | |
| static GeomFactorsSharedPtr | ValidateRegGeomFactor (GeomFactorsSharedPtr geomFactor) |
Protected Attributes inherited from Nektar::LibUtilities::GraphVertexObject | |
| GraphVertexID | m_id |
Protected Attributes inherited from Nektar::SpatialDomains::Geometry3D | |
| PointGeomVector | m_verts |
| SegGeomVector | m_edges |
| Geometry2DVector | m_faces |
| std::vector < StdRegions::Orientation > | m_eorient |
| std::vector < StdRegions::Orientation > | m_forient |
| std::list< CompToElmt > | m_elmtmap |
| bool | m_owndata |
| int | m_eid |
| bool | m_ownverts |
Static Protected Attributes inherited from Nektar::SpatialDomains::Geometry | |
| static GeomFactorsVector | m_regGeomFactorsManager |
| Nektar::SpatialDomains::TetGeom::TetGeom | ( | ) |
Definition at line 53 of file TetGeom.cpp.
References Nektar::LibUtilities::eTetrahedron, and Nektar::SpatialDomains::Geometry::m_shapeType.
| Nektar::SpatialDomains::TetGeom::TetGeom | ( | const TriGeomSharedPtr | faces[] | ) |
Copy the face shared pointers
Set up orientation vectors with correct amount of elements.
Determine necessary order for standard region.
Definition at line 58 of file TetGeom.cpp.
References Nektar::LibUtilities::eGaussLobattoLegendre, Nektar::LibUtilities::eGaussRadauMAlpha1Beta0, Nektar::LibUtilities::eGaussRadauMAlpha2Beta0, Nektar::LibUtilities::eModified_A, Nektar::LibUtilities::eModified_B, Nektar::LibUtilities::eModified_C, Nektar::LibUtilities::eTetrahedron, Nektar::SpatialDomains::Geometry::GetXmap(), kNedges, kNfaces, Nektar::SpatialDomains::Geometry3D::m_eorient, Nektar::SpatialDomains::Geometry3D::m_faces, Nektar::SpatialDomains::Geometry3D::m_forient, Nektar::SpatialDomains::Geometry::m_shapeType, Nektar::SpatialDomains::Geometry::m_xmap, Nektar::SpatialDomains::Geometry::SetUpCoeffs(), SetUpEdgeOrientation(), SetUpFaceOrientation(), SetUpLocalEdges(), and SetUpLocalVertices().
| Nektar::SpatialDomains::TetGeom::~TetGeom | ( | ) |
Definition at line 126 of file TetGeom.cpp.
|
private |
Definition at line 527 of file TetGeom.cpp.
References ASSERTL0, Nektar::StdRegions::eBackwards, Nektar::StdRegions::eForwards, Nektar::SpatialDomains::Geometry::GetVid(), kNedges, Nektar::SpatialDomains::Geometry3D::m_edges, Nektar::SpatialDomains::Geometry3D::m_eorient, and Nektar::SpatialDomains::Geometry3D::m_verts.
Referenced by TetGeom().
|
private |
Definition at line 559 of file TetGeom.cpp.
References ASSERTL0, ASSERTL1, Nektar::SpatialDomains::Geometry::GetVertex(), Nektar::SpatialDomains::Geometry::GetVid(), Nektar::NekConstants::kNekZeroTol, kNfaces, kNqfaces, kNtfaces, kNverts, Nektar::SpatialDomains::Geometry::m_coordim, Nektar::SpatialDomains::Geometry3D::m_faces, Nektar::SpatialDomains::Geometry3D::m_forient, and Nektar::SpatialDomains::Geometry3D::m_verts.
Referenced by TetGeom().
|
private |
Definition at line 341 of file TetGeom.cpp.
References ASSERTL0, Nektar::SpatialDomains::Geometry3D::GetEdge(), Nektar::SpatialDomains::Geometry3D::GetEid(), Nektar::SpatialDomains::Geometry::GetFid(), Nektar::SpatialDomains::Geometry3D::m_edges, and Nektar::SpatialDomains::Geometry3D::m_faces.
Referenced by TetGeom().
|
private |
Definition at line 455 of file TetGeom.cpp.
References ASSERTL0, Nektar::SpatialDomains::Geometry::GetVertex(), Nektar::SpatialDomains::Geometry::GetVid(), Nektar::SpatialDomains::Geometry3D::m_edges, and Nektar::SpatialDomains::Geometry3D::m_verts.
Referenced by TetGeom().
|
protectedvirtual |
Determines if a point specified in global coordinates is located within this tetrahedral geometry.
Reimplemented from Nektar::SpatialDomains::Geometry.
Definition at line 135 of file TetGeom.cpp.
References Nektar::SpatialDomains::Geometry::GetCoordim().
Referenced by v_ContainsPoint().
|
protectedvirtual |
Reimplemented from Nektar::SpatialDomains::Geometry.
Definition at line 142 of file TetGeom.cpp.
References v_ContainsPoint().
|
protectedvirtual |
Determines if a point specified in global coordinates is located within this tetrahedral geometry and return local caretsian coordinates.
Reimplemented from Nektar::SpatialDomains::Geometry.
Definition at line 154 of file TetGeom.cpp.
References ASSERTL1, Nektar::SpatialDomains::eRegular, Nektar::SpatialDomains::Geometry::GetMetricInfo(), Nektar::SpatialDomains::Geometry::m_coeffs, Nektar::SpatialDomains::Geometry::m_xmap, npts, Nektar::SpatialDomains::Geometry3D::v_FillGeom(), v_GetLocCoords(), Vmath::Vmax(), and Vmath::Vmin().
|
protectedvirtual |
Implements Nektar::SpatialDomains::Geometry3D.
Definition at line 310 of file TetGeom.cpp.
|
protectedvirtual |
Reimplemented from Nektar::SpatialDomains::Geometry.
Definition at line 336 of file TetGeom.cpp.
References EdgeFaceConnectivity.
|
protectedvirtual |
Get Local cartesian points.
Reimplemented from Nektar::SpatialDomains::Geometry.
Definition at line 213 of file TetGeom.cpp.
References Nektar::SpatialDomains::PointGeom::dot(), Nektar::SpatialDomains::eRegular, Nektar::SpatialDomains::Geometry::GetMetricInfo(), Vmath::Imin(), Nektar::SpatialDomains::Geometry::m_coeffs, Nektar::SpatialDomains::Geometry::m_coordim, Nektar::SpatialDomains::Geometry3D::m_verts, Nektar::SpatialDomains::Geometry::m_xmap, Nektar::SpatialDomains::PointGeom::Mult(), Nektar::SpatialDomains::Geometry3D::NewtonIterationForLocCoord(), npts, Vmath::Sadd(), Nektar::SpatialDomains::PointGeom::Sub(), Nektar::SpatialDomains::Geometry3D::v_FillGeom(), Vmath::Vmul(), and Vmath::Vvtvp().
Referenced by v_ContainsPoint().
|
protectedvirtual |
Reimplemented from Nektar::SpatialDomains::Geometry.
Definition at line 300 of file TetGeom.cpp.
|
protectedvirtual |
Reimplemented from Nektar::SpatialDomains::Geometry.
Definition at line 305 of file TetGeom.cpp.
|
protectedvirtual |
Reimplemented from Nektar::SpatialDomains::Geometry.
Definition at line 295 of file TetGeom.cpp.
|
protectedvirtual |
Reimplemented from Nektar::SpatialDomains::Geometry.
Definition at line 326 of file TetGeom.cpp.
References VertexEdgeConnectivity.
|
protectedvirtual |
Reimplemented from Nektar::SpatialDomains::Geometry.
Definition at line 331 of file TetGeom.cpp.
References VertexFaceConnectivity.
|
staticprivate |
Definition at line 99 of file TetGeom.h.
Referenced by v_GetEdgeFaceMap().
|
static |
Definition at line 57 of file TetGeom.h.
Referenced by SetUpEdgeOrientation(), and TetGeom().
Definition at line 60 of file TetGeom.h.
Referenced by Nektar::SpatialDomains::MeshGraph3D::ReadElements(), SetUpFaceOrientation(), and TetGeom().
|
static |
Definition at line 58 of file TetGeom.h.
Referenced by Nektar::SpatialDomains::MeshGraph3D::ReadElements(), and SetUpFaceOrientation().
|
static |
Definition at line 59 of file TetGeom.h.
Referenced by Nektar::SpatialDomains::MeshGraph3D::ReadElements(), and SetUpFaceOrientation().
|
static |
Definition at line 56 of file TetGeom.h.
Referenced by SetUpFaceOrientation().
|
staticprivate |
Definition at line 97 of file TetGeom.h.
Referenced by v_GetVertexEdgeMap().
|
staticprivate |
Definition at line 98 of file TetGeom.h.
Referenced by v_GetVertexFaceMap().
|
static |
1.8.1.2