Nektar++
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Friends | List of all members
Nektar::SpatialDomains::PointGeom Class Reference

#include <PointGeom.h>

Inheritance diagram for Nektar::SpatialDomains::PointGeom:
Inheritance graph
[legend]
Collaboration diagram for Nektar::SpatialDomains::PointGeom:
Collaboration graph
[legend]

Public Member Functions

 PointGeom ()
 
 PointGeom (const int coordim, const int vid, NekDouble x, NekDouble y, NekDouble z)
 
 PointGeom (const PointGeom &T)
 
 ~PointGeom ()
 
void AddElmtConnected (int gvo_id, int locid)
 
int NumElmtConnected () const
 
bool IsElmtConnected (int gvo_id, int locid) const
 
void GetCoords (NekDouble &x, NekDouble &y, NekDouble &z)
 
void GetCoords (Array< OneD, NekDouble > &coords)
 
void UpdatePosition (NekDouble x, NekDouble y, NekDouble z)
 
int GetVid () const
 
void SetVid (const int vid)
 
void Mult (PointGeom &a, PointGeom &b)
 
void Add (PointGeom &a, PointGeom &b)
 
void Sub (PointGeom &a, PointGeom &b)
 
NekDouble dist (PointGeom &a)
 
NekDouble dot (PointGeom &a)
 
- Public Member Functions inherited from Nektar::SpatialDomains::Geometry0D
 Geometry0D ()
 
 Geometry0D (const int coordim)
 
virtual ~Geometry0D ()
 
- 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 GetEid (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 $j^{th}$ face attached to the $ i^{th}$ vertex More...
 
int GetEdgeFaceMap (int i, int j) const
 
void FillGeom ()
 Put all quadrature information into face/edge structure and backward transform. More...
 
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. More...
 
void SetOwnData ()
 
const LibUtilities::BasisSharedPtr GetBasis (const int i)
 Return the j-th basis of the i-th co-ordinate dimension. More...
 
const LibUtilities::PointsKeyVector GetPointsKeys ()
 
void Reset (CurveMap &curvedEdges, CurveMap &curvedFaces)
 
- Public Member Functions inherited from Nektar::NekPoint< NekDouble >
 NekPoint ()
 
 NekPoint (const std::string &pointValues)
 
 NekPoint (typename boost::call_traits< DataType >::param_type x, typename boost::call_traits< DataType >::param_type y, typename boost::call_traits< DataType >::param_type z)
 
 NekPoint (typename boost::call_traits< DataType >::const_reference a)
 
 NekPoint (const NekPoint< DataType > &rhs)
 
 ~NekPoint ()
 
NekPoint< DataType > & operator= (const NekPoint< DataType > &rhs)
 
boost::call_traits< DataType >::reference operator() (unsigned int i)
 Returns i^{th} element. More...
 
boost::call_traits< DataType >::const_reference operator() (unsigned int i) const
 
boost::call_traits< DataType >::reference operator[] (unsigned int i)
 
boost::call_traits< DataType >::const_reference operator[] (unsigned int i) const
 
boost::call_traits< DataType >::const_reference x () const
 
boost::call_traits< DataType >::reference x ()
 
boost::call_traits< DataType >::const_reference y () const
 
boost::call_traits< DataType >::reference y ()
 
boost::call_traits< DataType >::const_reference z () const
 
boost::call_traits< DataType >::reference z ()
 
boost::call_traits< DataType >::const_reference a () const
 
boost::call_traits< DataType >::const_reference b () const
 
boost::call_traits< DataType >::const_reference c () const
 
boost::call_traits< DataType >::const_reference r () const
 
boost::call_traits< DataType >::const_reference s () const
 
boost::call_traits< DataType >::const_reference t () const
 
void SetX (typename boost::call_traits< DataType >::const_reference val)
 
void SetY (typename boost::call_traits< DataType >::const_reference val)
 
void SetZ (typename boost::call_traits< DataType >::const_reference val)
 
const DataTypeGetPtr () const
 
bool operator== (const NekPoint< DataType > &rhs) const
 
bool operator!= (const NekPoint< DataType > &rhs) const
 
void negate ()
 Arithmetic Routines. More...
 
NekPoint< DataTypeoperator- () const
 
NekPoint< DataType > & operator+= (const NekPoint< DataType > &rhs)
 
NekPoint< DataType > & operator+= (typename boost::call_traits< DataType >::param_type rhs)
 
NekPoint< DataType > & operator-= (const NekPoint< DataType > &rhs)
 
NekPoint< DataType > & operator-= (typename boost::call_traits< DataType >::param_type rhs)
 
NekPoint< DataType > & operator*= (typename boost::call_traits< DataType >::param_type rhs)
 
NekPoint< DataType > & operator/= (typename boost::call_traits< DataType >::param_type rhs)
 
std::string AsString () const
 

Static Public Member Functions

static StdRegions::Orientation GetPointOrientation (const SegGeom &edge1, const SegGeom &edge2)
 Get the orientation of point1; to be used later for normal convention. More...
 
- Static Public Member Functions inherited from Nektar::NekPoint< NekDouble >
static unsigned int dimension ()
 Returns the number of dimensions for the point. More...
 

Protected Member Functions

virtual void v_GenGeomFactors ()
 
virtual int v_GetVid (int id) const
 
virtual PointGeomSharedPtr v_GetVertex (int i) const
 
- Protected Member Functions inherited from Nektar::SpatialDomains::Geometry
void GenGeomFactors ()
 
virtual bool v_IsElmtConnected (int gvo_id, int locid) const
 
virtual void v_AddElmtConnected (int gvo_id, int locid)
 
virtual int v_NumElmtConnected () const
 
virtual int v_GetEid (int i) const
 
virtual int v_GetFid (int i) const
 
virtual int v_GetNumVerts () const
 
virtual StdRegions::Orientation v_GetEorient (const int i) const
 
virtual StdRegions::Orientation v_GetPorient (const int i) const
 
virtual StdRegions::Orientation v_GetForient (const int i) const
 
virtual int v_GetNumEdges () const
 
virtual int v_GetNumFaces () const
 
virtual int v_GetShapeDim () const
 
virtual StdRegions::StdExpansionSharedPtr v_GetXmap () const
 
virtual int v_GetCoordim () const
 
virtual bool v_ContainsPoint (const Array< OneD, const NekDouble > &gloCoord, NekDouble tol=0.0)
 
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)
 
virtual int v_GetVertexEdgeMap (int i, int j) const
 
virtual int v_GetVertexFaceMap (int i, int j) const
 
virtual int v_GetEdgeFaceMap (int i, int j) const
 
virtual void v_FillGeom ()
 
virtual void v_SetOwnData ()
 
virtual const LibUtilities::BasisSharedPtr v_GetBasis (const int i)
 
virtual void v_Reset (CurveMap &curvedEdges, CurveMap &curvedFaces)
 Reset this geometry object: unset the current state and remove allocated GeomFactors. More...
 
void SetUpCoeffs (const int nCoeffs)
 Initialise the m_coeffs array. More...
 

Protected Attributes

int m_vid
 
std::list< CompToElmtm_elmtMap
 
- Protected Attributes inherited from Nektar::SpatialDomains::Geometry
int m_coordim
 coordinate dimension More...
 
GeomFactorsSharedPtr m_geomFactors
 
GeomState m_geomFactorsState
 
StdRegions::StdExpansionSharedPtr m_xmap
 
GeomState m_state
 enum identifier to determine if quad points are filled More...
 
GeomType m_geomType
 
LibUtilities::ShapeType m_shapeType
 
int m_globalID
 
Array< OneD, Array< OneD, NekDouble > > m_coeffs
 

Private Member Functions

virtual NekDouble v_GetCoord (const int i, const Array< OneD, const NekDouble > &Lcoord)
 
virtual NekDouble v_GetLocCoords (const Array< OneD, const NekDouble > &coords, Array< OneD, NekDouble > &Lcoords)
 

