|
static Perm< dim+1 > | ordering (unsigned face) |
| Given a subdim-face number within a dim-dimensional simplex, returns the corresponding canonical ordering of the simplex vertices. More...
|
|
static unsigned | faceNumber (Perm< dim+1 > vertices) |
| Identifies which subdim-face in a dim-dimensional simplex is represented by the first (subdim + 1) elements of the given permutation. More...
|
|
static bool | containsVertex (unsigned face, unsigned vertex) |
| Tests whether the given subdim-face of a dim-dimensional simplex contains the given vertex of the simplex. More...
|
|
|
static const int | triangleNumber [5][5][5] |
| A table that maps vertices of a pentachoron to triangle numbers. More...
|
|
static const int | triangleVertex [10][3] |
| A table that maps triangles of a pentachoron to vertex numbers. More...
|
|
static constexpr int | nFaces = 10 |
| The total number of triangles in each pentachoron. More...
|
|
◆ containsVertex()
Tests whether the given subdim-face of a dim-dimensional simplex contains the given vertex of the simplex.
- Parameters
-
face | a subdim-face number in a dim-simplex; this must be between 0 and (dim+1 choose subdim+1)-1 inclusive. |
vertex | a vertex number in a dim-simplex; this must be between 0 and dim inclusive. |
- Returns
true
if and only if the given subdim-face contains the given vertex.
◆ faceNumber()
Identifies which subdim-face in a dim-dimensional simplex is represented by the first (subdim + 1) elements of the given permutation.
In other words, this routine identifies which subdim-face number within a dim-dimensional simplex spans vertices vertices[0, ..., subdim]
.
- Parameters
-
vertices | a permutation whose first (subdim + 1) elements represent some vertex numbers in a dim-simplex. |
- Returns
- the corresponding subdim-face number in the dim-simplex. This will be between 0 and (dim+1 choose subdim+1)-1 inclusive.
◆ ordering()
Given a subdim-face number within a dim-dimensional simplex, returns the corresponding canonical ordering of the simplex vertices.
If this canonical ordering is c, then c[0,...,subdim] will be the vertices of the given face in increasing numerical order. That is, c[0] < ... < c[subdim]. The remaining images c[(subdim + 1),...,dim] will be ordered arbitrarily.
Note that this is not the same permutation as returned by Simplex<dim>::faceMapping<subdim>():
- ordering() is a static function, which returns the same permutation for the same face number, regardless of which dim-simplex we are looking at. The images of 0,...,subdim will always appear in increasing order, and the images of (subdim + 1),...,dim will be arbitrary.
- faceMapping() examines the underlying face F of the triangulation and, across all appearances of F in different dim-simplices: (i) chooses the images of 0,...,subdim to map to the same respective vertices of F; and (ii) chooses the images of (subdim + 1),...,dim to maintain a "consistent
orientation" constraint.
- Parameters
-
face | identifies which subdim-face of a dim-dimensional simplex to query. This must be between 0 and (dim+1 choose subdim+1)-1 inclusive. |
- Returns
- the corresponding canonical ordering of the simplex vertices.
◆ nFaces
The total number of triangles in each pentachoron.
◆ triangleNumber
A table that maps vertices of a pentachoron to triangle numbers.
Triangles in a pentachoron are numbered 0,...,9. This table converts vertices to triangle numbers; in particular, the triangle spanned by vertices i, j and k of a pentachoron is triangle number triangleNumber[i][j][k]
. Here i, j and k must be distinct, must be between 0 and 4 inclusive, and may be given in any order. The resulting triangle number will be between 0 and 9 inclusive.
- Note
- Accessing
triangleNumber[i][j][k]
is equivalent to calling faceNumber(p)
, where p is a permutation that maps 0,1,2 to i,j,k in some order.
◆ triangleVertex
A table that maps triangles of a pentachoron to vertex numbers.
Triangles in a pentachoron are numbered 0,...,9. This table converts triangle numbers to vertices; in particular, triangle i in a pentachoron is spanned by vertices triangleVertex[i][0]
, triangleVertex[i][1]
and triangleVertex[i][2]
. Here i must be between 0 and 9 inclusive; the resulting vertex numbers will be between 0 and 4 inclusive.
It is guaranteed that triangleVertex[i][0]
will always be smaller than triangleVertex[i][1]
, which in turn will always be smaller than triangleVertex[i][2]
.
- Note
- Accessing
triangleVertex[i][j]
is equivalent to calling ordering(i)[j]
.
The documentation for this class was generated from the following file: