A simple 'C' struct of cell topology attributes. More...
|struct CellTopologyData *||base|
|Base, a.k.a. not-extended, version of this topology where vertex_count == node_count. |
|const char *||name|
|Intuitive name for this topology. |
|Unique key for this topology. |
|Topological dimension. |
|Number of vertices. |
|Number of nodes (a.k.a. subcells). |
|Number of edges (a.k.a. boundary subcells). |
|Number of sides (a.k.a. boundary subcells). |
|Number of defined permutations. |
|Flag if the subcells of a given dimension are homogeneous. |
|Number of subcells of each dimension. |
|struct CellTopologyData_Subcell *||subcell |
|Array of subcells of each dimension. |
|struct CellTopologyData_Subcell *||side|
|Array of side subcells of length side_count. |
|struct CellTopologyData_Subcell *||edge|
|Array of edges subcells of length edge_count. |
|Array of node permutations. |
A simple 'C' struct of cell topology attributes.
The topology may be extended such that the number of nodes (subcells of dimension zero) is greater than the number of vertices. In this case the vertices must be ordered first.
Nodes, edges, and sides are subcells with a particular dimension. A cell has edges and sides only if its dimension is greater than one.
Array of node permutations.
Let ParentCell be dimension D and SubCell be dimension dim < D. Let SubCell be connected as subcell Ord with permutation P.
Then ParentCell.node(K) == SubCell.node(I) where:
The permutation map for P == 0 is required to be identity.