Friends

bool operator== (const PointGeom &x, const PointGeom &y)
 Determine equivalence by the ids. No matter what the position, if the ids are the same, then they are equivalent, and vice versa. More...
 
bool operator== (const PointGeom &x, const PointGeom *y)
 
bool operator== (const PointGeom *x, const PointGeom &y)
 
bool operator!= (const PointGeom &x, const PointGeom &y)
 
bool operator!= (const PointGeom &x, const PointGeom *y)
 
bool operator!= (const PointGeom *x, const PointGeom &y)
 

Additional Inherited Members

- Public Types inherited from Nektar::NekPoint< NekDouble >
typedef NekDouble DataType
 
typedef ThreeD dim
 
- Static Protected Member Functions inherited from Nektar::SpatialDomains::Geometry
static GeomFactorsSharedPtr ValidateRegGeomFactor (GeomFactorsSharedPtr geomFactor)
 
- Static Protected Attributes inherited from Nektar::SpatialDomains::Geometry
static GeomFactorsVector m_regGeomFactorsManager
 

Detailed Description

Definition at line 60 of file PointGeom.h.

Constructor & Destructor Documentation

Nektar::SpatialDomains::PointGeom::PointGeom ( )

Definition at line 51 of file PointGeom.cpp.

References Nektar::LibUtilities::ePoint, Nektar::SpatialDomains::Geometry::m_coordim, Nektar::SpatialDomains::Geometry::m_shapeType, and m_vid.

Referenced by v_GetVertex().

52  : NekPoint<NekDouble>(0.0, 0.0, 0.0)
53  {
55  m_coordim = 0;
56  m_vid = 0;
57  }
LibUtilities::ShapeType m_shapeType
Definition: Geometry.h:177
int m_coordim
coordinate dimension
Definition: Geometry.h:169
Nektar::SpatialDomains::PointGeom::PointGeom ( const int  coordim,
const int  vid,
NekDouble  x,
NekDouble  y,
NekDouble  z 
)

Definition at line 59 of file PointGeom.cpp.

References Nektar::LibUtilities::ePoint, Nektar::SpatialDomains::Geometry::m_coordim, Nektar::SpatialDomains::Geometry::m_globalID, Nektar::SpatialDomains::Geometry::m_shapeType, and m_vid.

61  : NekPoint<NekDouble>(x,y,z)
62  {
64  m_coordim = coordim;
65  m_vid = vid;
66  m_globalID = vid;
67 
68  (*this)(0) = x;
69  (*this)(1) = y;
70  (*this)(2) = z;
71  }
boost::call_traits< DataType >::const_reference y() const
Definition: NekPoint.hpp:170
boost::call_traits< DataType >::const_reference z() const
Definition: NekPoint.hpp:176
boost::call_traits< DataType >::const_reference x() const
Definition: NekPoint.hpp:164
LibUtilities::ShapeType m_shapeType
Definition: Geometry.h:177
int m_coordim
coordinate dimension
Definition: Geometry.h:169
Nektar::SpatialDomains::PointGeom::PointGeom ( const PointGeom T)

Definition at line 75 of file PointGeom.cpp.

References Nektar::SpatialDomains::Geometry::m_coordim, m_elmtMap, Nektar::SpatialDomains::Geometry::m_globalID, Nektar::SpatialDomains::Geometry::m_shapeType, and m_vid.

75  : NekPoint<NekDouble>(T)
76  {
77  m_shapeType = T.m_shapeType;
78  m_vid = T.m_vid;
79  m_coordim = T.m_coordim;
80  m_globalID = T.m_globalID;
81 
82  std::list<CompToElmt>::const_iterator def;
83  for(def = T.m_elmtMap.begin(); def != T.m_elmtMap.end(); def++)
84  {
85  m_elmtMap.push_back(*def);
86  }
87  }
std::list< CompToElmt > m_elmtMap
Definition: PointGeom.h:108
LibUtilities::ShapeType m_shapeType
Definition: Geometry.h:177
int m_coordim
coordinate dimension
Definition: Geometry.h:169
Nektar::SpatialDomains::PointGeom::~PointGeom ( )

