Public Member Functions | List of all members
Tessellation Class Referenceabstract

Abstract class for tessellation. More...

#include <tessellation.hpp>

Inheritance diagram for Tessellation:
Inheritance graph
[legend]

Public Member Functions

virtual Vector2D CalcFaceVelocity (Vector2D wl, Vector2D wr, Vector2D rL, Vector2D rR, Vector2D f) const =0
 Calculates the velocity of a single edge. More...
 
virtual void Initialise (vector< Vector2D > const &points, OuterBoundary const *bc, bool HilbertOrder=true)=0
 Initialises the tessellation. More...
 
virtual void Initialise (vector< Vector2D > const &points, Tessellation const &tess, OuterBoundary const *outer, bool HilbertOrder=true)=0
 Initialises the tessellation. More...
 
virtual vector< int > Update (const vector< Vector2D > &points, bool HilbertOrder=false)=0
 Update the tessellation. More...
 
virtual vector< int > Update (const vector< Vector2D > &points, const Tessellation &tess, bool HOrder=false)=0
 Update the tessellation. More...
 
virtual int GetPointNo (void) const =0
 Get Total number of mesh generating points. More...
 
virtual Vector2D GetMeshPoint (int index) const =0
 Returns Position of mesh generating point. More...
 
virtual Vector2D const & GetCellCM (int index) const =0
 Returns Position of Cell's CM. More...
 
virtual int GetTotalSidesNumber (void) const =0
 Returns the total number of faces. More...
 
virtual const vector< Edge > & getAllEdges (void) const =0
 Returns reference to the list of all edges. More...
 
virtual Edge const & GetEdge (int index) const =0
 Returns edge (interface between cells) More...
 
virtual double GetWidth (int index) const =0
 Returns the effective width of a cell. More...
 
virtual double GetVolume (int index) const =0
 Returns the volume of a cell. More...
 
virtual vector< int > const & GetCellEdges (int index) const =0
 Returns the indexes of a cell's edges. More...
 
virtual int GetOriginalIndex (int point) const
 Returns the original index of the duplicated point. More...
 
virtual vector< Vector2D > & GetMeshPoints (void)=0
 Returns a reference to the point vector. More...
 
virtual vector< int > GetNeighbors (int index) const =0
 Returns the indeces of the neighbors. More...
 
virtual void GetNeighbors (int index, vector< int > &neigh) const =0
 Returns the indeces of the neighbors. More...
 
virtual Tessellationclone (void) const =0
 Cloning function. More...
 
virtual bool NearBoundary (int index) const =0
 Returns if the cell is adjacent to a boundary. More...
 
virtual vector< vector< int > > & GetDuplicatedPoints (void)=0
 Returns the indeces of the points that where sent to other processors as ghost points. More...
 
virtual vector< vector< int > > const & GetDuplicatedPoints (void) const =0
 Returns the indeces of the points that where sent to other processors as ghost points. More...
 
virtual vector< int > GetDuplicatedProcs (void) const =0
 Returns the indeces of the processors with whom ghost points where exchanged. More...
 
virtual vector< vector< int > > const & GetSentPoints (void) const =0
 Returns the indeces of the points that where sent to other processors. More...
 
virtual vector< int > GetSentProcs (void) const =0
 Returns the indeces of the processors with whom points where exchanged. More...
 
virtual vector< size_t > GetSelfPoint (void) const =0
 Returns the indeces of the points that remain with the processor after the ne processor mesh is built. More...
 
virtual vector< vector< int > > & GetGhostIndeces (void)=0
 Returns the indeces of each ghost point in the vector of points that the tessellation holds. More...
 
virtual vector< vector< int > > const & GetGhostIndeces (void) const =0
 Returns the indeces of each ghost point in the vector of points that the tessellation holds. More...
 
virtual int GetTotalPointNumber (void) const =0
 Returns the total number of points (including ghost) More...
 
virtual vector< Vector2D > & GetAllCM (void)=0
 Returns the center of masses of the cells. More...
 
virtual void GetNeighborNeighbors (vector< int > &result, int point) const =0
 Retrieves vicarious neighbors. More...
 

Detailed Description

Abstract class for tessellation.

