Class xlifepp::subdivision::Quadrangle#

class Quadrangle : public xlifepp::subdivision::CartesianFig<Quadrangle>#

Inheritence diagram for xlifepp::subdivision::Quadrangle:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "2" [label="xlifepp::subdivision::CartesianFig< Quadrangle >" tooltip="xlifepp::subdivision::CartesianFig< Quadrangle >"] "4" [label="xlifepp::subdivision::CartesianFig< T_ >" tooltip="xlifepp::subdivision::CartesianFig< T_ >"] "3" [label="xlifepp::subdivision::GeomFigure" tooltip="xlifepp::subdivision::GeomFigure"] "1" [label="xlifepp::subdivision::Quadrangle" tooltip="xlifepp::subdivision::Quadrangle" fillcolor="#BFBFBF"] "2" -> "3" [dir=forward tooltip="public-inheritance"] "2" -> "4" [dir=forward tooltip="template-instance"] "4" -> "3" [dir=forward tooltip="public-inheritance"] "1" -> "2" [dir=forward tooltip="public-inheritance"] }

Collaboration diagram for xlifepp::subdivision::Quadrangle:

digraph { graph [bgcolor="#00000000"] node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2] edge [color="#1414CE"] "2" [label="xlifepp::subdivision::CartesianFig< Quadrangle >" tooltip="xlifepp::subdivision::CartesianFig< Quadrangle >"] "5" [label="std::vector< T >" tooltip="std::vector< T >"] "4" [label="std::vector< number_t >" tooltip="std::vector< number_t >"] "6" [label="xlifepp::subdivision::CartesianFig< T_ >" tooltip="xlifepp::subdivision::CartesianFig< T_ >"] "3" [label="xlifepp::subdivision::GeomFigure" tooltip="xlifepp::subdivision::GeomFigure"] "1" [label="xlifepp::subdivision::Quadrangle" tooltip="xlifepp::subdivision::Quadrangle" fillcolor="#BFBFBF"] "2" -> "3" [dir=forward tooltip="public-inheritance"] "2" -> "6" [dir=forward tooltip="template-instance"] "4" -> "5" [dir=forward tooltip="template-instance"] "6" -> "3" [dir=forward tooltip="public-inheritance"] "3" -> "4" [dir=forward tooltip="usage"] "1" -> "2" [dir=forward tooltip="public-inheritance"] }

Public Functions

Quadrangle(const number_t num, const number_t rV1, const number_t rV2, const number_t rV3, const number_t rV4, const number_t bdSideNum = 0)#

constructor by vertices, given by their rank in the list

Conversion constructor.

Constructor by vertices, given by their rank in the list

inline virtual short getrkEdge(short indEdge, short indVert) const#

get back the rank of a vertex of an edge

inline virtual short getrkFace(short indFace, short indVert) const#

get back the rank of a vertex of a face

Public Static Functions

static std::vector<std::vector<number_t>> numberingOfVertices(const number_t Order)#

position of the vertices in relation with the numbering convention

This function gives the local position of the vertices of any quadrangle of the mesh correspondig to the numbering convention explained on top of the Quadrangle class header file (Quadrangle.hpp).

The numbering convention of high order vertices is deduced from a double tensor product of the standard numbering over the segment defined by the integers [0,1,…k]. Thus, the entry BC[i] in the returned vector BC contains a vector of 2 integers whose components BC[i][j] are such that 0<= BC[i][j] <= k, where k is the order of the mesh. Each component is the result of a permutation of a 2D tensor product of the uniform subdivision of the interval [0,1,…k]. This gives an intrinsic way of numbering and localization of the points if these components are sorted in alphanumeric order. Nota: this does not match with the numbering of the vertices XLiFE++ uses.

Moreover, the returned vector gives the location of the vertices according to the way they are encountered in the numbering process implemented by the functions GeomFigureMesh<T_>::createHOV, GeomFigureMesh<T_>::createHOeV, and QuadrangleMesh::createHOiV.

static std::vector<short> numEdgesOfFace(const number_t i)#

returns the numbers (>= 1) of the edges defining the face, i.e. the quadrangle itself

returns the numbers (>= 1) of the edges defining the face, i.e.

the quadrangle itself

static std::vector<std::pair<short, short>> rkEdgeVertices()#

returns the ranks (>= 0) of the vertices defining the edges of the quadrangle