Definition at line 90 of file PointGeom.cpp.

91  {
92  }

Member Function Documentation

void Nektar::SpatialDomains::PointGeom::Add ( PointGeom a,
PointGeom b 
)

Definition at line 159 of file PointGeom.cpp.

References Nektar::SpatialDomains::Geometry::GetCoordim(), and Nektar::SpatialDomains::Geometry::m_coordim.

160  {
161  (*this)(0) = a[0] + b[0];
162  (*this)(1) = a[1] + b[1];
163  (*this)(2) = a[2] + b[2];
164  m_coordim = std::max(a.GetCoordim(),b.GetCoordim());
165  }
boost::call_traits< DataType >::const_reference a() const
Definition: NekPoint.hpp:182
boost::call_traits< DataType >::const_reference b() const
Definition: NekPoint.hpp:188
int m_coordim
coordinate dimension
Definition: Geometry.h:169
void Nektar::SpatialDomains::PointGeom::AddElmtConnected ( int  gvo_id,
int  locid 
)

Definition at line 95 of file PointGeom.cpp.

References m_elmtMap.

96  {
97  CompToElmt ee(gvo_id,locid);
98  m_elmtMap.push_back(ee);
99  }
std::list< CompToElmt > m_elmtMap
Definition: PointGeom.h:108
NekDouble Nektar::SpatialDomains::PointGeom::dist ( PointGeom a)

Definition at line 186 of file PointGeom.cpp.

References Nektar::NekPoint< NekDouble >::x(), Nektar::NekPoint< data_type >::x(), Nektar::NekPoint< data_type >::y(), Nektar::NekPoint< NekDouble >::y(), Nektar::NekPoint< data_type >::z(), and Nektar::NekPoint< NekDouble >::z().

Referenced by GetNewVertexLocation(), Nektar::SpatialDomains::TetGeom::v_GetLocCoords(), Nektar::SpatialDomains::PyrGeom::v_GetLocCoords(), Nektar::SpatialDomains::PrismGeom::v_GetLocCoords(), and Nektar::SpatialDomains::HexGeom::v_GetLocCoords().

187  {
188  return sqrt((x()-a.x())*(x()-a.x()) + (y()-a.y())*(y()-a.y()) + (z()-a.z())*(z()-a.z()));
189  }
boost::call_traits< DataType >::const_reference y() const
Definition: NekPoint.hpp:170
boost::call_traits< DataType >::const_reference a() const
Definition: NekPoint.hpp:182
boost::call_traits< DataType >::const_reference z() const
Definition: NekPoint.hpp:176
boost::call_traits< DataType >::const_reference x() const
Definition: NekPoint.hpp:164
NekDouble Nektar::SpatialDomains::PointGeom::dot ( PointGeom a)
void Nektar::SpatialDomains::PointGeom::GetCoords ( NekDouble x,
NekDouble y,
NekDouble z 
)

Definition at line 122 of file PointGeom.cpp.

References Nektar::SpatialDomains::Geometry::m_coordim.

Referenced by Nektar::LocalRegions::PointExp::GetCoords(), and Nektar::LocalRegions::PointExp::v_GetCoords().

123  {
124  switch(m_coordim)
125  {
126  case 3:
127  z = (*this)(2);
128  case 2:
129  y = (*this)(1);
130  case 1:
131  x = (*this)(0);
132  break;
133  }
134  }
boost::call_traits< DataType >::const_reference y() const
Definition: NekPoint.hpp:170
boost::call_traits< DataType >::const_reference z() const
Definition: NekPoint.hpp:176
boost::call_traits< DataType >::const_reference x() const
Definition: NekPoint.hpp:164
int m_coordim
coordinate dimension
Definition: Geometry.h:169
void Nektar::SpatialDomains::PointGeom::GetCoords ( Array< OneD, NekDouble > &  coords)

Definition at line 136 of file PointGeom.cpp.

References Nektar::SpatialDomains::Geometry::m_coordim.

137  {
138  switch(m_coordim)
139  {
140  case 3:
141  coords[2] = (*this)(2);
142  case 2:
143  coords[1] = (*this)(1);
144  case 1:
145  coords[0] = (*this)(0);
146  break;
147  }
148  }
int m_coordim
coordinate dimension
Definition: Geometry.h:169
StdRegions::Orientation Nektar::SpatialDomains::PointGeom::GetPointOrientation ( const SegGeom edge1,
const SegGeom edge2 
)
static

Get the orientation of point1; to be used later for normal convention.

If edge1 is connected to edge2 in the same direction as the points comprising edge1 then it is forward, otherwise it is backward.

For example, assume edge1 is comprised of points 1 and 2, and edge2 is comprised of points 2 and 3, then edge1 is forward.

If edge1 is comprised of points 2 and 1 and edge2 is comprised of points 3 and 2, then edge1 is backward.

Since both edges are passed, it does not need any information from the EdgeComponent instance.

Backward direction. Vertex 0 is connected to edge 2.

Definition at line 269 of file PointGeom.cpp.

References ASSERTL0, Nektar::StdRegions::eBwd, Nektar::StdRegions::eFwd, Nektar::SpatialDomains::Geometry1D::GetEid(), and Nektar::SpatialDomains::Geometry1D::GetVertex().

270  {
272 
273  /// Backward direction. Vertex 0 is connected to edge 2.
274  if ((*edge1.GetVertex(0) == *edge2.GetVertex(0)) ||
275  (*edge1.GetVertex(0) == *edge2.GetVertex(1)))
276  {
277  returnval = StdRegions::eBwd;
278  }
279 
280  // Not forward either, then we have a problem.
281  else if ((*edge1.GetVertex(1) != *edge2.GetVertex(0)) &&
282  (*edge1.GetVertex(1) != *edge2.GetVertex(1)))
283  {
284  std::ostringstream errstrm;
285  errstrm << "Connected edges do not share a vertex. Edges ";
286  errstrm << edge1.GetEid() << ", " << edge2.GetEid();
287  ASSERTL0(false, errstrm.str());
288  }
289 
290  return returnval;
291  }
#define ASSERTL0(condition, msg)
Definition: ErrorUtil.hpp:161
int Nektar::SpatialDomains::PointGeom::GetVid ( ) const
inline

Definition at line 78 of file PointGeom.h.

References m_vid.

79  {
80  return m_vid;
81  }
bool Nektar::SpatialDomains::PointGeom::IsElmtConnected ( int  gvo_id,
int  locid 
) const

Definition at line 106 of file PointGeom.cpp.

References Nektar::StdRegions::find(), and m_elmtMap.

107  {
108 
109  std::list<CompToElmt>::const_iterator def;
110  CompToElmt ee(gvo_id,locid);
111 
112  def = find(m_elmtMap.begin(),m_elmtMap.end(),ee);
113 
114  // Found the element connectivity object in the list
115  if(def != m_elmtMap.end())
116  {
117  return(true);
118  }
119  return(false);
120  }
std::list< CompToElmt > m_elmtMap
Definition: PointGeom.h:108
InputIterator find(InputIterator first, InputIterator last, InputIterator startingpoint, const EqualityComparable &value)
Definition: StdRegions.hpp:312
void Nektar::SpatialDomains::PointGeom::Mult ( PointGeom a,
PointGeom b 
)

Definition at line 177 of file PointGeom.cpp.

References Nektar::SpatialDomains::Geometry::m_coordim.

Referenced by Nektar::SpatialDomains::TetGeom::v_GetLocCoords(), Nektar::SpatialDomains::PyrGeom::v_GetLocCoords(), Nektar::SpatialDomains::PrismGeom::v_GetLocCoords(), Nektar::SpatialDomains::QuadGeom::v_GetLocCoords(), and Nektar::SpatialDomains::TriGeom::v_GetLocCoords().

178  {
179  (*this)(0) = a[1]*b[2] - a[2]*b[1];
180  (*this)(1) = a[2]*b[0] - a[0]*b[2];
181  (*this)(2) = a[0]*b[1] - a[1]*b[0];
182  m_coordim = 3;
183  }
boost::call_traits< DataType >::const_reference a() const
Definition: NekPoint.hpp:182
boost::call_traits< DataType >::const_reference b() const
Definition: NekPoint.hpp:188
int m_coordim
coordinate dimension
Definition: Geometry.h:169
int Nektar::SpatialDomains::PointGeom::NumElmtConnected ( ) const

Definition at line 101 of file PointGeom.cpp.

References m_elmtMap.

102  {
103  return int(m_elmtMap.size());
104  }
std::list< CompToElmt > m_elmtMap
Definition: PointGeom.h:108
void Nektar::SpatialDomains::PointGeom::SetVid ( const int  vid)
inline

Definition at line 83 of file PointGeom.h.

References m_vid.

84  {
85  m_vid = vid;
86  }
void Nektar::SpatialDomains::PointGeom::Sub ( PointGeom a,
PointGeom b 
)

Definition at line 168 of file PointGeom.cpp.

References Nektar::SpatialDomains::Geometry::GetCoordim(), and Nektar::SpatialDomains::Geometry::m_coordim.

Referenced by Nektar::SpatialDomains::TetGeom::v_GetLocCoords(), Nektar::SpatialDomains::PyrGeom::v_GetLocCoords(), Nektar::SpatialDomains::PrismGeom::v_GetLocCoords(), Nektar::SpatialDomains::QuadGeom::v_GetLocCoords(), and Nektar::SpatialDomains::TriGeom::v_GetLocCoords().

169  {
170  (*this)(0) = a[0] - b[0];
171  (*this)(1) = a[1] - b[1];
172  (*this)(2) = a[2] - b[2];
173  m_coordim = std::max(a.GetCoordim(),b.GetCoordim());
174  }
boost::call_traits< DataType >::const_reference a() const
Definition: NekPoint.hpp:182
boost::call_traits< DataType >::const_reference b() const
Definition: NekPoint.hpp:188
int m_coordim
coordinate dimension
Definition: Geometry.h:169
void Nektar::SpatialDomains::PointGeom::UpdatePosition ( NekDouble  x,
NekDouble  y,
NekDouble  z 
)

Definition at line 151 of file PointGeom.cpp.

152  {
153  (*this)(0) = x;
154  (*this)(1) = y;
155  (*this)(2) = z;
156  }
boost::call_traits< DataType >::const_reference y() const
Definition: NekPoint.hpp:170
boost::call_traits< DataType >::const_reference z() const
Definition: NekPoint.hpp:176
boost::call_traits< DataType >::const_reference x() const
Definition: NekPoint.hpp:164
void Nektar::SpatialDomains::PointGeom::v_GenGeomFactors ( )
protectedvirtual

Implements Nektar::SpatialDomains::Geometry.

Definition at line 293 of file PointGeom.cpp.

294  {
295 
296  }
NekDouble Nektar::SpatialDomains::PointGeom::v_GetCoord ( const int  i,
const Array< OneD, const NekDouble > &  Lcoord 
)
privatevirtual

Reimplemented from Nektar::SpatialDomains::Geometry.

Definition at line 298 of file PointGeom.cpp.

References Nektar::SpatialDomains::Geometry::GetCoord().

299  {
300  return GetCoord(i,Lcoord);
301  }
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...
Definition: Geometry.h:461
NekDouble Nektar::SpatialDomains::PointGeom::v_GetLocCoords ( const Array< OneD, const NekDouble > &  coords,
Array< OneD, NekDouble > &  Lcoords 
)
privatevirtual

Reimplemented from Nektar::SpatialDomains::Geometry.

Definition at line 303 of file PointGeom.cpp.

References Nektar::SpatialDomains::Geometry::GetLocCoords().

304  {
305  return GetLocCoords(coords,Lcoords);
306  }
NekDouble GetLocCoords(const Array< OneD, const NekDouble > &coords, Array< OneD, NekDouble > &Lcoords)
Definition: Geometry.h:450
PointGeomSharedPtr Nektar::SpatialDomains::PointGeom::v_GetVertex ( int  i) const
protectedvirtual

Implements Nektar::SpatialDomains::Geometry.

Definition at line 244 of file PointGeom.cpp.

References ASSERTL0, and PointGeom().

245  {
246  ASSERTL0(i == 0, "Index other than 0 is meaningless.");
247  // shared_this_ptr() returns const PointGeom, which cannot be
248  // returned.
249  return PointGeomSharedPtr(new PointGeom(*this));
250  }
#define ASSERTL0(condition, msg)
Definition: ErrorUtil.hpp:161
boost::shared_ptr< PointGeom > PointGeomSharedPtr
Definition: Geometry.h:60
int Nektar::SpatialDomains::PointGeom::v_GetVid ( int  id) const
protectedvirtual

Reimplemented from Nektar::SpatialDomains::Geometry.

Definition at line 239 of file PointGeom.cpp.

References m_vid.

240  {
241  return m_vid;
242  }

Friends And Related Function Documentation

bool operator!= ( const PointGeom x,
const PointGeom y 
)
friend

Definition at line 214 of file PointGeom.cpp.

215  {
216  return (x.m_vid != y.m_vid);
217  }
boost::call_traits< DataType >::const_reference y() const
Definition: NekPoint.hpp:170
boost::call_traits< DataType >::const_reference x() const
Definition: NekPoint.hpp:164
bool operator!= ( const PointGeom x,
const PointGeom y 
)
friend

Definition at line 219 of file PointGeom.cpp.

220  {
221  return (x.m_vid != y->m_vid);
222  }
boost::call_traits< DataType >::const_reference y() const
Definition: NekPoint.hpp:170
boost::call_traits< DataType >::const_reference x() const
Definition: NekPoint.hpp:164
bool operator!= ( const PointGeom x,
const PointGeom y 
)
friend

Definition at line 224 of file PointGeom.cpp.

225  {
226  return (x->m_vid != y.m_vid);
227  }
boost::call_traits< DataType >::const_reference y() const
Definition: NekPoint.hpp:170
boost::call_traits< DataType >::const_reference x() const
Definition: NekPoint.hpp:164
bool operator== ( const PointGeom x,
const PointGeom y 
)
friend

Determine equivalence by the ids. No matter what the position, if the ids are the same, then they are equivalent, and vice versa.

Definition at line 199 of file PointGeom.cpp.

200  {
201  return (x.m_vid == y.m_vid);
202  }
boost::call_traits< DataType >::const_reference y() const
Definition: NekPoint.hpp:170
boost::call_traits< DataType >::const_reference x() const
Definition: NekPoint.hpp:164
bool operator== ( const PointGeom x,
const PointGeom y 
)
friend

Definition at line 204 of file PointGeom.cpp.

205  {
206  return (x.m_vid == y->m_vid);
207  }
boost::call_traits< DataType >::const_reference y() const
Definition: NekPoint.hpp:170
boost::call_traits< DataType >::const_reference x() const
Definition: NekPoint.hpp:164
bool operator== ( const PointGeom x,
const PointGeom y 
)
friend

Definition at line 209 of file PointGeom.cpp.

210  {
211  return (x->m_vid == y.m_vid);
212  }
boost::call_traits< DataType >::const_reference y() const
Definition: NekPoint.hpp:170
boost::call_traits< DataType >::const_reference x() const
Definition: NekPoint.hpp:164

Member Data Documentation

std::list<CompToElmt> Nektar::SpatialDomains::PointGeom::m_elmtMap
protected

Definition at line 108 of file PointGeom.h.

Referenced by AddElmtConnected(), IsElmtConnected(), NumElmtConnected(), and PointGeom().

int Nektar::SpatialDomains::PointGeom::m_vid
protected