Mesh Oriented datABase
(version 5.4.1)
Array-based unstructured mesh datastructure
|
00001 /** 00002 * MOAB, a Mesh-Oriented datABase, is a software component for creating, 00003 * storing and accessing finite element mesh data. 00004 * 00005 * Copyright 2004 Sandia Corporation. Under the terms of Contract 00006 * DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government 00007 * retains certain rights in this software. 00008 * 00009 * This library is free software; you can redistribute it and/or 00010 * modify it under the terms of the GNU Lesser General Public 00011 * License as published by the Free Software Foundation; either 00012 * version 2.1 of the License, or (at your option) any later version. 00013 * 00014 */ 00015 00016 #ifndef MBCN_ARRAYS_HPP 00017 #define MBCN_ARRAYS_HPP 00018 00019 namespace moab 00020 { 00021 00022 const CN::ConnMap CN::mConnectivityMap[MBMAXTYPE][3] = { 00023 // vertex-edge 00024 { { 0, 00025 0, 00026 { 0 }, 00027 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00028 MBMAXTYPE, MBMAXTYPE }, 00029 { { 0 } } }, 00030 // vertex-face 00031 { 0, 00032 0, 00033 { 0 }, 00034 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00035 MBMAXTYPE, MBMAXTYPE }, 00036 { { 0 } } }, 00037 // vertex-region 00038 { 0, 00039 0, 00040 { 0 }, 00041 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00042 MBMAXTYPE, MBMAXTYPE }, 00043 { { 0 } } } }, 00044 00045 // edge-edge 00046 { { 1, 00047 1, 00048 { 2 }, 00049 { MBEDGE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00050 MBMAXTYPE, MBMAXTYPE }, 00051 { { 0, 1 } } }, 00052 // edge-face 00053 { 1, 00054 0, 00055 { 0 }, 00056 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00057 MBMAXTYPE, MBMAXTYPE }, 00058 { { 0 } } }, 00059 // edge-region 00060 { 1, 00061 0, 00062 { 0 }, 00063 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00064 MBMAXTYPE, MBMAXTYPE }, 00065 { { 0 } } } }, 00066 00067 // tri-edge 00068 { { 2, 00069 3, 00070 { 2, 2, 2 }, 00071 { MBEDGE, MBEDGE, MBEDGE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00072 MBMAXTYPE, MBMAXTYPE }, 00073 { { 0, 1 }, { 1, 2 }, { 2, 0 } } }, 00074 // tri-face 00075 { 2, 00076 1, 00077 { 3 }, 00078 { MBTRI, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00079 MBMAXTYPE, MBMAXTYPE }, 00080 { { 0, 1, 2 } } }, 00081 // tri-region 00082 { 2, 00083 0, 00084 { 0 }, 00085 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00086 MBMAXTYPE, MBMAXTYPE }, 00087 { { 0 } } } }, 00088 00089 // quad-edge 00090 { { 2, 00091 4, 00092 { 2, 2, 2, 2 }, 00093 { MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00094 MBMAXTYPE }, 00095 { { 0, 1 }, { 1, 2 }, { 2, 3 }, { 3, 0 } } }, 00096 // quad-face 00097 { 2, 00098 1, 00099 { 4 }, 00100 { MBQUAD, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00101 MBMAXTYPE, MBMAXTYPE }, 00102 { { 0, 1, 2, 3 } } }, 00103 // quad-region 00104 { 2, 00105 0, 00106 { 0 }, 00107 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00108 MBMAXTYPE, MBMAXTYPE }, 00109 { { 0 } } } }, 00110 00111 // polygon-edge 00112 { { 2, 00113 0, 00114 { 0 }, 00115 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00116 MBMAXTYPE }, 00117 { { 0 } } }, 00118 // polygon-face 00119 { 2, 00120 1, 00121 { 0 }, 00122 { MBPOLYGON, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00123 MBMAXTYPE, MBMAXTYPE }, 00124 { { 0 } } }, 00125 // polygon-region 00126 { 2, 00127 0, 00128 { 0 }, 00129 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00130 MBMAXTYPE, MBMAXTYPE }, 00131 { { 0 } } } }, 00132 00133 // tet-edge 00134 { { 3, 00135 6, 00136 { 2, 2, 2, 2, 2, 2 }, 00137 { MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00138 MBMAXTYPE }, 00139 { { 0, 1 }, { 1, 2 }, { 2, 0 }, { 0, 3 }, { 1, 3 }, { 2, 3 } } }, 00140 // tet-face 00141 { 3, 00142 4, 00143 { 3, 3, 3, 3 }, 00144 { MBTRI, MBTRI, MBTRI, MBTRI, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00145 MBMAXTYPE }, 00146 { { 0, 1, 3 }, { 1, 2, 3 }, { 0, 3, 2 }, { 0, 2, 1 } } }, 00147 // tet-tet 00148 { 3, 00149 1, 00150 { 4 }, 00151 { MBTET, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00152 MBMAXTYPE, MBMAXTYPE }, 00153 { { 0, 1, 2, 3 } } } }, 00154 00155 // pyramid-edge 00156 { { 3, 00157 8, 00158 { 2, 2, 2, 2, 2, 2, 2, 2 }, 00159 { MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE }, 00160 { { 0, 1 }, { 1, 2 }, { 2, 3 }, { 3, 0 }, { 0, 4 }, { 1, 4 }, { 2, 4 }, { 3, 4 } } }, 00161 // pyramid-face 00162 { 3, 00163 5, 00164 { 3, 3, 3, 3, 4 }, 00165 { MBTRI, MBTRI, MBTRI, MBTRI, MBQUAD, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00166 MBMAXTYPE }, 00167 { { 0, 1, 4 }, { 1, 2, 4 }, { 2, 3, 4 }, { 3, 0, 4 }, { 0, 3, 2, 1 } } }, 00168 // pyramid-pyramid 00169 { 3, 00170 1, 00171 { 5 }, 00172 { MBPYRAMID, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00173 MBMAXTYPE, MBMAXTYPE }, 00174 { { 0, 1, 2, 3, 4 } } } }, 00175 00176 // wedge-edge 00177 { { 3, 00178 9, 00179 { 2, 2, 2, 2, 2, 2, 2, 2, 2 }, 00180 { MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE }, 00181 { { 0, 1 }, { 1, 2 }, { 2, 0 }, { 0, 3 }, { 1, 4 }, { 2, 5 }, { 3, 4 }, { 4, 5 }, { 5, 3 } } }, 00182 // wedge-face 00183 { 3, 00184 5, 00185 { 4, 4, 4, 3, 3 }, 00186 { MBQUAD, MBQUAD, MBQUAD, MBTRI, MBTRI, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00187 MBMAXTYPE }, 00188 { { 0, 1, 4, 3 }, { 1, 2, 5, 4 }, { 0, 3, 5, 2 }, { 0, 2, 1 }, { 3, 4, 5 } } }, 00189 // wedge-wedge 00190 { 3, 00191 1, 00192 { 6 }, 00193 { MBPRISM, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00194 MBMAXTYPE, MBMAXTYPE }, 00195 { { 0, 1, 2, 3, 4, 5 } } } }, 00196 00197 // knife-edge 00198 { { 3, 00199 10, 00200 { 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 }, 00201 { MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBMAXTYPE, MBMAXTYPE }, 00202 { { 0, 1 }, { 1, 2 }, { 2, 3 }, { 3, 0 }, { 0, 4 }, { 1, 5 }, { 2, 6 }, { 3, 5 }, { 4, 5 }, { 5, 6 } } }, 00203 // knife-face 00204 { 3, 00205 5, 00206 { 4, 4, 4, 4, 4 }, 00207 { MBQUAD, MBQUAD, MBQUAD, MBQUAD, MBQUAD, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00208 MBMAXTYPE }, 00209 { { 0, 1, 5, 4 }, { 1, 2, 6, 5 }, { 2, 3, 5, 6 }, { 3, 0, 4, 5 }, { 0, 3, 2, 1 } } }, 00210 // knife-knife 00211 { 3, 00212 1, 00213 { 7 }, 00214 { MBKNIFE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00215 MBMAXTYPE, MBMAXTYPE }, 00216 { { 0, 1, 2, 3, 4, 5, 6 } } } }, 00217 00218 // hex-edge 00219 { { 3, 00220 12, 00221 { 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 }, 00222 { MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE, MBEDGE }, 00223 { { 0, 1 }, 00224 { 1, 2 }, 00225 { 2, 3 }, 00226 { 3, 0 }, 00227 { 0, 4 }, 00228 { 1, 5 }, 00229 { 2, 6 }, 00230 { 3, 7 }, 00231 { 4, 5 }, 00232 { 5, 6 }, 00233 { 6, 7 }, 00234 { 7, 4 } } }, 00235 // hex-face 00236 { 3, 00237 6, 00238 { 4, 4, 4, 4, 4, 4 }, 00239 { MBQUAD, MBQUAD, MBQUAD, MBQUAD, MBQUAD, MBQUAD, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00240 MBMAXTYPE }, 00241 { { 0, 1, 5, 4 }, { 1, 2, 6, 5 }, { 2, 3, 7, 6 }, { 3, 0, 4, 7 }, { 0, 3, 2, 1 }, { 4, 5, 6, 7 } } }, 00242 // hex-hex 00243 { 3, 00244 1, 00245 { 8 }, 00246 { MBHEX, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00247 MBMAXTYPE, MBMAXTYPE }, 00248 { { 0, 1, 2, 3, 4, 5, 6, 7 } } } }, 00249 00250 // polyhedron-edge 00251 { { 3, 00252 0, 00253 { 0 }, 00254 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00255 MBMAXTYPE, MBMAXTYPE }, 00256 { { 0 } } }, 00257 // polyhedron-face 00258 { 3, 00259 0, 00260 { 0 }, 00261 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00262 MBMAXTYPE, MBMAXTYPE }, 00263 { { 0 } } }, 00264 // polyhedron-polyhedron 00265 { 3, 00266 1, 00267 { 0 }, 00268 { MBPOLYHEDRON, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00269 MBMAXTYPE, MBMAXTYPE, MBMAXTYPE }, 00270 { { 0 } } } }, 00271 00272 // meshset-edge 00273 { { 4, 00274 0, 00275 { 0 }, 00276 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00277 MBMAXTYPE, MBMAXTYPE }, 00278 { { 0 } } }, // not handled yet? 00279 // meshset-face 00280 { 4, 00281 0, 00282 { 0 }, 00283 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00284 MBMAXTYPE, MBMAXTYPE }, 00285 { { 0 } } }, // not handled yet? 00286 // meshset-region 00287 { 4, 00288 0, 00289 { 0 }, 00290 { MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, MBMAXTYPE, 00291 MBMAXTYPE, MBMAXTYPE }, 00292 { { 0 } } } } // not handled yet? 00293 00294 // maxtype 00295 }; 00296 00297 const CN::UpConnMap CN::mUpConnMap[MBMAXTYPE][4][4] = { 00298 { 00299 // type MBVERTEX 00300 { { { 1 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } }, // source dim 0 00301 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } }, // source dim 1 00302 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } }, // source dim 2 00303 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } }, // source dim 3 00304 }, 00305 00306 { 00307 // type MBEDGE 00308 { 00309 // source dim 0 00310 { // target dim 0 00311 { 1, 1 }, // 1 connected vertices for all vertices 00312 { { 1 }, { 0 } } }, // end target dimension 0 00313 { // target dimension 1 00314 { 1, 1 }, // 1 connected edges for all vertices 00315 { { 0 }, { 0 } } }, // end target dimension 1 00316 { // target dimension 2 00317 { 0 }, // 0 connected faces for all vertices 00318 { { 0 } } }, // end target dimension 2 00319 { // target dimension 3 00320 { 0 }, // 0 connected elements for all vertices 00321 { { 0 } } } // end target dimension 3 00322 }, // end source dim 0 00323 00324 { 00325 // source dim 1 00326 { // target dim 0 00327 { 2 }, // 2 vertices for all edges 00328 { { 0, 1 } } }, // end target dim 0 00329 { // target dim 1 00330 { 0 }, // 0 edges for all edges 00331 { { 0 } } }, // end target dim 1 00332 { // target dim 2 00333 { 0 }, // 2 faces for all edges 00334 { { 0 } } }, // end target dim 2 00335 { // target dimension 3 00336 { 0 }, // 0 connected elements for all vertices 00337 { { 0 } } } // end target dimension 3 00338 }, // end source dim 1 00339 00340 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } }, // source dim 2 00341 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } }, // source dim 3 00342 }, // end type MBEDGE 00343 00344 { 00345 // type MBTRI 00346 { 00347 // source dim 0 00348 { // target dim 0 00349 { 2, 2, 2 }, // 2 connected vertices for all vertices 00350 { { 1, 2 }, { 0, 2 }, { 0, 1 } } }, // end target dimension 0 00351 { // target dimension 1 00352 { 2, 2, 2 }, // 2 connected edges for all vertices 00353 { { 0, 2 }, { 0, 1 }, { 1, 2 } } }, // end target dimension 1 00354 { // target dimension 2 00355 { 1, 1, 1 }, // 1 connected faces for all vertices 00356 { { 0 }, { 0 }, { 0 } } }, // end target dimension 2 00357 { // target dimension 3 00358 { 0 }, // 0 connected elements for all vertices 00359 { { 0 } } } // end target dimension 3 00360 }, // end source dim 0 00361 00362 { 00363 // source dim 1 00364 { // target dim 0 00365 { 2, 2, 2 }, // 2 vertices for all edges 00366 { { 0, 1 }, { 1, 2 }, { 0, 2 } } }, // end target dim 0 00367 { // target dim 1 00368 { 2, 2, 2 }, // 2 edges for all edges 00369 { { 1, 2 }, { 0, 2 }, { 0, 1 } } }, // end target dim 1 00370 { // target dim 2 00371 { 1, 1, 1 }, // 1 faces for all edges 00372 { { 0 }, { 0 }, { 0 } } }, // end target dim 2 00373 { // target dimension 3 00374 { 0 }, // 0 connected elements for all vertices 00375 { { 0 } } } // end target dimension 3 00376 }, // end source dim 1 00377 00378 { 00379 // source dim 2 00380 { // target dim 0 00381 { 3 }, // 3 vertices for all faces 00382 { { 0, 1, 2 } } }, // end target dim 0 00383 { // target dim 1 00384 { 3 }, // 3 edges for all faces 00385 { { 0, 1, 2 } } }, // end target dim 1 00386 { // target dim 2 00387 { 0 }, // 0 faces for all faces 00388 { { 0 } } }, // end target dim 2 00389 { // target dimension 3 00390 { 0 }, // 0 connected elements for all vertices 00391 { { 0 } } } // end target dimension 3 00392 }, // end source dim 2 00393 00394 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } } // source dim 3 00395 }, // end type MBTRI 00396 00397 { 00398 // type MBQUAD 00399 { 00400 // source dim 0 00401 { // target dim 0 00402 { 2, 2, 2, 2 }, // 2 connected vertices for all vertices 00403 { { 1, 3 }, { 0, 2 }, { 2, 3 }, { 0, 2 } } }, // end target dimension 0 00404 { // target dimension 1 00405 { 2, 2, 2, 2 }, // 2 connected edges for all vertices 00406 { { 0, 3 }, { 0, 1 }, { 1, 2 }, { 2, 3 } } }, // end target dimension 1 00407 { // target dimension 2 00408 { 1, 1, 1, 1 }, // 1 connected faces for all vertices 00409 { { 0 }, { 0 }, { 0 }, { 0 } } }, // end target dimension 2 00410 { // target dimension 3 00411 { 0 }, // 0 connected elements for all vertices 00412 { { 0 } } } // end target dimension 3 00413 }, // end source dim 0 00414 00415 { 00416 // source dim 1 00417 { // target dim 0 00418 { 2, 2, 2, 2 }, // 2 vertices for all edges 00419 { { 0, 1 }, { 1, 2 }, { 2, 3 }, { 0, 3 } } }, // end target dim 0 00420 { // target dim 1 00421 { 2, 2, 2, 2 }, // 2 edges for all edges 00422 { { 1, 3 }, { 0, 2 }, { 1, 3 }, { 0, 2 } } }, // end target dim 1 00423 { // target dim 2 00424 { 1, 1, 1, 1 }, // 1 faces for all edges 00425 { { 0 }, { 0 }, { 0 }, { 0 } } }, // end target dim 2 00426 { // target dimension 3 00427 { 0 }, // 0 connected elements for all vertices 00428 { { 0 } } } // end target dimension 3 00429 }, // end source dim 1 00430 00431 { 00432 // source dim 2 00433 { // target dim 0 00434 { 4 }, // 4 vertices for all faces 00435 { { 0, 1, 2, 3 } } }, // end target dim 0 00436 { // target dim 1 00437 { 4 }, // 4 edges for all faces 00438 { { 0, 1, 2, 3 } } }, // end target dim 1 00439 { // target dim 2 00440 { 0 }, // 4 faces for all faces 00441 { { 0 } } }, // end target dim 2 00442 { // target dimension 3 00443 { 0 }, // 0 connected elements for all vertices 00444 { { 0 } } } // end target dimension 3 00445 }, // end source dim 2 00446 00447 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } } // source dim 3 00448 }, // end type MBQUAD 00449 00450 { 00451 // type MBPOLYGON 00452 { // source dim 0 00453 { // target dim 0 00454 { 0 }, 00455 { { 0 } } }, 00456 { // target dimension 1 00457 { 0 }, 00458 { { 0 } } }, 00459 { // target dimension 2 00460 { 0 }, 00461 { { 0 } } }, 00462 { // target dimension 3 00463 { 0 }, 00464 { { 0 } } } }, // end source dim 0 00465 00466 { // source dim 1 00467 { // target dim 0 00468 { 0 }, 00469 { { 0 } } }, 00470 { // target dimension 1 00471 { 0 }, 00472 { { 0 } } }, 00473 { // target dimension 2 00474 { 0 }, 00475 { { 0 } } }, 00476 { // target dimension 3 00477 { 0 }, 00478 { { 0 } } } }, // end source dim 1 00479 00480 { // source dim 2 00481 { // target dim 0 00482 { 0 }, 00483 { { 0 } } }, 00484 { // target dimension 1 00485 { 0 }, 00486 { { 0 } } }, 00487 { // target dimension 2 00488 { 0 }, 00489 { { 0 } } }, 00490 { // target dimension 3 00491 { 0 }, 00492 { { 0 } } } }, // end source dim 2 00493 00494 { // source dim 3 00495 { // target dim 0 00496 { 0 }, 00497 { { 0 } } }, 00498 { // target dimension 1 00499 { 0 }, 00500 { { 0 } } }, 00501 { // target dimension 2 00502 { 0 }, 00503 { { 0 } } }, 00504 { // target dimension 3 00505 { 0 }, 00506 { { 0 } } } } // end source dim 3 00507 }, // end type MBPOLYGON 00508 00509 { 00510 // type MBTET 00511 { 00512 // source dim 0 00513 { // target dim 0 00514 { 3, 3, 3, 3 }, // 3 connected vertices for all vertices 00515 { { 1, 2, 3 }, { 0, 2, 3 }, { 0, 1, 3 }, { 0, 1, 2 } } }, // end target dimension 0 00516 { // target dimension 1 00517 { 3, 3, 3, 3 }, // 3 connected edges for all vertices 00518 { { 0, 2, 3 }, { 0, 1, 4 }, { 1, 2, 5 }, { 3, 4, 5 } } }, // end target dimension 1 00519 { // target dimension 2 00520 { 3, 3, 3, 3 }, // 3 connected faces for all vertices 00521 { { 0, 2, 3 }, { 0, 1, 3 }, { 1, 2, 3 }, { 0, 1, 2 } } }, // end target dimension 2 00522 { // target dimension 3 00523 { 1, 1, 1, 1 }, // 0 connected elements for all vertices 00524 { { 0 }, { 0 }, { 0 }, { 0 } } } // end target dimension 3 00525 }, // end source dim 0 00526 00527 { 00528 // source dim 1 00529 { // target dim 0 00530 { 2, 2, 2, 2, 2, 2 }, // 2 vertices for all edges 00531 { { 0, 1 }, { 1, 2 }, { 0, 2 }, { 0, 3 }, { 1, 3 }, { 2, 3 } } }, // end target dim 0 00532 { // target dim 1 00533 { 4, 4, 4, 4, 4, 4 }, // 4 edges for all edges 00534 { { 1, 2, 3, 4 }, 00535 { 0, 2, 4, 5 }, 00536 { 0, 1, 3, 5 }, 00537 { 0, 2, 4, 5 }, 00538 { 0, 1, 3, 5 }, 00539 { 1, 2, 3, 4 } } }, // end target dim 1 00540 { // target dim 2 00541 { 2, 2, 2, 2, 2, 2 }, // 2 faces for all edges 00542 { { 0, 3 }, { 1, 3 }, { 2, 3 }, { 0, 2 }, { 0, 1 }, { 1, 2 } } }, // end target dim 2 00543 { // target dimension 3 00544 { 1, 1, 1, 1, 1, 1 }, // 0 connected elements for all vertices 00545 { { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 } } } // end target dimension 3 00546 }, // end source dim 1 00547 00548 { 00549 // source dim 2 00550 { // target dim 0 00551 { 3, 3, 3, 3 }, // 3 vertices for all faces 00552 { { 0, 1, 3 }, { 1, 2, 3 }, { 0, 3, 2 }, { 0, 2, 1 } } }, // end target dim 0 00553 { // target dim 1 00554 { 3, 3, 3, 3 }, // 3 edges for all faces 00555 { { 0, 4, 3 }, { 1, 5, 4 }, { 3, 5, 2 }, { 2, 1, 0 } } }, // end target dim 1 00556 { // target dim 2 00557 { 3, 3, 3, 3 }, // 3 faces for all faces 00558 { { 3, 1, 2 }, { 3, 2, 0 }, { 0, 1, 3 }, { 2, 1, 0 } } }, // end target dim 2 00559 { // target dimension 3 00560 { 1, 1, 1, 1 }, // 0 connected elements for all vertices 00561 { { 0 }, { 0 }, { 0 }, { 0 } } } // end target dimension 3 00562 }, // end source dim 2 00563 00564 { 00565 // source dim 3 00566 { // target dim 0 00567 { 4 }, // 4 vertices for all elements 00568 { { 0, 1, 2, 3 } } }, // end target dim 0 00569 { // target dim 1 00570 { 6 }, // 6 edges for all elements 00571 { { 0, 1, 2, 3, 4, 5 } } }, // end target dim 1 00572 { // target dim 2 00573 { 4 }, // 4 faces for all elements 00574 { { 0, 1, 2, 3 } } }, // end target dim 2 00575 { // target dimension 3 00576 { 0 }, // 0 connected elements for all vertices 00577 { { 0 } } } // end target dimension 3 00578 } // end source dim 3 00579 }, // end type MBTET 00580 00581 { 00582 // type MBPYRAMID 00583 { 00584 // source dim 0 00585 { // target dim 0 00586 { 3, 3, 3, 3, 4 }, // 3 connected vertices for most vertices 00587 { { 1, 3, 4 }, { 0, 2, 4 }, { 1, 3, 4 }, { 0, 2, 4 }, { 0, 1, 2, 3 } } }, // end target dimension 0 00588 { // target dimension 1 00589 { 3, 3, 3, 3, 4 }, // 3 connected edges for most vertices 00590 { { 0, 3, 4 }, { 0, 1, 5 }, { 1, 2, 6 }, { 2, 3, 7 }, { 4, 5, 6, 7 } } }, // end target dimension 1 00591 { // target dimension 2 00592 { 3, 3, 3, 3, 4 }, // 3 connected faces for most vertices 00593 { { 0, 3, 4 }, { 0, 1, 4 }, { 1, 2, 4 }, { 2, 3, 4 }, { 0, 1, 2, 3 } } }, // end target dimension 2 00594 { // target dimension 3 00595 { 1, 1, 1, 1, 1 }, // 0 connected elements for all vertices 00596 { { 0 }, { 0 }, { 0 }, { 0 }, { 0 } } } // end target dimension 3 00597 }, // end source dim 0 00598 00599 { 00600 // source dim 1 00601 { // target dim 0 00602 { 2, 2, 2, 2, 2, 2, 2, 2 }, // 2 vertices for all edges 00603 { { 0, 1 }, { 1, 2 }, { 2, 3 }, { 0, 3 }, { 0, 4 }, { 1, 4 }, { 2, 4 }, { 3, 4 } } }, // end target dim 0 00604 { // target dim 1 00605 { 4, 4, 4, 4, 5, 5, 5, 5 }, // 4 edges for some edges, 5 for others 00606 { { 1, 3, 4, 5 }, 00607 { 0, 2, 5, 6 }, 00608 { 1, 3, 6, 7 }, 00609 { 0, 2, 4, 7 }, 00610 { 0, 3, 5, 6, 7 }, 00611 { 0, 1, 4, 6, 7 }, 00612 { 1, 2, 4, 5, 7 }, 00613 { 2, 3, 4, 5, 6 } } }, // end target dim 1 00614 { // target dim 2 00615 { 2, 2, 2, 2, 2, 2, 2, 2 }, // 2 faces for all edges 00616 { { 0, 4 }, { 1, 4 }, { 2, 4 }, { 3, 4 }, { 0, 3 }, { 0, 1 }, { 1, 2 }, { 2, 3 } } }, // end target dim 2 00617 { // target dimension 3 00618 { 1, 1, 1, 1, 1, 1, 1, 1 }, // 0 connected elements for all vertices 00619 { { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 } } } // end target dimension 00620 // 3 00621 }, // end source dim 1 00622 00623 { 00624 // source dim 2 00625 { // target dim 0 00626 { 3, 3, 3, 3, 4 }, // 3 vertices for most edges 00627 { { 0, 1, 4 }, { 1, 2, 4 }, { 2, 3, 4 }, { 0, 3, 4 }, { 0, 1, 2, 3 } } }, // end target dim 0 00628 { // target dim 1 00629 { 3, 3, 3, 3, 4 }, // 3 edges for most faces 00630 { { 0, 5, 4 }, { 1, 6, 5 }, { 6, 2, 7 }, { 3, 4, 7 }, { 0, 3, 2, 1 } } }, // end target dim 1 00631 { // target dim 2 00632 { 3, 3, 3, 3, 4 }, // 4 faces for most faces 00633 { { 4, 1, 3 }, { 4, 2, 0 }, { 4, 3, 1 }, { 4, 0, 2 }, { 0, 1, 2, 3 } } }, // end target dim 2 00634 { // target dimension 3 00635 { 1, 1, 1, 1, 1 }, // 0 connected elements for all vertices 00636 { { 0 }, { 0 }, { 0 }, { 0 }, { 0 } } } // end target dimension 3 00637 }, // end source dim 2 00638 00639 { 00640 // source dim 3 00641 { // target dim 0 00642 { 5 }, // 5 vertices for all elements 00643 { { 0, 1, 2, 3, 4 } } }, // end target dim 0 00644 { // target dim 1 00645 { 8 }, // 8 edges for all elements 00646 { { 0, 1, 2, 3, 4, 5, 6, 7 } } }, // end target dim 1 00647 { // target dim 2 00648 { 5 }, // 5 faces for all elements 00649 { { 0, 1, 2, 3, 4 } } }, // end target dim 2 00650 { // target dimension 3 00651 { 0 }, // 0 connected elements for all vertices 00652 { { 0 } } } // end target dimension 3 00653 } // end source dim 3 00654 }, // end type MBPYRAMID 00655 00656 { 00657 // type MBPRISM 00658 { 00659 // source dim 0 00660 { // target dim 0 00661 { 3, 3, 3, 3, 3, 3 }, // 3 connected vertices for all vertices 00662 { { 1, 2, 3 }, { 0, 2, 4 }, { 0, 1, 5 }, { 0, 4, 5 }, { 1, 3, 5 }, { 2, 3, 4 } } }, // end target 00663 // dimension 0 00664 { // target dimension 1 00665 { 3, 3, 3, 3, 3, 3 }, // 3 connected edges for all vertices 00666 { { 0, 2, 3 }, { 0, 1, 4 }, { 1, 2, 5 }, { 3, 6, 8 }, { 4, 6, 7 }, { 5, 7, 8 } } }, // end target 00667 // dimension 1 00668 { // target dimension 2 00669 { 3, 3, 3, 3, 3, 3 }, // 3 connected faces for all vertices 00670 { { 0, 2, 3 }, { 0, 1, 3 }, { 1, 2, 3 }, { 0, 2, 4 }, { 0, 1, 4 }, { 1, 2, 4 } } }, // end target 00671 // dimension 2 00672 { // target dimension 3 00673 { 1, 1, 1, 1, 1, 1 }, // 0 connected elements for all vertices 00674 { { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 } } } // end target dimension 3 00675 }, // end source dim 0 00676 00677 { 00678 // source dim 1 00679 { // target dim 0 00680 { 2, 2, 2, 2, 2, 2, 2, 2, 2 }, // 2 vertices for all edges 00681 { { 0, 1 }, { 1, 2 }, { 0, 2 }, { 0, 3 }, { 1, 4 }, { 2, 5 }, { 3, 4 }, { 4, 5 }, { 3, 5 } } }, // end 00682 // target 00683 // dim 0 00684 { // target dim 1 00685 { 4, 4, 4, 4, 4, 4, 4, 4, 4 }, // 4 edges for all edges 00686 { { 1, 2, 3, 4 }, 00687 { 0, 2, 4, 5 }, 00688 { 0, 1, 3, 5 }, 00689 { 0, 2, 6, 8 }, 00690 { 0, 1, 6, 7 }, 00691 { 1, 2, 7, 8 }, 00692 { 3, 4, 7, 8 }, 00693 { 4, 5, 6, 8 }, 00694 { 3, 5, 6, 7 } } }, // end target dim 1 00695 { // target dim 2 00696 { 2, 2, 2, 2, 2, 2, 2, 2, 2 }, // 2 faces for all edges 00697 { { 0, 3 }, { 1, 3 }, { 2, 3 }, { 0, 2 }, { 0, 1 }, { 1, 2 }, { 0, 4 }, { 1, 4 }, { 2, 4 } } }, // end 00698 // target 00699 // dim 2 00700 { // target dimension 3 00701 { 1, 1, 1, 1, 1, 1, 1, 1, 1 }, // 0 connected elements for all vertices 00702 { { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 } } } // end target 00703 // dimension 3 00704 }, // end source dim 1 00705 00706 { 00707 // source dim 2 00708 { // target dim 0 00709 { 4, 4, 4, 3, 3 }, // 4 vertices for some faces, 3 for others 00710 { { 0, 1, 3, 4 }, { 1, 2, 4, 5 }, { 0, 2, 3, 5 }, { 0, 1, 2 }, { 3, 4, 5 } } }, // end target dim 0 00711 { // target dim 1 00712 { 4, 4, 4, 3, 3 }, // 4 edges for some faces, 3 for others 00713 { { 0, 4, 6, 3 }, { 1, 5, 7, 4 }, { 3, 8, 5, 2 }, { 2, 1, 0 }, { 6, 7, 8 } } }, // end target dim 1 00714 { // target dim 2 00715 { 4, 4, 4, 3, 3 }, // 4 faces for some faces, 3 for others 00716 { { 3, 1, 4, 2 }, { 3, 2, 4, 0 }, { 0, 4, 1, 3 }, { 2, 1, 0 }, { 0, 1, 2 } } }, // end target dim 2 00717 { // target dimension 3 00718 { 1, 1, 1, 1, 1 }, // 0 connected elements for all vertices 00719 { { 0 }, { 0 }, { 0 }, { 0 }, { 0 } } } // end target dimension 3 00720 }, // end source dim 2 00721 00722 { 00723 // source dim 3 00724 { // target dim 0 00725 { 6 }, // 6 vertices for all elements 00726 { { 0, 1, 2, 3, 4, 5 } } }, // end target dim 0 00727 { // target dim 1 00728 { 9 }, // 9 edges for all elements 00729 { { 0, 1, 2, 3, 4, 5, 6, 7, 8 } } }, // end target dim 1 00730 { // target dim 2 00731 { 5 }, // 5 faces for all elements 00732 { { 0, 1, 2, 3, 4 } } }, // end target dim 2 00733 { // target dimension 3 00734 { 0 }, // 0 connected elements for all vertices 00735 { { 0 } } } // end target dimension 3 00736 } // end source dim 3 00737 }, // end type MBPRISM 00738 00739 { 00740 // type MBKNIFE 00741 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } }, // source dim 0 00742 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } }, // source dim 1 00743 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } }, // source dim 2 00744 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } } // source dim 3 00745 }, // end type MBKNIFE 00746 00747 { 00748 // type MBHEX 00749 { 00750 // source dim 0 00751 { // target dim 0 00752 { 3, 3, 3, 3, 3, 3, 3, 3 }, // 3 connected vertices for all vertices 00753 { { 1, 3, 4 }, 00754 { 0, 2, 5 }, 00755 { 1, 3, 6 }, 00756 { 0, 2, 7 }, 00757 { 0, 5, 7 }, 00758 { 1, 4, 6 }, 00759 { 2, 5, 7 }, 00760 { 3, 4, 6 } } }, // end target dimension 0 00761 { // target dimension 1 00762 { 3, 3, 3, 3, 3, 3, 3, 3 }, // 3 connected edges for all vertices 00763 { { 0, 3, 4 }, 00764 { 0, 1, 5 }, 00765 { 1, 2, 6 }, 00766 { 2, 3, 7 }, 00767 { 4, 8, 11 }, 00768 { 5, 8, 9 }, 00769 { 6, 9, 10 }, 00770 { 7, 10, 11 } } }, // end target dimension 1 00771 { // target dimension 2 00772 { 3, 3, 3, 3, 3, 3, 3, 3 }, // 3 connected faces for all vertices 00773 { { 0, 3, 4 }, 00774 { 0, 1, 4 }, 00775 { 1, 2, 4 }, 00776 { 2, 3, 4 }, 00777 { 0, 3, 5 }, 00778 { 0, 1, 5 }, 00779 { 1, 2, 5 }, 00780 { 2, 3, 5 } } }, // end target dimension 2 00781 { // target dimension 3 00782 { 1, 1, 1, 1, 1, 1, 1, 1 }, // 0 connected elements for all vertices 00783 { { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 } } } // end target dimension 00784 // 3 00785 }, // end source dim 0 00786 00787 { 00788 // source dim 1 00789 { // target dim 0 00790 { 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 }, // 2 vertices for all edges 00791 { { 0, 1 }, 00792 { 1, 2 }, 00793 { 2, 3 }, 00794 { 0, 3 }, 00795 { 0, 4 }, 00796 { 1, 5 }, 00797 { 2, 6 }, 00798 { 3, 7 }, 00799 { 4, 5 }, 00800 { 5, 6 }, 00801 { 6, 7 }, 00802 { 4, 7 } } }, // end target dim 0 00803 { // target dim 1 00804 { 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 }, // 4 edges for all edges 00805 { { 1, 3, 4, 5 }, 00806 { 0, 2, 5, 6 }, 00807 { 1, 3, 6, 7 }, 00808 { 0, 2, 4, 7 }, 00809 { 0, 3, 8, 11 }, 00810 { 0, 1, 8, 9 }, 00811 { 1, 2, 9, 10 }, 00812 { 2, 3, 10, 11 }, 00813 { 4, 5, 9, 11 }, 00814 { 5, 6, 8, 10 }, 00815 { 6, 7, 9, 11 }, 00816 { 4, 7, 8, 10 } } }, // end target dim 1 00817 { // target dim 2 00818 { 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 }, // 2 faces for all edges 00819 { { 0, 4 }, 00820 { 1, 4 }, 00821 { 2, 4 }, 00822 { 3, 4 }, 00823 { 0, 3 }, 00824 { 0, 1 }, 00825 { 1, 2 }, 00826 { 2, 3 }, 00827 { 0, 5 }, 00828 { 1, 5 }, 00829 { 2, 5 }, 00830 { 3, 5 } } }, // end target dim 2 00831 { // target dimension 3 00832 { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, // 0 connected elements for all vertices 00833 { { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 } } } // end target 00834 // dimension 3 00835 }, // end source dim 1 00836 00837 { 00838 // source dim 2 00839 { // target dim 0 00840 { 4, 4, 4, 4, 4, 4 }, // 4 vertices for all faces 00841 { { 0, 1, 4, 5 }, 00842 { 1, 2, 5, 6 }, 00843 { 2, 3, 6, 7 }, 00844 { 0, 3, 4, 7 }, 00845 { 0, 1, 2, 3 }, 00846 { 4, 5, 6, 7 } } }, // end target dim 0 00847 { // target dim 1 00848 { 4, 4, 4, 4, 4, 4 }, // 4 edges for all faces 00849 { { 0, 5, 8, 4 }, 00850 { 1, 6, 9, 5 }, 00851 { 2, 7, 10, 6 }, 00852 { 3, 4, 11, 7 }, 00853 { 0, 3, 2, 1 }, 00854 { 8, 9, 10, 11 } } }, // end target dim 1 00855 { // target dim 2 00856 { 4, 4, 4, 4, 4, 4 }, // 4 faces for all faces 00857 { { 4, 1, 5, 3 }, 00858 { 4, 2, 5, 0 }, 00859 { 4, 3, 5, 1 }, 00860 { 4, 0, 5, 2 }, 00861 { 0, 3, 2, 1 }, 00862 { 0, 1, 2, 3 } } }, // end target dim 2 00863 { // target dimension 3 00864 { 1, 1, 1, 1, 1, 1 }, // 0 connected elements for all vertices 00865 { { 0 }, { 0 }, { 0 }, { 0 }, { 0 }, { 0 } } } // end target dimension 3 00866 }, // end source dim 2 00867 00868 { 00869 // source dim 3 00870 { // target dim 0 00871 { 8 }, // 8 vertices for all elements 00872 { { 0, 1, 2, 3, 4, 5, 6, 7 } } }, // end target dim 0 00873 { // target dim 1 00874 { 12 }, // 12 edges for all elements 00875 { { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 } } }, // end target dim 1 00876 { // target dim 2 00877 { 6 }, // 6 faces for all elements 00878 { { 0, 1, 2, 3, 4, 5 } } }, // end target dim 2 00879 { // target dimension 3 00880 { 0 }, // 0 connected elements for all vertices 00881 { { 0 } } } // end target dimension 3 00882 } // end source dim 3 00883 }, // end type MBHEX 00884 00885 { 00886 // type MBPOLYHEDRON 00887 { // source dim 0 00888 { // target dim 0 00889 { 0 }, 00890 { { 0 } } }, 00891 { // target dimension 1 00892 { 0 }, 00893 { { 0 } } }, 00894 { // target dimension 2 00895 { 0 }, 00896 { { 0 } } }, 00897 { // target dimension 3 00898 { 0 }, 00899 { { 0 } } } }, // end source dim 0 00900 00901 { // source dim 1 00902 { // target dim 0 00903 { 0 }, 00904 { { 0 } } }, 00905 { // target dimension 1 00906 { 0 }, 00907 { { 0 } } }, 00908 { // target dimension 2 00909 { 0 }, 00910 { { 0 } } }, 00911 { // target dimension 3 00912 { 0 }, 00913 { { 0 } } } }, // end source dim 1 00914 00915 { // source dim 2 00916 { // target dim 0 00917 { 0 }, 00918 { { 0 } } }, 00919 { // target dimension 1 00920 { 0 }, 00921 { { 0 } } }, 00922 { // target dimension 2 00923 { 0 }, 00924 { { 0 } } }, 00925 { // target dimension 3 00926 { 0 }, 00927 { { 0 } } } }, // end source dim 2 00928 00929 { // source dim 3 00930 { // target dim 0 00931 { 0 }, 00932 { { 0 } } }, 00933 { // target dimension 1 00934 { 0 }, 00935 { { 0 } } }, 00936 { // target dimension 2 00937 { 0 }, 00938 { { 0 } } }, 00939 { // target dimension 3 00940 { 0 }, 00941 { { 0 } } } } // end source dim 3 00942 }, // end type MBPOLYHEDRON 00943 00944 { 00945 // type MBENTITYSET 00946 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } }, // source dim 0 00947 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } }, // source dim 1 00948 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } }, // source dim 2 00949 { { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } }, { { 0 }, { { 0 } } } } // source dim 3 00950 } // end type MBENTITYSET 00951 }; 00952 const unsigned char E = CN::MID_EDGE_BIT; 00953 const unsigned char F = CN::MID_FACE_BIT; 00954 const unsigned char R = CN::MID_REGION_BIT; 00955 const unsigned char CN::midNodesPerType[MBMAXTYPE][MAX_NODES_PER_ELEMENT + 1] = { 00956 // vertex 00957 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 00958 // edge 00959 { 0, 0, 0, E, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 00960 // tri 00961 { 0, 0, 0, 0, F, 0, E, E | F, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 00962 // quad 00963 { 0, 0, 0, 0, 0, F, 0, 0, E, E | F, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 00964 // polygon 00965 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 00966 // tet 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,13, 14, 15 00967 { 0, 0, 0, 0, 0, R, 0, 0, F, F | R, E, E | R, 0, 0, E | F, E | F | R, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 00968 // pyramid 3, 4, 5, 6, 7, 8, 9,10, 11, 12,13, 14, 15,16,17, 18, 19 00969 { 0, 0, 0, 0, 0, 0, R, 0, 0, 0, F, F | R, 0, E, E | R, 0, 0, 0, E | F, E | F | R, 0, 0, 0, 0, 0, 0, 0, 0 }, 00970 // prism 2, 3, 4, 5, 6, 7, 8, 9,10,11, 12, 13,14,15, 16, 17,18,19, 20, 21 00971 { 0, 0, 0, 0, 0, 0, 0, R, 0, 0, 0, F, F | R, 0, 0, E, E | R, 0, 0, 0, E | F, E | F | R, 0, 0, 0, 0, 0, 0 }, 00972 // knife 2, 3, 4, 5, 6, 7, 8, 9,10,11, 12,13, 14,15,16,17, 18, 19,20,21, 22, 23 00973 { 0, 0, 0, 0, 0, 0, 0, 0, R, 0, 0, 0, F, F | R, 0, 0, 0, E, E | R, 0, 0, 0, E | F, E | F | R, 0, 0, 0, 0 }, 00974 // hex 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,11,12,13,14,15, 16,17,18,19,20, 21, 22,23,24,25, 26, 27 00975 { 0, 0, 0, 0, 0, 0, 0, 0, 0, R, 0, 0, 0, 0, F, F | R, 0, 0, 0, 0, E, E | R, 0, 0, 0, 0, E | F, E | F | R }, 00976 // polyhedron 00977 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 00978 // set 00979 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 00980 }; 00981 00982 } // namespace moab 00983 00984 #endif