Author
Elad Steinberg

Definition at line 21 of file tessellation.hpp.

Member Function Documentation

◆ CalcFaceVelocity()

virtual Vector2D Tessellation::CalcFaceVelocity ( Vector2D  wl,
Vector2D  wr,
Vector2D  rL,
Vector2D  rR,
Vector2D  f 
) const
pure virtual

Calculates the velocity of a single edge.

Parameters
wlThe velocity of the left mesh point
wrThe velocity of the right mesh point
rLThe location of the left mesh point
rRThe location of the right mesh point
fThe centroid of the edge
Returns
The edge's velocity

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ clone()

virtual Tessellation* Tessellation::clone ( void  ) const
pure virtual

Cloning function.

Returns
Pointer to clone

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetAllCM()

virtual vector<Vector2D>& Tessellation::GetAllCM ( void  )
pure virtual

Returns the center of masses of the cells.

Returns
The CM's

Implemented in VoronoiMesh.

◆ getAllEdges()

virtual const vector<Edge>& Tessellation::getAllEdges ( void  ) const
pure virtual

Returns reference to the list of all edges.

Returns
Reference to the list of all edges

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetCellCM()

virtual Vector2D const& Tessellation::GetCellCM ( int  index) const
pure virtual

Returns Position of Cell's CM.

Parameters
indexMesh generating point index (the cell's index)
Returns
Position of CM

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetCellEdges()

virtual vector<int> const& Tessellation::GetCellEdges ( int  index) const
pure virtual

Returns the indexes of a cell's edges.

Parameters
indexCell index
Returns
Cell edges

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetDuplicatedPoints() [1/2]

virtual vector<vector<int> >& Tessellation::GetDuplicatedPoints ( void  )
pure virtual

Returns the indeces of the points that where sent to other processors as ghost points.

Returns
The sent points

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetDuplicatedPoints() [2/2]

virtual vector<vector<int> > const& Tessellation::GetDuplicatedPoints ( void  ) const
pure virtual

Returns the indeces of the points that where sent to other processors as ghost points.

Returns
The sent points

Implemented in VoronoiMesh.

◆ GetDuplicatedProcs()

virtual vector<int> Tessellation::GetDuplicatedProcs ( void  ) const
pure virtual

Returns the indeces of the processors with whom ghost points where exchanged.

Returns
The list of processors

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetEdge()

virtual Edge const& Tessellation::GetEdge ( int  index) const
pure virtual

Returns edge (interface between cells)

Parameters
indexFace index
Returns
Interface between cells

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetGhostIndeces() [1/2]

virtual vector<vector<int> >& Tessellation::GetGhostIndeces ( void  )
pure virtual

Returns the indeces of each ghost point in the vector of points that the tessellation holds.

Returns
The indeces where the outer index is the index of the sent processor

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetGhostIndeces() [2/2]

virtual vector<vector<int> > const& Tessellation::GetGhostIndeces ( void  ) const
pure virtual

Returns the indeces of each ghost point in the vector of points that the tessellation holds.

Returns
The indeces where the outer index is the index of the sent processor

Implemented in VoronoiMesh.

◆ GetMeshPoint()

virtual Vector2D Tessellation::GetMeshPoint ( int  index) const
pure virtual

Returns Position of mesh generating point.

Parameters
indexMesh generating point index
Returns
Position of mesh generating point

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetMeshPoints()

virtual vector<Vector2D>& Tessellation::GetMeshPoints ( void  )
pure virtual

Returns a reference to the point vector.

Returns
The reference

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetNeighborNeighbors()

virtual void Tessellation::GetNeighborNeighbors ( vector< int > &  result,
int  point 
) const
pure virtual

Retrieves vicarious neighbors.

Parameters
resultOutput
pointMesh generating point index

Implemented in VoronoiMesh.

◆ GetNeighbors() [1/2]

virtual vector<int> Tessellation::GetNeighbors ( int  index) const
pure virtual

Returns the indeces of the neighbors.

Parameters
indexThe cell to check
Returns
The neighbors

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetNeighbors() [2/2]

virtual void Tessellation::GetNeighbors ( int  index,
vector< int > &  neigh 
) const
pure virtual

Returns the indeces of the neighbors.

Parameters
indexThe cell to check
neighthe indeces of the neighbors given as output

Implemented in VoronoiMesh.

◆ GetOriginalIndex()

int Tessellation::GetOriginalIndex ( int  point) const
virtual

Returns the original index of the duplicated point.

Parameters
pointThe index of the duplicated point
Returns
The original point index

Reimplemented in VoronoiMesh.

Definition at line 5 of file tessellation.cpp.

Here is the caller graph for this function:

◆ GetPointNo()

virtual int Tessellation::GetPointNo ( void  ) const
pure virtual

Get Total number of mesh generating points.

Returns
Number of mesh generating points

Implemented in VoronoiMesh.

◆ GetSelfPoint()

virtual vector<size_t> Tessellation::GetSelfPoint ( void  ) const
pure virtual

Returns the indeces of the points that remain with the processor after the ne processor mesh is built.

Returns
The indeces of the points

Implemented in VoronoiMesh.

◆ GetSentPoints()

virtual vector<vector<int> > const& Tessellation::GetSentPoints ( void  ) const
pure virtual

Returns the indeces of the points that where sent to other processors.

Returns
The sent points

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetSentProcs()

virtual vector<int> Tessellation::GetSentProcs ( void  ) const
pure virtual

Returns the indeces of the processors with whom points where exchanged.

Returns
The list of processors

Implemented in VoronoiMesh.

◆ GetTotalPointNumber()

virtual int Tessellation::GetTotalPointNumber ( void  ) const
pure virtual

Returns the total number of points (including ghost)

Returns
The total number of points

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetTotalSidesNumber()

virtual int Tessellation::GetTotalSidesNumber ( void  ) const
pure virtual

Returns the total number of faces.

Returns
Total number of faces

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetVolume()

virtual double Tessellation::GetVolume ( int  index) const
pure virtual

Returns the volume of a cell.

Parameters
indexCell index
Returns
Cell volume

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ GetWidth()

virtual double Tessellation::GetWidth ( int  index) const
pure virtual

Returns the effective width of a cell.

Parameters
indexCell index
Returns
Effective cell width

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ Initialise() [1/2]

virtual void Tessellation::Initialise ( vector< Vector2D > const &  points,
OuterBoundary const *  bc,
bool  HilbertOrder = true 
)
pure virtual

Initialises the tessellation.

Parameters
pointsInitial position of mesh generating points
bcBoundary conditions of the computational domain
HilbertOrderShould the points be rearranged before insertion

Implemented in VoronoiMesh.

◆ Initialise() [2/2]

virtual void Tessellation::Initialise ( vector< Vector2D > const &  points,
Tessellation const &  tess,
OuterBoundary const *  outer,
bool  HilbertOrder = true 
)
pure virtual

Initialises the tessellation.

Parameters
pointsInitial position of mesh generating points
tessThe tessellation of the processors
outerThe geometric outer boundary conditions
HilbertOrderShould the points be rearranged before insertion

Implemented in VoronoiMesh.

◆ NearBoundary()

virtual bool Tessellation::NearBoundary ( int  index) const
pure virtual

Returns if the cell is adjacent to a boundary.

Parameters
indexThe cell to check
Returns
If near boundary

Implemented in VoronoiMesh.

◆ Update() [1/2]

virtual vector<int> Tessellation::Update ( const vector< Vector2D > &  points,
bool  HilbertOrder = false 
)
pure virtual

Update the tessellation.

Parameters
pointsThe new positions of the mesh generating points
HilbertOrderShould the points be rearranged before insertion
Returns
The indeces of sort (if done, else empty)

Implemented in VoronoiMesh.

Here is the caller graph for this function:

◆ Update() [2/2]

virtual vector<int> Tessellation::Update ( const vector< Vector2D > &  points,
const Tessellation tess,
bool  HOrder = false 
)
pure virtual

Update the tessellation.

Parameters
pointsThe new positions of the mesh generating points
tessThe tessellation of the processors
HOrderShould the points be rearranged before insertion
Returns
The indeces of sort (if done, else empty)

Implemented in VoronoiMesh.


The documentation for this class was generated from the following files: