Inheritence diagram for xlifepp::subdivision::GeomFigure:
digraph {
graph [bgcolor="#00000000"]
node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2]
edge [color="#1414CE"]
"2" [label="xlifepp::subdivision::CartesianFig< Hexahedron >" tooltip="xlifepp::subdivision::CartesianFig< Hexahedron >"]
"4" [label="xlifepp::subdivision::CartesianFig< Quadrangle >" tooltip="xlifepp::subdivision::CartesianFig< Quadrangle >"]
"6" [label="xlifepp::subdivision::Simplex< Tetrahedron >" tooltip="xlifepp::subdivision::Simplex< Tetrahedron >"]
"8" [label="xlifepp::subdivision::Simplex< Triangle >" tooltip="xlifepp::subdivision::Simplex< Triangle >"]
"10" [label="xlifepp::subdivision::CartesianFig< T_ >" tooltip="xlifepp::subdivision::CartesianFig< T_ >"]
"1" [label="xlifepp::subdivision::GeomFigure" tooltip="xlifepp::subdivision::GeomFigure" fillcolor="#BFBFBF"]
"3" [label="xlifepp::subdivision::Hexahedron" tooltip="xlifepp::subdivision::Hexahedron"]
"5" [label="xlifepp::subdivision::Quadrangle" tooltip="xlifepp::subdivision::Quadrangle"]
"11" [label="xlifepp::subdivision::Simplex< T_ >" tooltip="xlifepp::subdivision::Simplex< T_ >"]
"7" [label="xlifepp::subdivision::Tetrahedron" tooltip="xlifepp::subdivision::Tetrahedron"]
"9" [label="xlifepp::subdivision::Triangle" tooltip="xlifepp::subdivision::Triangle"]
"2" -> "1" [dir=forward tooltip="public-inheritance"]
"2" -> "10" [dir=forward tooltip="template-instance"]
"4" -> "1" [dir=forward tooltip="public-inheritance"]
"4" -> "10" [dir=forward tooltip="template-instance"]
"6" -> "1" [dir=forward tooltip="public-inheritance"]
"6" -> "11" [dir=forward tooltip="template-instance"]
"8" -> "1" [dir=forward tooltip="public-inheritance"]
"8" -> "11" [dir=forward tooltip="template-instance"]
"10" -> "1" [dir=forward tooltip="public-inheritance"]
"3" -> "2" [dir=forward tooltip="public-inheritance"]
"5" -> "4" [dir=forward tooltip="public-inheritance"]
"11" -> "1" [dir=forward tooltip="public-inheritance"]
"7" -> "6" [dir=forward tooltip="public-inheritance"]
"9" -> "8" [dir=forward tooltip="public-inheritance"]
}
Collaboration diagram for xlifepp::subdivision::GeomFigure:
digraph {
graph [bgcolor="#00000000"]
node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2]
edge [color="#1414CE"]
"3" [label="std::vector< T >" tooltip="std::vector< T >"]
"2" [label="std::vector< number_t >" tooltip="std::vector< number_t >"]
"1" [label="xlifepp::subdivision::GeomFigure" tooltip="xlifepp::subdivision::GeomFigure" fillcolor="#BFBFBF"]
"2" -> "3" [dir=forward tooltip="template-instance"]
"1" -> "2" [dir=forward tooltip="usage"]
}
Subclassed by xlifepp::subdivision::CartesianFig< Hexahedron > , xlifepp::subdivision::CartesianFig< Quadrangle > , xlifepp::subdivision::Simplex< Tetrahedron > , xlifepp::subdivision::Simplex< Triangle > , xlifepp::subdivision::CartesianFig< T_ > , xlifepp::subdivision::Simplex< T_ >
Public Functions
inline GeomFigure ( const number_t num , const number_t nelem , const number_t bdSideNum )
constructor by number, number of vertices (initial size of vector) and number of boundary side if it lies on a curved patch
inline virtual ~GeomFigure ( )
destructor
inline unsigned short bdSideOnCP ( ) const
returns the number of the side of the figure lying on a boundary curved patch
std :: vector < real_t > extNormVec ( const number_t i , const std :: vector < Vertex > & listV ) const
returns a normal vector to the face number i >= 1 The vector is not normalized and is oriented towards the exterior of the element.
inline number_t number ( ) const
returns figure number
virtual number_t numberOfEdgesinFig ( ) const = 0
returns the number of edges of the figure
virtual number_t numberOfO1Vertices ( ) const = 0
returns the number of main vertices (of order 1) of the figure
inline number_t numberOfVertices ( ) const
returns the number of all the vertices of the figure
void print ( std :: ostream & os ) const
prints, on stream os, the definition of an element
Prints, on stream os, the definition of an element.
The vertices are given by their rank in the general list of vertices of class GeomFigureMesh .
inline number_t rankOfVertex ( const number_t i ) const
returns rank of vertex number i in the general list of vertices of class SubdivisionMesh , 1 <= i <= numberOfVertices()
inline std :: vector < number_t > rankOfVertices ( ) const
returns the list of all the vertices (given by their rank in the general list of vertices of class SubdivisionMesh )
std :: vector < number_t > rkOfHOVeOnEdge ( const number_t Order , const number_t i ) const
returns the high order vertices (given by their rank) of edge number i >= 1
Access function returning the high order vertices (given by their rank) of edge number i >= 1 The order is not stored in this class, so it needs to be passed by argument ; it should be the correct one, otherwise the result is false.
virtual std :: vector < number_t > rkOfHOVeOnFace ( const number_t Order , const number_t i ) const = 0
returns the high order vertices (given by their rank) of face number i >= 1
Access function returning the high order vertices (given by their rank) of face number i >= 1 The order is not stored in this class, so it needs to be passed by argument ; it should be the correct one, otherwise the result is false.
For the triangle and the quadrangle, the face is the element itself and the input number i should be equal to 1.
pair_nn rkOfO1VeOnEdge ( const number_t i ) const
returns edge number i >= 1 (given by rank of order 1 vertices) called in createHOeV
Access function returning the edge number i, i in {1,…nb_edges_}.
The edge is defined by the rank of the vertices of order 1 in the vertex list.
std :: vector < number_t > rkOfO1VeOnFace ( const number_t i ) const
returns face number i >= 1 (given by rank of order 1 vertices) called in createHOfV
Access function returning the face number i, i in {1,…nb_faces_}.
The face is defined by the rank of the vertices of order 1 in the vertex list.