Loading [MathJax]/extensions/tex2jax.js
Mesh Oriented datABase  (version 5.5.1)
An array-based unstructured mesh library
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
NestedRefineTemplates.hpp
Go to the documentation of this file.
1 #ifndef TEMPLATES_HPP 2 #define TEMPLATES_HPP 3  4 #include "moab/NestedRefine.hpp" 5  6 /* 7  * This header contains the field values of the refinement patterns for 8  * each entity types and their possible degrees. It also contains the permutations 9  * of the locally ordered vertices and half-facets on parent half-facets needed 10  * for book-keeping purposes. The fields are described in the refPattern structure 11  * in NestedRefine class. 12  * 13  */ 14  15 namespace moab 16 { 17  18 const NestedRefine::refPatterns NestedRefine::refTemplates[9][MAX_DEGREE] = { 19  20  // EDGE 21  { // Deg 2 22  /* 0------2------1 */ 23  /* 1 2 */ 24  25  { 1, 26  0, 27  0, 28  1, 29  2, 30  { 2, 2 }, 31  { { 1.0 / 2.0, 0, 0 } }, 32  { { 0, 2 }, { 2, 1 } }, 33  34  { { 1, 0 }, { 2, 1 }, { 2, 0 } }, 35  { { 0, 0, 2, 0 }, { 1, 1, 0, 0 } }, 36  37  { {} }, 38  { {} }, 39  { { 1, 1 }, { 1, 2 } }, 40  { {} } }, 41  42  // Deg 3 43  /* 0------2------3------1 */ 44  /* 1 2 3 */ 45  46  { 2, 47  0, 48  0, 49  2, 50  3, 51  { 2, 3 }, 52  { { 1.0 / 3.0, 0, 0 }, { 2.0 / 3.0, 0, 0 } }, 53  { { 0, 2 }, { 2, 3 }, { 3, 1 } }, 54  55  { { 1, 0 }, { 3, 1 }, { 2, 0 }, { 3, 0 } }, 56  { { 0, 0, 2, 0 }, { 1, 1, 3, 0 }, { 2, 1, 0, 0 } }, 57  58  { {} }, 59  { {} }, 60  { { 1, 1 }, { 1, 3 } }, 61  { {} } }, 62  63  // Deg 5 64  /* 0------2------3------4------5------1 */ 65  /* 1 2 3 4 5 */ 66  67  { 4, 68  0, 69  0, 70  4, 71  5, 72  { 2, 5 }, 73  { { 1.0 / 5.0, 0, 0 }, { 2.0 / 5.0, 0, 0 }, { 3.0 / 5.0, 0, 0 }, { 4.0 / 5.0, 0, 0 } }, 74  { { 0, 2 }, { 2, 3 }, { 3, 4 }, { 4, 5 }, { 5, 1 } }, 75  76  { { 1, 0 }, { 5, 1 }, { 2, 0 }, { 3, 0 }, { 4, 0 }, { 5, 0 } }, 77  { { 0, 0, 2, 0 }, { 1, 1, 3, 0 }, { 2, 1, 4, 0 }, { 3, 1, 5, 0 }, { 4, 1, 0, 0 } }, 78  79  { {} }, 80  { {} }, 81  { { 1, 1 }, { 1, 5 } }, 82  { {} } } }, 83  84  // TRI 85  { // Deg 2 86  /* 2 87  / \ 88  5 /-- \ 4 89  /_\/_\ 90  0 3 1 */ 91  92  { 1, 93  0, 94  0, 95  3, 96  4, 97  { 3, 5 }, 98  { { 0.5, 0, 0 }, { 0.5, 0.5, 0 }, { 0, 0.5, 0 } }, 99  { { 0, 3, 5 }, { 3, 4, 5 }, { 3, 1, 4 }, { 5, 4, 2 } }, 100  101  { { 1, 0 }, { 3, 1 }, { 4, 2 }, { 3, 0 }, { 4, 1 }, { 1, 2 } }, 102  { { 0, 0, 2, 2, 0, 0 }, { 3, 2, 4, 0, 1, 1 }, { 0, 0, 0, 0, 2, 0 }, { 2, 1, 0, 0, 0, 0 } }, 103  104  { { 3 }, { 4 }, { 5 } }, 105  { {} }, 106  { { 2, 1, 3 }, { 2, 3, 4 }, { 2, 4, 1 } }, 107  { {} } }, 108  109  // Deg 3 110  /* 2 111  /_\ 112  7 6 113  /_\/_\ 114  8 9 5 115  /_\/_\/_\ 116  0 3 4 1 117  */ 118  119  { 2, 120  1, 121  0, 122  7, 123  9, 124  { 3, 9 }, 125  { { 1.0 / 3.0, 0, 0 }, 126  { 2.0 / 3.0, 0, 0 }, 127  { 2.0 / 3.0, 1.0 / 3.0, 0 }, 128  { 1.0 / 3.0, 2.0 / 3.0, 0 }, 129  { 0, 2.0 / 3.0, 0 }, 130  { 0, 1.0 / 3.0, 0 }, 131  { 1.0 / 3.0, 1.0 / 3.0, 0 } }, 132  { { 0, 3, 8 }, 133  { 3, 9, 8 }, 134  { 3, 4, 9 }, 135  { 4, 5, 9 }, 136  { 4, 1, 5 }, 137  { 8, 9, 7 }, 138  { 9, 6, 7 }, 139  { 9, 5, 6 }, 140  { 7, 6, 2 } }, 141  142  { { 1, 0 }, { 5, 1 }, { 9, 2 }, { 3, 0 }, { 5, 0 }, { 8, 1 }, { 9, 1 }, { 6, 2 }, { 1, 2 }, { 8, 0 } }, 143  { { 0, 0, 2, 2, 0, 0 }, 144  { 3, 2, 6, 0, 1, 1 }, 145  { 0, 0, 4, 2, 2, 1 }, 146  { 5, 2, 8, 0, 3, 1 }, 147  { 0, 0, 0, 0, 4, 0 }, 148  { 2, 1, 7, 2, 0, 0 }, 149  { 8, 2, 9, 0, 6, 1 }, 150  { 4, 1, 0, 0, 7, 0 }, 151  { 7, 1, 0, 0, 0, 0 } }, 152  153  { { 3, 4 }, { 5, 6 }, { 7, 8 } }, 154  { { 9 } }, 155  { { 3, 1, 3, 5 }, { 3, 5, 8, 9 }, { 3, 9, 6, 1 } }, 156  { {} } }, 157  158  // Deg 5 159  /* 2 160  /_\ 161  11 10 162  /_\/_\ 163  12 19 9 164  /_\/_\/_\ 165  13 20 18 8 166  /_\/_\/_\/_\ 167  14 15 16 17 7 168  /_\/_\/_\/_\/_\ 169  0 3 4 5 6 1 170  */ 171  172  { 4, 173  6, 174  0, 175  18, 176  25, 177  { 3, 20 }, 178  { { 1 / 5.0, 0, 0 }, 179  { 2 / 5.0, 0, 0 }, 180  { 3 / 5.0, 0, 0 }, 181  { 4 / 5.0, 0, 0 }, 182  { 4 / 5.0, 1 / 5.0, 0 }, 183  { 3 / 5.0, 2 / 5.0, 0 }, 184  { 2 / 5.0, 3 / 5.0, 0 }, 185  { 1 / 5.0, 4 / 5.0, 0 }, 186  { 0, 4 / 5.0, 0 }, 187  { 0, 3 / 5.0, 0 }, 188  { 0, 2 / 5.0, 0 }, 189  { 0, 1 / 5.0, 0 }, 190  { 1 / 5.0, 1 / 5.0, 0 }, 191  { 2 / 5.0, 1 / 5.0, 0 }, 192  { 3 / 5.0, 1 / 5.0, 0 }, 193  { 2 / 5.0, 2 / 5.0, 0 }, 194  { 1 / 5.0, 3 / 5.0, 0 }, 195  { 1 / 5.0, 2 / 5.0, 0 } }, 196  197  { { 0, 3, 14 }, { 3, 15, 14 }, { 3, 4, 15 }, { 4, 16, 15 }, { 4, 5, 16 }, 198  { 5, 17, 16 }, { 5, 6, 17 }, { 6, 7, 17 }, { 6, 1, 7 }, { 14, 15, 13 }, 199  { 15, 20, 13 }, { 15, 16, 20 }, { 16, 18, 20 }, { 16, 17, 18 }, { 17, 8, 18 }, 200  { 17, 7, 8 }, { 13, 20, 12 }, { 20, 19, 12 }, { 20, 18, 19 }, { 18, 9, 19 }, 201  { 18, 8, 9 }, { 12, 19, 11 }, { 19, 10, 11 }, { 19, 9, 10 }, { 11, 10, 2 } }, 202  203  { { 1, 0 }, { 9, 1 }, { 25, 2 }, { 3, 0 }, { 5, 0 }, { 7, 0 }, { 9, 0 }, 204  { 16, 1 }, { 21, 1 }, { 24, 1 }, { 25, 1 }, { 22, 2 }, { 17, 2 }, { 10, 2 }, 205  { 1, 2 }, { 12, 0 }, { 14, 0 }, { 16, 0 }, { 21, 0 }, { 24, 0 }, { 19, 0 } }, 206  { { 0, 0, 2, 2, 0, 0 }, { 3, 2, 10, 0, 1, 1 }, { 0, 0, 4, 2, 2, 0 }, { 5, 2, 12, 0, 3, 1 }, 207  { 0, 0, 6, 2, 4, 1 }, { 7, 2, 14, 0, 5, 1 }, { 0, 0, 8, 2, 6, 1 }, { 9, 2, 16, 0, 7, 1 }, 208  { 0, 0, 0, 0, 8, 1 }, { 2, 1, 11, 2, 0, 0 }, { 12, 2, 17, 0, 10, 1 }, { 4, 1, 13, 2, 11, 0 }, 209  { 14, 2, 19, 0, 12, 1 }, { 6, 1, 15, 2, 13, 1 }, { 16, 2, 21, 0, 14, 1 }, { 8, 1, 0, 0, 15, 0 }, 210  { 11, 1, 18, 2, 0, 0 }, { 19, 2, 22, 0, 17, 1 }, { 13, 1, 20, 2, 18, 0 }, { 21, 2, 24, 0, 19, 1 }, 211  { 15, 1, 0, 0, 20, 0 }, { 18, 1, 23, 2, 0, 0 }, { 24, 2, 25, 0, 22, 1 }, { 20, 1, 0, 0, 23, 0 }, 212  { 23, 1, 0, 0, 0, 0 } }, 213  214  { { 3, 4, 5, 6 }, { 7, 8, 9, 10 }, { 11, 12, 13, 14 } }, 215  { { 15, 16, 17, 18, 19, 20 } }, 216  { { 5, 1, 3, 5, 7, 9 }, { 5, 9, 16, 21, 24, 25 }, { 5, 25, 22, 17, 10, 1 } }, 217  { {} } } 218  219  }, 220  221  // QUAD 222  { // Deg 2 223  /* 224  3---6---2 225  | | | 226  7---8---5 227  | | | 228  0---4---1 229  * */ 230  231  { 1, 232  1, 233  0, 234  5, 235  4, 236  { 4, 8 }, 237  { { 0, -1, 0 }, { 1, 0, 0 }, { 0, 1, 0 }, { -1, 0, 0 }, { 0, 0, 0 } }, 238  { { 0, 4, 8, 7 }, { 4, 1, 5, 8 }, { 8, 5, 2, 6 }, { 7, 8, 6, 3 } }, 239  240  { { 1, 0 }, { 2, 1 }, { 3, 2 }, { 4, 3 }, { 2, 0 }, { 3, 1 }, { 4, 2 }, { 1, 3 }, { 3, 0 } }, 241  { { 0, 0, 2, 3, 4, 0, 0, 0 }, 242  { 0, 0, 0, 0, 3, 0, 1, 1 }, 243  { 2, 2, 0, 0, 0, 0, 4, 1 }, 244  { 1, 2, 3, 3, 0, 0, 0, 0 } }, 245  246  { { 4 }, { 5 }, { 6 }, { 7 } }, 247  { { 8 } }, 248  { { 2, 1, 2 }, { 2, 2, 3 }, { 2, 3, 4 }, { 2, 4, 1 } }, 249  { {} } }, 250  251  // Deg 3 252  /* 253  3---9---8---2 254  | | | | 255  10---15--14--7 256  | | | | 257  11---12--13--6 258  | | | | 259  0---4---5---1 260  * */ 261  262  { 2, 263  4, 264  0, 265  12, 266  9, 267  { 4, 15 }, 268  { { -1.0 / 3.0, -1, 0 }, 269  { 1.0 / 3.0, -1, 0 }, 270  { 1, -1.0 / 3.0, 0 }, 271  { 1, 1.0 / 3.0, 0 }, 272  { 1.0 / 3.0, 1, 0 }, 273  { -1.0 / 3.0, 1, 0 }, 274  { -1, 1.0 / 3.0, 0 }, 275  { -1, -1.0 / 3.0, 0 }, 276  { -1.0 / 3.0, -1.0 / 3.0, 0 }, 277  { 1.0 / 3.0, -1.0 / 3.0, 0 }, 278  { 1.0 / 3.0, 1.0 / 3.0, 0 }, 279  { -1.0 / 3.0, 1.0 / 3.0, 0 } }, 280  { { 0, 4, 12, 11 }, 281  { 4, 5, 13, 12 }, 282  { 5, 1, 6, 13 }, 283  { 11, 12, 15, 10 }, 284  { 12, 13, 14, 15 }, 285  { 13, 6, 7, 14 }, 286  { 10, 15, 9, 3 }, 287  { 15, 14, 8, 9 }, 288  { 14, 7, 2, 8 } }, 289  290  { { 1, 0 }, 291  { 3, 1 }, 292  { 9, 2 }, 293  { 7, 3 }, 294  { 2, 0 }, 295  { 3, 0 }, 296  { 6, 1 }, 297  { 9, 1 }, 298  { 8, 2 }, 299  { 7, 2 }, 300  { 4, 3 }, 301  { 1, 3 }, 302  { 5, 0 }, 303  { 6, 0 }, 304  { 9, 0 }, 305  { 8, 0 } }, 306  { { 0, 0, 2, 3, 4, 0, 0, 0 }, 307  { 0, 0, 3, 3, 5, 0, 1, 1 }, 308  { 0, 0, 0, 0, 6, 0, 2, 1 }, 309  { 1, 2, 5, 3, 7, 0, 0, 0 }, 310  { 2, 2, 6, 3, 8, 0, 4, 1 }, 311  { 3, 2, 0, 0, 9, 0, 5, 1 }, 312  { 4, 2, 8, 3, 0, 0, 0, 0 }, 313  { 5, 2, 9, 3, 0, 0, 7, 1 }, 314  { 6, 2, 0, 0, 0, 0, 8, 1 } }, 315  316  { { 4, 5 }, { 6, 7 }, { 8, 9 }, { 10, 11 } }, 317  { { 12, 13, 14, 15 } }, 318  { { 3, 1, 2, 3 }, { 3, 3, 6, 9 }, { 3, 9, 8, 7 }, { 3, 7, 4, 1 } }, 319  { {} } }, 320  321  // Deg 5 322  /* 323  3---15---14---13 ---12 ---2 324  | | | | | | 325  16---29---28---27 ---26---11 326  | | | | | | 327  17---30---35---34 ---25 ---10 328  | | | | | | 329  18---31---32---33 ---24 ---9 330  | | | | | | 331  19---20---21---22 ---23 ---8 332  | | | | | | 333  0--- 4--- 5--- 6 --- 7 --- 1 334  * */ 335  336  { 4, 337  16, 338  0, 339  32, 340  25, 341  { 4, 35 }, 342  { { -3 / 5.0, -1, 0 }, { -1 / 5.0, -1, 0 }, { 1 / 5.0, -1, 0 }, { 3 / 5.0, -1, 0 }, 343  { 1, -3 / 5.0, 0 }, { 1, -1 / 5.0, 0 }, { 1, 1 / 5.0, 0 }, { 1, 3 / 5.0, 0 }, 344  { 3 / 5.0, 1, 0 }, { 1 / 5.0, 1, 0 }, { -1 / 5.0, 1, 0 }, { -3 / 5.0, 1, 0 }, 345  { -1, 3 / 5.0, 0 }, { -1, 1 / 5.0, 0 }, { -1, -1 / 5.0, 0 }, { -1, -3 / 5.0, 0 }, 346  { -3 / 5.0, -3 / 5.0, 0 }, { -1 / 5.0, -3 / 5.0, 0 }, { 1 / 5.0, -3 / 5.0, 0 }, { 3 / 5.0, -3 / 5.0, 0 }, 347  { 3 / 5.0, -1 / 5.0, 0 }, { 3 / 5.0, 1 / 5.0, 0 }, { 3 / 5.0, 3 / 5.0, 0 }, { 1 / 5.0, 3 / 5.0, 0 }, 348  { -1 / 5.0, 3 / 5.0, 0 }, { -3 / 5.0, 3 / 5.0, 0 }, { -3 / 5.0, 1 / 5.0, 0 }, { -3 / 5.0, -1 / 5.0, 0 }, 349  { -1 / 5.0, -1 / 5.0, 0 }, { 1 / 5.0, -1 / 5.0, 0 }, { 1 / 5.0, 1 / 5.0, 0 }, { -1 / 5.0, 1 / 5.0, 0 } }, 350  { { 0, 4, 20, 19 }, { 4, 5, 21, 20 }, { 5, 6, 22, 21 }, { 6, 7, 23, 22 }, { 7, 1, 8, 23 }, 351  { 19, 20, 31, 18 }, { 20, 21, 32, 31 }, { 21, 22, 33, 32 }, { 22, 23, 24, 33 }, { 23, 8, 9, 24 }, 352  { 18, 31, 30, 17 }, { 31, 32, 35, 30 }, { 32, 33, 34, 35 }, { 33, 24, 25, 34 }, { 24, 9, 10, 25 }, 353  { 17, 30, 29, 16 }, { 30, 35, 28, 29 }, { 35, 34, 27, 28 }, { 34, 25, 26, 27 }, { 25, 10, 11, 26 }, 354  { 16, 29, 15, 3 }, { 29, 28, 14, 15 }, { 28, 27, 13, 14 }, { 27, 26, 12, 13 }, { 26, 11, 2, 12 } }, 355  356  { { 1, 0 }, { 5, 1 }, { 25, 2 }, { 21, 3 }, { 2, 0 }, { 3, 0 }, { 4, 0 }, { 5, 0 }, { 10, 1 }, 357  { 15, 1 }, { 20, 1 }, { 25, 1 }, { 24, 2 }, { 23, 2 }, { 22, 2 }, { 21, 2 }, { 16, 3 }, { 11, 3 }, 358  { 6, 3 }, { 1, 3 }, { 7, 0 }, { 8, 0 }, { 9, 0 }, { 10, 0 }, { 15, 0 }, { 20, 0 }, { 25, 0 }, 359  { 24, 0 }, { 23, 0 }, { 22, 0 }, { 17, 0 }, { 12, 0 }, { 13, 0 }, { 14, 0 }, { 19, 0 }, { 18, 0 } }, 360  { { 0, 0, 2, 3, 6, 0, 0, 0 }, { 0, 0, 3, 3, 7, 0, 1, 1 }, { 0, 0, 4, 3, 8, 0, 2, 1 }, 361  { 0, 0, 5, 3, 9, 0, 3, 1 }, { 0, 0, 0, 0, 10, 0, 4, 1 }, { 1, 2, 7, 3, 11, 0, 0, 0 }, 362  { 2, 2, 8, 3, 12, 0, 6, 1 }, { 3, 2, 9, 3, 13, 0, 7, 1 }, { 4, 2, 10, 3, 14, 0, 8, 1 }, 363  { 5, 2, 0, 0, 15, 0, 9, 1 }, { 6, 2, 12, 3, 16, 0, 0, 0 }, { 7, 2, 13, 3, 17, 0, 11, 1 }, 364  { 8, 2, 14, 3, 18, 0, 12, 1 }, { 9, 2, 15, 3, 19, 0, 13, 1 }, { 10, 2, 0, 0, 20, 0, 14, 1 }, 365  { 11, 2, 17, 3, 21, 0, 0, 0 }, { 12, 2, 18, 3, 22, 0, 16, 1 }, { 13, 2, 19, 3, 23, 0, 17, 1 }, 366  { 14, 2, 20, 3, 24, 0, 18, 1 }, { 15, 2, 0, 0, 25, 0, 19, 1 }, { 16, 2, 22, 3, 0, 0, 0, 0 }, 367  { 17, 2, 23, 3, 0, 0, 21, 1 }, { 18, 2, 24, 3, 0, 0, 22, 1 }, { 19, 2, 25, 3, 0, 0, 23, 1 }, 368  { 20, 2, 0, 0, 0, 0, 24, 1 } }, 369  370  { { 4, 5, 6, 7 }, { 8, 9, 10, 11 }, { 12, 13, 14, 15 }, { 16, 17, 18, 19 } }, 371  { { 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35 } }, 372  { { 5, 1, 2, 3, 4, 5 }, { 5, 5, 10, 15, 20, 25 }, { 5, 25, 24, 23, 22, 21 }, { 5, 21, 16, 11, 6, 1 } }, 373  { {} } } }, 374  375  // TET_Combination1 376  { // Degree 2 377  { 1, 378  0, 379  0, 380  6, 381  8, 382  { 4, 9 }, 383  { { 0.5, 0, 0 }, { 0.5, 0.5, 0 }, { 0, 0.5, 0 }, { 0, 0, 0.5 }, { 0.5, 0, 0.5 }, { 0, 0.5, 0.5 } }, 384  { { 0, 4, 6, 7 }, 385  { 4, 8, 6, 7 }, 386  { 4, 5, 6, 8 }, 387  { 6, 8, 5, 9 }, 388  { 6, 8, 9, 7 }, 389  { 4, 1, 5, 8 }, 390  { 6, 5, 2, 9 }, 391  { 7, 8, 9, 3 } }, 392  393  { { 1, 0 }, { 6, 1 }, { 7, 2 }, { 8, 2 }, { 6, 0 }, { 7, 1 }, { 1, 2 }, { 8, 0 }, { 8, 1 }, { 8, 2 } }, 394  { { 0, 0, 2, 2, 0, 0, 0, 0 }, 395  { 0, 0, 5, 0, 1, 1, 3, 2 }, 396  { 6, 2, 4, 3, 2, 3, 0, 0 }, 397  { 5, 3, 0, 0, 7, 0, 3, 1 }, 398  { 2, 1, 8, 3, 0, 0, 4, 0 }, 399  { 0, 0, 0, 0, 3, 0, 0, 0 }, 400  { 4, 2, 0, 0, 0, 0, 0, 0 }, 401  { 0, 0, 0, 0, 0, 0, 5, 1 } }, 402  403  { { 4 }, { 5 }, { 6 }, { 7 }, { 8 }, { 9 } }, 404  { {} }, 405  { { 4, 1, 2, 6, 8 }, { 4, 6, 4, 7, 8 }, { 4, 7, 5, 1, 8 }, { 4, 1, 3, 7, 6 } }, 406  { { 6, 0, 0 }, { 7, 1, 1 }, { 1, 2, 2 }, { 8, 0, 0 }, { 8, 1, 1 }, { 8, 2, 2 } } }, 407  408  // Degree 3 409  { 2, 410  1, 411  0, 412  16, 413  27, 414  { 4, 19 }, 415  { { 1 / 3.0, 0, 0 }, 416  { 2 / 3.0, 0, 0 }, 417  { 2 / 3.0, 1 / 3.0, 0 }, 418  { 1 / 3.0, 2 / 3.0, 0 }, 419  { 0, 2 / 3.0, 0 }, 420  { 0, 1 / 3.0, 0 }, 421  { 0, 0, 1 / 3.0 }, 422  { 0, 0, 2 / 3.0 }, 423  { 2 / 3.0, 0, 1 / 3.0 }, 424  { 1 / 3.0, 0, 2 / 3.0 }, 425  { 0, 2 / 3.0, 1 / 3.0 }, 426  { 0, 1 / 3.0, 2 / 3.0 }, 427  { 1 / 3.0, 0, 1 / 3.0 }, 428  { 1 / 3.0, 1 / 3.0, 1 / 3.0 }, 429  { 0, 1 / 3.0, 1 / 3.0 }, 430  { 1 / 3.0, 1 / 3.0, 0 } }, 431  432  { { 0, 4, 9, 10 }, { 4, 16, 9, 10 }, { 4, 19, 9, 16 }, { 9, 16, 19, 18 }, { 9, 16, 18, 10 }, 433  { 4, 5, 19, 16 }, { 5, 12, 19, 16 }, { 5, 6, 19, 12 }, { 19, 12, 6, 17 }, { 19, 12, 17, 16 }, 434  { 5, 1, 6, 12 }, { 19, 6, 7, 17 }, { 19, 17, 8, 18 }, { 19, 7, 8, 17 }, { 8, 17, 7, 14 }, 435  { 8, 17, 14, 18 }, { 8, 7, 2, 14 }, { 19, 16, 17, 18 }, { 9, 19, 8, 18 }, { 10, 16, 18, 11 }, 436  { 16, 13, 18, 11 }, { 16, 17, 18, 13 }, { 18, 13, 17, 15 }, { 18, 13, 15, 11 }, { 16, 12, 17, 13 }, 437  { 18, 17, 14, 15 }, { 11, 13, 15, 3 } }, 438  439  { { 1, 0 }, { 11, 1 }, { 17, 2 }, { 27, 2 }, { 6, 0 }, { 11, 0 }, { 12, 1 }, { 17, 1 }, { 19, 2 }, { 1, 2 }, 440  { 20, 0 }, { 27, 0 }, { 25, 1 }, { 27, 1 }, { 26, 2 }, { 27, 2 }, { 25, 0 }, { 26, 0 }, { 20, 2 }, { 6, 3 } }, 441  { { 0, 0, 2, 2, 0, 0, 0, 0 }, { 0, 0, 5, 0, 1, 1, 3, 2 }, { 6, 2, 4, 3, 2, 3, 0, 0 }, 442  { 5, 3, 18, 0, 19, 0, 3, 1 }, { 2, 1, 20, 3, 0, 0, 4, 0 }, { 0, 0, 7, 2, 3, 0, 0, 0 }, 443  { 0, 0, 10, 0, 6, 1, 8, 2 }, { 11, 2, 9, 3, 7, 3, 0, 0 }, { 10, 3, 0, 0, 12, 0, 8, 1 }, 444  { 7, 1, 25, 3, 18, 3, 9, 0 }, { 0, 0, 0, 0, 8, 0, 0, 0 }, { 9, 2, 0, 0, 14, 0, 0, 0 }, 445  { 18, 2, 16, 0, 19, 1, 14, 2 }, { 12, 2, 15, 3, 13, 3, 0, 0 }, { 16, 3, 0, 0, 17, 0, 14, 1 }, 446  { 13, 1, 26, 3, 0, 0, 15, 0 }, { 15, 2, 0, 0, 0, 0, 0, 0 }, { 4, 1, 22, 3, 13, 0, 10, 2 }, 447  { 4, 2, 13, 2, 0, 0, 0, 0 }, { 0, 0, 21, 2, 0, 0, 5, 1 }, { 0, 0, 24, 0, 20, 1, 22, 2 }, 448  { 25, 2, 23, 3, 21, 3, 18, 1 }, { 24, 3, 0, 0, 26, 0, 22, 1 }, { 21, 1, 27, 3, 0, 0, 23, 0 }, 449  { 0, 0, 0, 0, 22, 0, 10, 1 }, { 23, 2, 0, 0, 0, 0, 16, 1 }, { 0, 0, 0, 0, 0, 0, 24, 1 } }, 450  451  { { 4, 5 }, { 6, 7 }, { 8, 9 }, { 10, 11 }, { 12, 13 }, { 14, 15 } }, 452  { { 16 }, { 17 }, { 18 }, { 19 } }, 453  { { 9, 1, 2, 6, 7, 11, 20, 21, 25, 27 }, 454  { 9, 11, 9, 12, 15, 17, 25, 23, 26, 27 }, 455  { 9, 17, 16, 19, 5, 1, 26, 24, 20, 27 }, 456  { 9, 1, 3, 19, 14, 17, 6, 8, 12, 11 } }, 457  { { 6, 0, 0, 11, 0, 0 }, 458  { 12, 1, 1, 17, 1, 1 }, 459  { 19, 2, 2, 1, 2, 2 }, 460  { 20, 0, 0, 27, 0, 0 }, 461  { 25, 1, 1, 27, 1, 1 }, 462  { 26, 2, 2, 27, 2, 2 } } } }, 463  464  // TET_Combination2 465  { // Degree 2 466  { 1, 467  0, 468  0, 469  6, 470  8, 471  { 4, 9 }, 472  { { 0.5, 0, 0 }, { 0.5, 0.5, 0 }, { 0, 0.5, 0 }, { 0, 0, 0.5 }, { 0.5, 0, 0.5 }, { 0, 0.5, 0.5 } }, 473  { { 0, 4, 6, 7 }, 474  { 4, 8, 9, 7 }, 475  { 4, 9, 8, 5 }, 476  { 4, 5, 6, 9 }, 477  { 6, 4, 9, 7 }, 478  { 4, 1, 5, 8 }, 479  { 6, 5, 2, 9 }, 480  { 7, 8, 9, 3 } }, 481  482  { { 1, 0 }, { 6, 1 }, { 7, 2 }, { 8, 2 }, { 6, 0 }, { 7, 1 }, { 1, 2 }, { 8, 0 }, { 8, 1 }, { 8, 2 } }, 483  { { 0, 0, 5, 0, 0, 0, 0, 0 }, 484  { 0, 0, 8, 3, 5, 1, 3, 3 }, 485  { 4, 0, 0, 0, 6, 2, 2, 3 }, 486  { 3, 0, 7, 0, 5, 3, 0, 0 }, 487  { 1, 1, 2, 2, 0, 0, 4, 2 }, 488  { 0, 0, 0, 0, 3, 2, 0, 0 }, 489  { 4, 1, 0, 0, 0, 0, 0, 0 }, 490  { 0, 0, 0, 0, 0, 0, 2, 1 } }, 491  492  { { 4 }, { 5 }, { 6 }, { 7 }, { 8 }, { 9 } }, 493  { {} }, 494  { { 4, 1, 2, 6, 8 }, { 4, 6, 3, 7, 8 }, { 4, 7, 5, 1, 8 }, { 4, 1, 4, 7, 6 } }, 495  { { 6, 0, 0 }, { 7, 1, 1 }, { 1, 2, 2 }, { 8, 0, 0 }, { 8, 1, 1 }, { 8, 2, 2 } } }, 496  497  // Degree 3 498  { 2, 499  1, 500  0, 501  16, 502  27, 503  { 4, 19 }, 504  { { 1 / 3.0, 0, 0 }, 505  { 2 / 3.0, 0, 0 }, 506  { 2 / 3.0, 1 / 3.0, 0 }, 507  { 1 / 3.0, 2 / 3.0, 0 }, 508  { 0, 2 / 3.0, 0 }, 509  { 0, 1 / 3.0, 0 }, 510  { 0, 0, 1 / 3.0 }, 511  { 0, 0, 2 / 3.0 }, 512  { 2 / 3.0, 0, 1 / 3.0 }, 513  { 1 / 3.0, 0, 2 / 3.0 }, 514  { 0, 2 / 3.0, 1 / 3.0 }, 515  { 0, 1 / 3.0, 2 / 3.0 }, 516  { 1 / 3.0, 0, 1 / 3.0 }, 517  { 1 / 3.0, 1 / 3.0, 1 / 3.0 }, 518  { 0, 1 / 3.0, 1 / 3.0 }, 519  { 1 / 3.0, 1 / 3.0, 0 } }, 520  521  { { 0, 4, 9, 10 }, { 4, 16, 18, 10 }, { 4, 18, 16, 19 }, { 4, 19, 9, 18 }, { 9, 4, 18, 10 }, 522  { 4, 5, 19, 16 }, { 5, 12, 17, 16 }, { 5, 17, 12, 6 }, { 5, 6, 19, 17 }, { 19, 5, 17, 16 }, 523  { 5, 1, 6, 12 }, { 19, 6, 7, 17 }, { 19, 17, 14, 18 }, { 19, 14, 17, 7 }, { 19, 7, 8, 14 }, 524  { 8, 19, 14, 18 }, { 8, 7, 2, 14 }, { 19, 16, 17, 18 }, { 9, 19, 8, 18 }, { 10, 16, 18, 11 }, 525  { 16, 13, 15, 11 }, { 16, 15, 13, 17 }, { 16, 17, 18, 15 }, { 18, 16, 15, 11 }, { 16, 12, 17, 13 }, 526  { 18, 17, 14, 15 }, { 11, 13, 15, 3 } }, 527  528  { { 1, 0 }, { 11, 1 }, { 17, 2 }, { 27, 2 }, { 6, 0 }, { 11, 0 }, { 12, 1 }, { 17, 1 }, { 19, 2 }, { 1, 2 }, 529  { 20, 0 }, { 27, 0 }, { 25, 1 }, { 27, 1 }, { 26, 2 }, { 27, 2 }, { 25, 0 }, { 26, 0 }, { 20, 2 }, { 6, 3 } }, 530  { { 0, 0, 5, 0, 0, 0, 0, 0 }, { 0, 0, 20, 3, 5, 1, 3, 3 }, { 4, 0, 18, 0, 6, 2, 2, 3 }, 531  { 3, 0, 19, 0, 5, 3, 0, 0 }, { 1, 1, 2, 2, 0, 0, 4, 2 }, { 0, 0, 10, 0, 3, 2, 0, 0 }, 532  { 0, 0, 25, 3, 10, 1, 8, 3 }, { 9, 0, 0, 0, 11, 2, 7, 3 }, { 8, 0, 12, 0, 10, 3, 0, 0 }, 533  { 6, 1, 7, 2, 18, 3, 9, 2 }, { 0, 0, 0, 0, 8, 2, 0, 0 }, { 9, 1, 0, 0, 14, 2, 0, 0 }, 534  { 18, 2, 26, 3, 16, 1, 14, 3 }, { 15, 0, 0, 0, 12, 2, 13, 3 }, { 14, 0, 17, 0, 16, 3, 0, 0 }, 535  { 19, 1, 13, 2, 0, 0, 15, 2 }, { 15, 1, 0, 0, 0, 0, 0, 0 }, { 3, 1, 23, 3, 13, 0, 10, 2 }, 536  { 4, 1, 16, 0, 0, 0, 0, 0 }, { 0, 0, 24, 0, 0, 0, 2, 1 }, { 0, 0, 27, 3, 24, 1, 22, 3 }, 537  { 23, 0, 0, 0, 25, 2, 21, 3 }, { 22, 0, 26, 0, 24, 3, 18, 1 }, { 20, 1, 21, 2, 0, 0, 23, 2 }, 538  { 0, 0, 0, 0, 22, 2, 7, 1 }, { 23, 1, 0, 0, 0, 0, 13, 1 }, { 0, 0, 0, 0, 0, 0, 21, 1 } }, 539  540  { { 4, 5 }, { 6, 7 }, { 8, 9 }, { 10, 11 }, { 12, 13 }, { 14, 15 } }, 541  { { 16 }, { 17 }, { 18 }, { 19 } }, 542  { { 9, 1, 2, 6, 7, 11, 20, 21, 25, 27 }, 543  { 9, 11, 8, 12, 14, 17, 25, 22, 26, 27 }, 544  { 9, 17, 16, 19, 5, 1, 26, 24, 20, 27 }, 545  { 9, 1, 4, 19, 15, 17, 6, 9, 12, 11 } }, 546  { { 6, 0, 0, 11, 0, 0 }, 547  { 12, 1, 1, 17, 1, 1 }, 548  { 19, 2, 2, 1, 2, 2 }, 549  { 20, 0, 0, 27, 0, 0 }, 550  { 25, 1, 1, 27, 1, 1 }, 551  { 26, 2, 2, 27, 2, 2 } } } }, 552  553  // TET_Combination3 554  { // Degree 2 555  { 1, 556  0, 557  0, 558  6, 559  8, 560  { 4, 9 }, 561  { { 0.5, 0, 0 }, { 0.5, 0.5, 0 }, { 0, 0.5, 0 }, { 0, 0, 0.5 }, { 0.5, 0, 0.5 }, { 0, 0.5, 0.5 } }, 562  { { 0, 4, 6, 7 }, 563  { 4, 8, 5, 7 }, 564  { 7, 8, 5, 9 }, 565  { 7, 5, 6, 9 }, 566  { 4, 5, 6, 7 }, 567  { 4, 1, 5, 8 }, 568  { 6, 5, 2, 9 }, 569  { 7, 8, 9, 3 } }, 570  571  { { 1, 0 }, { 6, 1 }, { 7, 2 }, { 8, 2 }, { 6, 0 }, { 7, 1 }, { 1, 2 }, { 8, 0 }, { 8, 1 }, { 8, 2 } }, 572  { { 0, 0, 5, 2, 0, 0, 0, 0 }, 573  { 0, 0, 3, 3, 5, 0, 6, 2 }, 574  { 8, 3, 0, 0, 4, 0, 2, 1 }, 575  { 3, 2, 7, 0, 0, 0, 5, 1 }, 576  { 2, 2, 4, 3, 1, 1, 0, 0 }, 577  { 0, 0, 0, 0, 2, 3, 0, 0 }, 578  { 4, 1, 0, 0, 0, 0, 0, 0 }, 579  { 0, 0, 0, 0, 0, 0, 3, 0 } }, 580  581  { { 4 }, { 5 }, { 6 }, { 7 }, { 8 }, { 9 } }, 582  { {} }, 583  { { 4, 1, 2, 6, 8 }, { 4, 6, 3, 7, 8 }, { 4, 7, 4, 1, 8 }, { 4, 1, 5, 7, 6 } }, 584  { { 6, 0, 0 }, { 7, 1, 1 }, { 1, 2, 2 }, { 8, 0, 0 }, { 8, 1, 1 }, { 8, 2, 2 } } }, 585  586  // Degree 3 587  { 2, 588  1, 589  0, 590  16, 591  27, 592  { 4, 19 }, 593  { { 1 / 3.0, 0, 0 }, 594  { 2 / 3.0, 0, 0 }, 595  { 2 / 3.0, 1 / 3.0, 0 }, 596  { 1 / 3.0, 2 / 3.0, 0 }, 597  { 0, 2 / 3.0, 0 }, 598  { 0, 1 / 3.0, 0 }, 599  { 0, 0, 1 / 3.0 }, 600  { 0, 0, 2 / 3.0 }, 601  { 2 / 3.0, 0, 1 / 3.0 }, 602  { 1 / 3.0, 0, 2 / 3.0 }, 603  { 0, 2 / 3.0, 1 / 3.0 }, 604  { 0, 1 / 3.0, 2 / 3.0 }, 605  { 1 / 3.0, 0, 1 / 3.0 }, 606  { 1 / 3.0, 1 / 3.0, 1 / 3.0 }, 607  { 0, 1 / 3.0, 1 / 3.0 }, 608  { 1 / 3.0, 1 / 3.0, 0 } }, 609  610  { { 0, 4, 9, 10 }, { 4, 16, 19, 10 }, { 10, 16, 19, 18 }, { 10, 19, 9, 18 }, { 4, 19, 9, 10 }, 611  { 4, 5, 19, 16 }, { 5, 12, 6, 16 }, { 16, 12, 6, 17 }, { 16, 6, 19, 17 }, { 5, 6, 19, 16 }, 612  { 5, 1, 6, 12 }, { 19, 6, 7, 17 }, { 19, 17, 7, 18 }, { 18, 17, 7, 14 }, { 18, 7, 8, 14 }, 613  { 19, 7, 8, 18 }, { 8, 7, 2, 14 }, { 19, 16, 17, 18 }, { 9, 19, 8, 18 }, { 10, 16, 18, 11 }, 614  { 16, 13, 17, 11 }, { 11, 13, 17, 15 }, { 11, 17, 18, 15 }, { 16, 17, 18, 11 }, { 16, 12, 17, 13 }, 615  { 18, 17, 14, 15 }, { 11, 13, 15, 3 } }, 616  617  { { 1, 0 }, { 11, 1 }, { 17, 2 }, { 27, 2 }, { 6, 0 }, { 11, 0 }, { 12, 1 }, { 17, 1 }, { 19, 2 }, { 1, 2 }, 618  { 20, 0 }, { 27, 0 }, { 25, 1 }, { 27, 1 }, { 26, 2 }, { 27, 2 }, { 25, 0 }, { 26, 0 }, { 20, 2 }, { 6, 3 } }, 619  { { 0, 0, 5, 2, 0, 0, 0, 0 }, { 0, 0, 3, 3, 5, 0, 6, 2 }, { 20, 3, 18, 0, 4, 0, 2, 1 }, 620  { 3, 2, 19, 0, 0, 0, 5, 1 }, { 2, 2, 4, 3, 1, 1, 0, 0 }, { 0, 0, 10, 2, 2, 3, 0, 0 }, 621  { 0, 0, 8, 3, 10, 0, 11, 2 }, { 25, 3, 0, 0, 9, 0, 7, 1 }, { 8, 2, 12, 0, 18, 3, 10, 1 }, 622  { 7, 2, 9, 3, 6, 1, 0, 0 }, { 0, 0, 0, 0, 7, 3, 0, 0 }, { 9, 1, 0, 0, 13, 3, 0, 0 }, 623  { 18, 2, 14, 3, 16, 0, 12, 2 }, { 26, 3, 0, 0, 15, 0, 13, 1 }, { 14, 2, 17, 0, 0, 0, 16, 1 }, 624  { 13, 2, 15, 3, 19, 1, 0, 0 }, { 15, 1, 0, 0, 0, 0, 0, 0 }, { 3, 1, 24, 3, 13, 0, 9, 2 }, 625  { 4, 1, 16, 2, 0, 0, 0, 0 }, { 0, 0, 24, 2, 0, 0, 3, 0 }, { 0, 0, 22, 3, 24, 0, 25, 2 }, 626  { 27, 3, 0, 0, 23, 0, 21, 1 }, { 22, 2, 26, 0, 0, 0, 24, 1 }, { 21, 2, 23, 3, 20, 1, 18, 1 }, 627  { 0, 0, 0, 0, 21, 3, 8, 0 }, { 23, 1, 0, 0, 0, 0, 14, 0 }, { 0, 0, 0, 0, 0, 0, 22, 0 } }, 628  629  { { 4, 5 }, { 6, 7 }, { 8, 9 }, { 10, 11 }, { 12, 13 }, { 14, 15 } }, 630  { { 16 }, { 17 }, { 18 }, { 19 } }, 631  { { 9, 1, 2, 6, 7, 11, 20, 21, 25, 27 }, 632  { 9, 11, 8, 12, 14, 17, 25, 22, 26, 27 }, 633  { 9, 17, 15, 19, 4, 1, 26, 23, 20, 27 }, 634  { 9, 1, 5, 19, 16, 17, 6, 10, 12, 11 } }, 635  { { 6, 0, 0, 11, 0, 0 }, 636  { 12, 1, 1, 17, 1, 1 }, 637  { 19, 2, 2, 1, 2, 2 }, 638  { 20, 0, 0, 27, 0, 0 }, 639  { 25, 1, 1, 27, 1, 1 }, 640  { 26, 2, 2, 27, 2, 2 } } } }, 641  642  // PRISM 643  { 644  { 0, 0, 0, 0, 0, {}, { {} }, { {} }, { {} }, { {} }, { {} }, { {} }, { {} }, { {} } }, // deg 2 645  646  { 0, 0, 0, 0, 0, {}, { {} }, { {} }, { {} }, { {} }, { {} }, { {} }, { {} }, { {} } } // deg3 647  }, 648  649  // KNIFE 650  { { 0, 0, 0, 0, 0, {}, { {} }, { {} }, { {} }, { {} }, { {} }, { {} }, { {} }, { {} } }, 651  { 0, 0, 0, 0, 0, {}, { {} }, { {} }, { {} }, { {} }, { {} }, { {} }, { {} }, { {} } } }, 652  653  // HEX 654  { // Deg 2 655  { 1, 656  1, 657  1, 658  19, 659  8, 660  { 8, 26 }, 661  { { 0, -1, -1 }, 662  { 1, 0, -1 }, 663  { 0, 1, -1 }, 664  { -1, 0, -1 }, 665  { -1, -1, 0 }, 666  { 1, -1, 0 }, 667  { 1, 1, 0 }, 668  { -1, 1, 0 }, 669  { 0, -1, 1 }, 670  { 1, 0, 1 }, 671  { 0, 1, 1 }, 672  { -1, 0, 1 }, 673  { 0, -1, 0 }, 674  { 1, 0, 0 }, 675  { 0, 1, 0 }, 676  { -1, 0, 0 }, 677  { 0, 0, -1 }, 678  { 0, 0, 1 }, 679  { 0, 0, 0 } }, 680  { { 0, 8, 24, 11, 12, 20, 26, 23 }, 681  { 8, 1, 9, 24, 20, 13, 21, 26 }, 682  { 11, 24, 10, 3, 23, 26, 22, 15 }, 683  { 24, 9, 2, 10, 26, 21, 14, 22 }, 684  { 12, 20, 26, 23, 4, 16, 25, 19 }, 685  { 20, 13, 21, 26, 16, 5, 17, 25 }, 686  { 23, 26, 22, 15, 19, 25, 18, 7 }, 687  { 26, 21, 14, 22, 25, 17, 6, 18 } }, 688  689  { { 1, 0 }, { 2, 1 }, { 4, 2 }, { 3, 3 }, { 5, 5 }, { 6, 5 }, { 8, 5 }, { 7, 5 }, { 2, 0 }, 690  { 4, 1 }, { 3, 2 }, { 1, 3 }, { 5, 0 }, { 6, 1 }, { 8, 2 }, { 7, 3 }, { 6, 5 }, { 8, 5 }, 691  { 7, 5 }, { 5, 5 }, { 6, 0 }, { 8, 1 }, { 7, 2 }, { 5, 3 }, { 2, 4 }, { 8, 5 }, { 8, 0 } }, 692  { { 0, 0, 2, 3, 3, 0, 0, 0, 0, 0, 5, 4 }, 693  { 0, 0, 0, 0, 4, 0, 1, 1, 0, 0, 6, 4 }, 694  { 1, 2, 4, 3, 0, 0, 0, 0, 0, 0, 7, 4 }, 695  { 2, 2, 0, 0, 0, 0, 3, 1, 0, 0, 8, 4 }, 696  { 0, 0, 6, 3, 7, 0, 0, 0, 1, 5, 0, 0 }, 697  { 0, 0, 0, 0, 8, 0, 5, 1, 2, 5, 0, 0 }, 698  { 5, 2, 8, 3, 0, 0, 0, 0, 3, 5, 0, 0 }, 699  { 6, 2, 0, 0, 0, 0, 7, 1, 4, 5, 0, 0 } }, 700  701  { { 8 }, { 9 }, { 10 }, { 11 }, { 12 }, { 13 }, { 14 }, { 15 }, { 16 }, { 17 }, { 18 }, { 19 } }, 702  { { 20 }, { 21 }, { 22 }, { 23 }, { 24 }, { 25 } }, 703  { { 4, 1, 2, 6, 5 }, 704  { 4, 2, 4, 8, 6 }, 705  { 4, 4, 3, 7, 8 }, 706  { 4, 3, 1, 5, 7 }, 707  { 4, 1, 3, 4, 2 }, 708  { 4, 5, 6, 8, 7 } }, 709  { { 2, 0, 0 }, 710  { 4, 1, 1 }, 711  { 3, 2, 2 }, 712  { 1, 3, 3 }, 713  { 5, 0, 0 }, 714  { 6, 1, 1 }, 715  { 8, 2, 2 }, 716  { 7, 3, 3 }, 717  { 6, 0, 4 }, 718  { 8, 1, 5 }, 719  { 7, 2, 6 }, 720  { 5, 3, 7 } } }, 721  722  // Deg 3 723  { 2, 724  4, 725  8, 726  56, 727  27, 728  { 8, 63 }, 729  { { -1 / 3.0, -1, -1 }, 730  { 1 / 3.0, -1, -1 }, 731  { 1, -1 / 3.0, -1 }, 732  { 1, 1 / 3.0, -1 }, 733  { 1 / 3.0, 1, -1 }, 734  { -1 / 3.0, 1, -1 }, 735  { -1, 1 / 3.0, -1 }, 736  { -1, -1 / 3.0, -1 }, 737  { -1, -1, -1 / 3.0 }, 738  { -1, -1, 1 / 3.0 }, 739  { 1, -1, -1 / 3.0 }, 740  { 1, -1, 1 / 3.0 }, 741  { 1, 1, -1 / 3.0 }, 742  { 1, 1, 1 / 3.0 }, 743  { -1, 1, -1 / 3.0 }, 744  { -1, 1, 1 / 3.0 }, 745  { -1 / 3.0, -1, 1 }, 746  { 1 / 3.0, -1, 1 }, 747  { 1, -1 / 3.0, 1 }, 748  { 1, 1 / 3.0, 1 }, 749  { 1 / 3.0, 1, 1 }, 750  { -1 / 3.0, 1, 1 }, 751  { -1, 1 / 3.0, 1 }, 752  { -1, -1 / 3.0, 1 }, 753  { -1 / 3.0, -1, -1 / 3.0 }, 754  { 1 / 3.0, -1, -1 / 3.0 }, 755  { 1 / 3.0, -1, 1 / 3.0 }, 756  { -1 / 3.0, -1, 1 / 3.0 }, 757  { 1, -1 / 3.0, -1 / 3.0 }, 758  { 1, 1 / 3.0, -1 / 3.0 }, 759  { 1, 1 / 3.0, 1 / 3.0 }, 760  { 1, -1 / 3.0, 1 / 3.0 }, 761  { 1 / 3.0, 1, -1 / 3.0 }, 762  { -1 / 3.0, 1, -1 / 3.0 }, 763  { -1 / 3.0, 1, 1 / 3.0 }, 764  { 1 / 3.0, 1, 1 / 3.0 }, 765  { -1, 1 / 3.0, -1 / 3.0 }, 766  { -1, -1 / 3.0, -1 / 3.0 }, 767  { -1, -1 / 3.0, 1 / 3.0 }, 768  { -1, 1 / 3.0, 1 / 3.0 }, 769  { -1 / 3.0, -1 / 3.0, -1 }, 770  { -1 / 3.0, 1 / 3.0, -1 }, 771  { 1 / 3.0, 1 / 3.0, -1 }, 772  { 1 / 3.0, -1 / 3.0, -1 }, 773  { -1 / 3.0, -1 / 3.0, 1 }, 774  { 1 / 3.0, -1 / 3.0, 1 }, 775  { 1 / 3.0, 1 / 3.0, 1 }, 776  { -1 / 3.0, 1 / 3.0, 1 }, 777  { -1 / 3.0, -1 / 3.0, -1 / 3.0 }, 778  { 1 / 3.0, -1 / 3.0, -1 / 3.0 }, 779  { 1 / 3.0, 1 / 3.0, -1 / 3.0 }, 780  { -1 / 3.0, 1 / 3.0, -1 / 3.0 }, 781  { -1 / 3.0, -1 / 3.0, 1 / 3.0 }, 782  { 1 / 3.0, -1 / 3.0, 1 / 3.0 }, 783  { 1 / 3.0, 1 / 3.0, 1 / 3.0 }, 784  { -1 / 3.0, 1 / 3.0, 1 / 3.0 } }, 785  786  { { 0, 8, 48, 15, 16, 32, 56, 45 }, { 8, 9, 51, 48, 32, 33, 57, 56 }, { 9, 1, 10, 51, 33, 18, 36, 57 }, 787  { 15, 48, 49, 14, 45, 56, 59, 44 }, { 48, 51, 50, 49, 56, 57, 58, 59 }, { 51, 10, 11, 50, 57, 36, 37, 58 }, 788  { 14, 49, 13, 3, 44, 59, 41, 22 }, { 49, 50, 12, 13, 59, 58, 40, 41 }, { 50, 11, 2, 12, 58, 37, 20, 40 }, 789  { 16, 32, 56, 45, 17, 35, 60, 46 }, { 32, 33, 57, 56, 35, 34, 61, 60 }, { 33, 18, 36, 57, 34, 19, 39, 61 }, 790  { 45, 56, 59, 44, 46, 60, 63, 47 }, { 56, 57, 58, 59, 60, 61, 62, 63 }, { 57, 36, 37, 58, 61, 39, 38, 62 }, 791  { 44, 59, 41, 22, 47, 63, 42, 23 }, { 59, 58, 40, 41, 63, 62, 43, 42 }, { 58, 37, 20, 40, 62, 38, 21, 43 }, 792  { 17, 35, 60, 46, 4, 24, 52, 31 }, { 35, 34, 61, 60, 24, 25, 53, 52 }, { 34, 19, 39, 61, 25, 5, 26, 53 }, 793  { 46, 60, 63, 47, 31, 52, 55, 30 }, { 60, 61, 62, 63, 52, 53, 54, 55 }, { 61, 39, 38, 62, 53, 26, 27, 54 }, 794  { 47, 63, 42, 23, 30, 55, 29, 7 }, { 63, 62, 43, 42, 55, 54, 28, 29 }, { 62, 38, 21, 43, 54, 27, 6, 28 } }, 795  796  { { 1, 0 }, { 3, 1 }, { 9, 2 }, { 7, 3 }, { 19, 5 }, { 21, 5 }, { 27, 5 }, { 25, 5 }, { 2, 0 }, { 3, 0 }, 797  { 6, 1 }, { 9, 1 }, { 8, 2 }, { 7, 2 }, { 4, 3 }, { 1, 3 }, { 10, 0 }, { 19, 0 }, { 12, 1 }, { 21, 1 }, 798  { 18, 2 }, { 27, 2 }, { 16, 3 }, { 25, 3 }, { 20, 5 }, { 21, 5 }, { 24, 5 }, { 27, 5 }, { 26, 5 }, { 25, 5 }, 799  { 22, 5 }, { 19, 5 }, { 11, 0 }, { 12, 0 }, { 21, 0 }, { 20, 0 }, { 15, 1 }, { 18, 1 }, { 27, 1 }, { 24, 1 }, 800  { 17, 2 }, { 16, 2 }, { 25, 2 }, { 26, 2 }, { 13, 3 }, { 10, 3 }, { 19, 3 }, { 22, 3 }, { 5, 4 }, { 8, 4 }, 801  { 9, 4 }, { 6, 4 }, { 23, 5 }, { 24, 5 }, { 27, 5 }, { 26, 5 }, { 14, 4 }, { 15, 4 }, { 18, 4 }, { 17, 4 }, 802  { 23, 4 }, { 24, 4 }, { 27, 4 }, { 26, 4 } }, 803  804  { { 0, 0, 2, 3, 4, 0, 0, 0, 0, 0, 10, 4 }, { 0, 0, 3, 3, 5, 0, 1, 1, 0, 0, 11, 4 }, 805  { 0, 0, 0, 0, 6, 0, 2, 1, 0, 0, 12, 4 }, { 1, 2, 5, 3, 7, 0, 0, 0, 0, 0, 13, 4 }, 806  { 2, 2, 6, 3, 8, 0, 4, 1, 0, 0, 14, 4 }, { 3, 2, 0, 0, 9, 0, 5, 1, 0, 0, 15, 4 }, 807  { 4, 2, 8, 3, 0, 0, 0, 0, 0, 0, 16, 4 }, { 5, 2, 9, 3, 0, 0, 7, 1, 0, 0, 17, 4 }, 808  { 6, 2, 0, 0, 0, 0, 8, 1, 0, 0, 18, 4 }, 809  810  { 0, 0, 11, 3, 13, 0, 0, 0, 1, 5, 19, 4 }, { 0, 0, 12, 3, 14, 0, 10, 1, 2, 5, 20, 4 }, 811  { 0, 0, 0, 0, 15, 0, 11, 1, 3, 5, 21, 4 }, { 10, 2, 14, 3, 16, 0, 0, 0, 4, 5, 22, 4 }, 812  { 11, 2, 15, 3, 17, 0, 13, 1, 5, 5, 23, 4 }, { 12, 2, 0, 0, 18, 0, 14, 1, 6, 5, 24, 4 }, 813  { 13, 2, 17, 3, 0, 0, 0, 0, 7, 5, 25, 4 }, { 14, 2, 18, 3, 0, 0, 16, 1, 8, 5, 26, 4 }, 814  { 15, 2, 0, 0, 0, 0, 17, 1, 9, 5, 27, 4 }, 815  816  { 0, 0, 20, 3, 22, 0, 0, 0, 10, 5, 0, 0 }, { 0, 0, 21, 3, 23, 0, 19, 1, 11, 5, 0, 0 }, 817  { 0, 0, 0, 0, 24, 0, 20, 1, 12, 5, 0, 0 }, { 19, 2, 23, 3, 25, 0, 0, 0, 13, 5, 0, 0 }, 818  { 20, 2, 24, 3, 26, 0, 22, 1, 14, 5, 0, 0 }, { 21, 2, 0, 0, 27, 0, 23, 1, 15, 5, 0, 0 }, 819  { 22, 2, 26, 3, 0, 0, 0, 0, 16, 5, 0, 0 }, { 23, 2, 27, 3, 0, 0, 25, 1, 17, 5, 0, 0 }, 820  { 24, 2, 0, 0, 0, 0, 26, 1, 18, 5, 0, 0 } }, 821  822  { { 8, 9 }, 823  { 10, 11 }, 824  { 12, 13 }, 825  { 14, 15 }, 826  { 16, 17 }, 827  { 18, 19 }, 828  { 20, 21 }, 829  { 22, 23 }, 830  { 24, 25 }, 831  { 26, 27 }, 832  { 28, 29 }, 833  { 30, 31 } }, 834  { { 32, 33, 34, 35 }, 835  { 36, 37, 38, 39 }, 836  { 40, 41, 42, 43 }, 837  { 44, 45, 46, 47 }, 838  { 48, 49, 50, 51 }, 839  { 52, 53, 54, 55 } }, 840  { { 9, 1, 2, 3, 10, 11, 12, 19, 20, 21 }, 841  { 9, 3, 6, 9, 12, 15, 18, 21, 24, 27 }, 842  { 9, 9, 8, 7, 18, 17, 16, 27, 26, 25 }, 843  { 9, 7, 4, 1, 16, 13, 10, 25, 22, 19 }, 844  { 9, 1, 4, 7, 2, 5, 8, 3, 6, 9 }, 845  { 9, 19, 20, 21, 22, 23, 24, 25, 26, 27 } }, 846  { { 2, 0, 0, 3, 0, 0 }, 847  { 6, 1, 1, 9, 1, 1 }, 848  { 8, 2, 2, 7, 2, 2 }, 849  { 4, 3, 3, 1, 3, 3 }, 850  { 10, 0, 0, 19, 0, 0 }, 851  { 12, 1, 1, 21, 1, 1 }, 852  { 18, 2, 2, 27, 2, 2 }, 853  { 16, 3, 3, 25, 3, 3 }, 854  { 20, 0, 4, 21, 0, 4 }, 855  { 24, 1, 5, 27, 1, 5 }, 856  { 26, 2, 6, 25, 2, 6 }, 857  { 22, 3, 7, 19, 3, 7 } } } } }; 858  859 const NestedRefine::pmat NestedRefine::permutation[2] = { 860  // MBTRI 861  { 6, 862  { { 0, 1, 2 }, { 1, 0, 2 }, { 2, 1, 0 }, { 0, 2, 1 }, { 2, 0, 1 }, { 1, 2, 0 } }, 863  { { 0, 1, 2 }, { 0, 2, 1 }, { 1, 0, 2 }, { 2, 1, 0 }, { 2, 0, 1 }, { 1, 2, 0 } }, 864  { 1, 0, 0, 0, 1, 1 }, 865  { { 1, 2, 3, 4 }, { 3, 2, 1, 4 }, { 4, 2, 3, 1 }, { 1, 2, 4, 3 }, { 4, 2, 1, 3 }, { 3, 2, 4, 1 } }, 866  { { 1, 2, 3, 4, 5, 6, 7, 8, 9 }, 867  { 5, 4, 3, 2, 1, 8, 7, 6, 9 }, 868  { 9, 7, 8, 4, 5, 6, 2, 3, 1 }, 869  { 1, 2, 6, 7, 9, 3, 4, 8, 5 }, 870  { 9, 7, 6, 2, 1, 8, 4, 3, 5 }, 871  { 5, 4, 8, 7, 9, 3, 2, 6, 1 } } }, 872  873  // MBQUAD 874  { 8, 875  { { 0, 1, 2, 3 }, 876  { 1, 0, 3, 2 }, 877  { 2, 1, 0, 3 }, 878  { 3, 2, 1, 0 }, 879  { 0, 3, 2, 1 }, 880  { 3, 0, 1, 2 }, 881  { 2, 3, 0, 1 }, 882  { 1, 2, 3, 0 } }, 883  { { 0, 1, 2, 3 }, 884  { 0, 3, 2, 1 }, 885  { 1, 0, 3, 2 }, 886  { 2, 1, 0, 3 }, 887  { 3, 2, 1, 0 }, 888  { 3, 0, 1, 2 }, 889  { 2, 3, 0, 1 }, 890  { 1, 2, 3, 0 } }, 891  { 1, 0, 0, 0, 0, 1, 1, 1 }, 892  { { 1, 2, 3, 4 }, 893  { 2, 1, 4, 3 }, 894  { 3, 2, 1, 4 }, 895  { 4, 3, 2, 1 }, 896  { 1, 4, 3, 2 }, 897  { 4, 1, 2, 3 }, 898  { 3, 4, 1, 2 }, 899  { 2, 3, 4, 1 } }, 900  { { 1, 2, 3, 4, 5, 6, 7, 8, 9 }, 901  { 3, 2, 1, 6, 5, 4, 9, 8, 7 }, 902  { 9, 6, 3, 8, 5, 2, 7, 1 }, 903  { 7, 8, 9, 4, 5, 6, 1, 2, 3 }, 904  { 1, 4, 7, 2, 5, 8, 3, 6, 9 }, 905  { 7, 4, 1, 8, 5, 2, 9, 6, 3 }, 906  { 9, 8, 7, 6, 5, 4, 3, 2, 1 }, 907  { 3, 6, 9, 2, 5, 8, 1, 4, 7 } } } }; 908  909 const NestedRefine::intFEdge NestedRefine::intFacEdg[2][2] = { 910  // MBTRI 911  { { 3, { { 3, 4 }, { 4, 5 }, { 5, 3 } } }, 912  { 9, { { 8, 3 }, { 3, 9 }, { 9, 4 }, { 4, 5 }, { 5, 9 }, { 9, 8 }, { 7, 9 }, { 9, 6 }, { 6, 7 } } } }, 913  914  // MBQUAD 915  { { 4, { { 4, 8 }, { 7, 8 }, { 8, 6 }, { 8, 5 } } }, 916  { 12, 917  { { 4, 12 }, 918  { 12, 15 }, 919  { 15, 9 }, 920  { 5, 13 }, 921  { 13, 14 }, 922  { 14, 8 }, 923  { 11, 12 }, 924  { 12, 13 }, 925  { 13, 6 }, 926  { 10, 15 }, 927  { 15, 14 }, 928  { 14, 7 } } } } }; 929  930 } // namespace moab 931  932 #endif