Class documentation of Concepts

Loading...
Searching...
No Matches
edgeInfo.hh
Go to the documentation of this file.
1
6#ifndef EdgeInfo_hh
7#define EdgeInfo_hh
8
9#include <basics.hh>
10#include <geometry.hh>
11
12#include "triangle.hh"
13
14namespace test {
15 class DGEdgeInfoTest;
16 class DGSpace2dP1Test;
17}
18
19namespace linDG2D {
20
21 using concepts::Real;
22
23 // ************************************************************** EdgeInfo **
24
31 class EdgeInfo {
32 public:
33 friend class test::DGEdgeInfoTest;
34 friend class test::DGSpace2dP1Test;
38 void addCell(const concepts::Triangle2d* cell, const uint idx);
42 const concepts::Triangle2d* cell(uint i) const { return cells_[i]; }
46 uint idx(uint i) const { return idxs_[i]; }
48 const concepts::Edge& edge() const {
49 return *(cells_[0]->connector().edge(idxs_[0]));
50 }
52 Real length() const;
54 Real meanHeight() const;
56 const concepts::Real2d normal() const;
64 concepts::Real2d mapRefTri(Real xi, uint i) const;
70 concepts::Real2d map(Real xi) const;
71 private:
72 const concepts::Triangle2d* cells_[2];
73 uint idxs_[2];
74 };
75
76} // namespace linDG2D
77
78#endif // EdgeInfo_hh
Triangle & connector() const
Returns the triangle connector (topology)
Definition cell2D.hh:91
Edge * edge(uint i) const
Definition topology.hh:224
concepts::Real2d mapRefTri(Real xi, uint i) const
EdgeInfo()
Default Constructor. Needed to get new EdgeInfo from a hash map access.
uint idx(uint i) const
Definition edgeInfo.hh:46
void addCell(const concepts::Triangle2d *cell, const uint idx)
Add a cell adjacent to the edge.
const concepts::Triangle2d * cell(uint i) const
Definition edgeInfo.hh:42
concepts::Real2d map(Real xi) const
Real meanHeight() const
Return the mean height of the triangle(s) adjacent to the edge.
const concepts::Edge & edge() const
Return topological edge represented.
Definition edgeInfo.hh:48
Real length() const
Return the length of the edge.
const concepts::Real2d normal() const
Return a vector normal to the edge, pointing out of first triangle.
double Real
Definition typedefs.hh:39