Mesh Oriented datABase  (version 5.4.1)
Array-based unstructured mesh datastructure
patran_order.h
Go to the documentation of this file.
00001 #ifndef PATRAN_ORDER_H
00002 #define PATRAN_ORDER_H
00003 
00004 #ifdef __cplusplus
00005 extern "C" {
00006 namespace moab
00007 {
00008 #endif
00009 
00010     /* Define maps that, when indexed by the PATRAN connectivity index return
00011    the corresponding index in the MOAB connectivity. */
00012 
00013     static const int patran_tet8_order[]  = { 0, 1, 2, 3, 7, 5, 6, 4 };
00014     static const int patran_tet9_order[]  = { 0, 1, 2, 3, 8, 7, 5, 6, 4 };
00015     static const int patran_tet14_order[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13, 11, 12, 10 };
00016     static const int patran_tet15_order[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 14, 13, 11, 12, 10 };
00017 
00018     static const int patran_hex14_order[] = { 0, 1, 2, 3, 4, 5, 6, 7, 12, 13, 11, 9, 8, 10 };
00019     static const int patran_hex15_order[] = { 0, 1, 2, 3, 4, 5, 6, 7, 14, 12, 13, 11, 9, 8, 10 };
00020     static const int patran_hex26_order[] = { 0,  1,  2,  3,  4,  5,  6,  7,  8,  9,  10, 11, 12,
00021                                               13, 14, 15, 16, 17, 18, 19, 24, 25, 23, 21, 20, 22 };
00022     static const int patran_hex27_order[] = { 0,  1,  2,  3,  4,  5,  6,  7,  8,  9,  10, 11, 12, 13,
00023                                               14, 15, 16, 17, 18, 19, 26, 24, 25, 23, 21, 20, 22 };
00024 
00025     static const int patran_pri11_order[] = { 0, 1, 2, 3, 4, 5, 9, 10, 7, 8, 6 };
00026     static const int patran_pri12_order[] = { 0, 1, 2, 3, 4, 5, 11, 9, 10, 7, 8, 6 };
00027     static const int patran_pri20_order[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 18, 19, 16, 17, 15 };
00028     static const int patran_pri21_order[] = { 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10,
00029                                               11, 12, 13, 14, 20, 18, 19, 16, 17, 15 };
00030 
00031     /* Define list of maps for an element type, indexed by the number
00032    of nodes in the element. Entries are NULL where MBCN connectivity
00033    is the same as PATRAN (or the number of nodes is invalid.) */
00034 
00035     static const int* const patran_null_order[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00036                                                     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00037                                                     0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
00038     static const int* const patran_tet_order[]  = { 0,
00039                                                    0,
00040                                                    0,
00041                                                    0,
00042                                                    0,
00043                                                    0,
00044                                                    0,
00045                                                    0,
00046                                                    patran_tet8_order,
00047                                                    patran_tet9_order,
00048                                                    0,
00049                                                    0,
00050                                                    0,
00051                                                    0,
00052                                                    patran_tet14_order,
00053                                                    patran_tet15_order,
00054                                                    0,
00055                                                    0,
00056                                                    0,
00057                                                    0,
00058                                                    0,
00059                                                    0,
00060                                                    0,
00061                                                    0,
00062                                                    0,
00063                                                    0,
00064                                                    0,
00065                                                    0,
00066                                                    0,
00067                                                    0,
00068                                                    0,
00069                                                    0,
00070                                                    0,
00071                                                    0,
00072                                                    0,
00073                                                    0,
00074                                                    0,
00075                                                    0,
00076                                                    0,
00077                                                    0,
00078                                                    0,
00079                                                    0,
00080                                                    0,
00081                                                    0,
00082                                                    0,
00083                                                    0,
00084                                                    0,
00085                                                    0,
00086                                                    0,
00087                                                    0,
00088                                                    0,
00089                                                    0,
00090                                                    0,
00091                                                    0,
00092                                                    0,
00093                                                    0,
00094                                                    0 };
00095     static const int* const patran_hex_order[]  = { 0,
00096                                                    0,
00097                                                    0,
00098                                                    0,
00099                                                    0,
00100                                                    0,
00101                                                    0,
00102                                                    0,
00103                                                    0,
00104                                                    0,
00105                                                    0,
00106                                                    0,
00107                                                    0,
00108                                                    0,
00109                                                    patran_hex14_order,
00110                                                    patran_hex15_order,
00111                                                    0,
00112                                                    0,
00113                                                    0,
00114                                                    0,
00115                                                    0,
00116                                                    0,
00117                                                    0,
00118                                                    0,
00119                                                    0,
00120                                                    0,
00121                                                    patran_hex26_order,
00122                                                    patran_hex27_order,
00123                                                    0,
00124                                                    0,
00125                                                    0,
00126                                                    0,
00127                                                    0,
00128                                                    0,
00129                                                    0,
00130                                                    0,
00131                                                    0,
00132                                                    0,
00133                                                    0,
00134                                                    0,
00135                                                    0,
00136                                                    0,
00137                                                    0,
00138                                                    0,
00139                                                    0,
00140                                                    0,
00141                                                    0,
00142                                                    0,
00143                                                    0,
00144                                                    0,
00145                                                    0,
00146                                                    0,
00147                                                    0,
00148                                                    0,
00149                                                    0,
00150                                                    0,
00151                                                    0,
00152                                                    0,
00153                                                    0,
00154                                                    0,
00155                                                    0,
00156                                                    0,
00157                                                    0,
00158                                                    0,
00159                                                    0 };
00160     static const int* const patran_pri_order[]  = { 0,
00161                                                    0,
00162                                                    0,
00163                                                    0,
00164                                                    0,
00165                                                    0,
00166                                                    0,
00167                                                    0,
00168                                                    0,
00169                                                    0,
00170                                                    0,
00171                                                    patran_pri11_order,
00172                                                    patran_pri12_order,
00173                                                    0,
00174                                                    0,
00175                                                    0,
00176                                                    0,
00177                                                    0,
00178                                                    0,
00179                                                    0,
00180                                                    patran_pri20_order,
00181                                                    patran_pri21_order,
00182                                                    0,
00183                                                    0,
00184                                                    0,
00185                                                    0,
00186                                                    0,
00187                                                    0,
00188                                                    0,
00189                                                    0,
00190                                                    0,
00191                                                    0,
00192                                                    0,
00193                                                    0,
00194                                                    0,
00195                                                    0,
00196                                                    0,
00197                                                    0,
00198                                                    0,
00199                                                    0,
00200                                                    0,
00201                                                    0,
00202                                                    0,
00203                                                    0,
00204                                                    0,
00205                                                    0,
00206                                                    0,
00207                                                    0,
00208                                                    0,
00209                                                    0,
00210                                                    0,
00211                                                    0,
00212                                                    0,
00213                                                    0,
00214                                                    0,
00215                                                    0,
00216                                                    0,
00217                                                    0,
00218                                                    0,
00219                                                    0,
00220                                                    0,
00221                                                    0,
00222                                                    0,
00223                                                    0,
00224                                                    0 };
00225 
00226     /* Define matrix of maps indexed by element topology (EntityType) and
00227    number of nodes. Entries are NULL where MBCN connectivity
00228    is the same as PATRAN (or the number of nodes is invalid.) */
00229 
00230     static const int* const* const patran_elem_order_map[] = { patran_null_order, /*  MBVERTEX */
00231                                                                patran_null_order, /*  MBEDGE */
00232                                                                patran_null_order, /*  MBTRI */
00233                                                                patran_null_order, /*  MBQUAD */
00234                                                                patran_null_order, /*  MBPOLYGON */
00235                                                                patran_tet_order,  /*  MBTET */
00236                                                                patran_null_order, /*  MBPYRAMID */
00237                                                                patran_pri_order,  /*  MBPRISM */
00238                                                                patran_null_order, /*  MBKNIFE */
00239                                                                patran_hex_order,  /*  MBHEX */
00240                                                                patran_null_order, /*  MBPOLYHEDRON */
00241                                                                patran_null_order };
00242 
00243 #ifdef __cplusplus
00244 }  // namespace moab
00245 
00246 /*  extern "C" */
00247 } /* namespace moab */
00248 #endif
00249 
00250 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines