91 template<
unsigned int dim>
94 ASSERT(nid < n_nodes,
"Vertex number is out of range!");
108 template<
unsigned int dim>
111 ASSERT(sid < n_sides,
"Side number is out of range!");
113 unsigned int new_sid = sid;
121 p.fill(1./sqrt(dim));
137 while (side_lines[f1][i] != side_lines[f2][j])
138 if (side_lines[f1][i] < side_lines[f2][j]) i++;
140 return side_lines[f1][i];
145 template<
unsigned int dim>
149 for (index = 0; index < n_side_permutations; index++)
150 if (equal(p, p + n_nodes_per_side, side_permutations[index]))
static arma::vec::fixed< dim+1 > node_coords(unsigned int nid)
static unsigned int permutation_index(unsigned int p[n_nodes_per_side])
static unsigned int line_between_faces(unsigned int f1, unsigned int f2)
Global macros to enhance readability and debugging, general constants.
Class RefElement defines numbering of vertices, sides, calculation of normal vectors etc...
static arma::vec::fixed< dim > normal_vector(unsigned int sid)