Blockstructured Adaptive Mesh Refinement in object-oriented C++
00001 #ifndef _included_GridDataParams_h
00002 #define _included_GridDataParams_h
00003
00008 /* Face data directions for 1,2,3-D */
00009 #define ALL (-2)
00010 #define CENTER (-1)
00011
00012 #define NULL_FACE (-1)
00013 #define FACES (0)
00014 #define WEST (0)
00015 #define EAST (1)
00016 #define SOUTH (2)
00017 #define NORTH (3)
00018 #define FRONT (4)
00019 #define BACK (5)
00020 #define INSIDE (6)
00021
00022 /* Corner data directions for 2,3-D */
00023 /* West = W, East = W, South = S, North = N
00024 Front = F, Back = B */
00025 #define NULL_CORNER (-1)
00026 #define CORNERS (10)
00027 /* 3-D */
00028 #define WSF (10)
00029 #define WSB (11)
00030 #define WNF (12)
00031 #define WNB (13)
00032 #define ESF (14)
00033 #define ESB (15)
00034 #define ENF (16)
00035 #define ENB (17)
00036 /* 2-D */
00037 #define WS (10)
00038 #define WN (11)
00039 #define ES (12)
00040 #define EN (13)
00041
00042 /* Edge data directions for 3-D */
00043 /* West = W, East = W, South = S, North = N
00044 Front = F, Back = B, Center C */
00045 #define NULL_EDGE (-1)
00046 #define EDGES (20)
00047 #define WSC (20)
00048 #define WNC (21)
00049 #define WCF (22)
00050 #define WCB (23)
00051 #define CSF (24)
00052 #define CSB (25)
00053 #define CNF (26)
00054 #define CNB (27)
00055 #define ENC (28)
00056 #define ESC (29)
00057 #define ECB (30)
00058 #define ECF (31)
00059
00060 const int DirCorners2[6][3] = {
00061 {WS,WN,NULL_CORNER},{ES,EN,NULL_CORNER}, // X-B,X-F
00062 {WS,ES,NULL_CORNER},{WN,EN,NULL_CORNER}, // Y-B,Y-F
00063 {WS,WN,ES}, {ES,EN,WN} // All-B,All-F
00064 };
00065
00066 const int DirCorners3[8][7] = {
00067 {WSF,WSB,WNF,WNB,NULL_CORNER,NULL_CORNER,NULL_CORNER},
00068 {ESF,ESB,ENF,ENB,NULL_CORNER,NULL_CORNER,NULL_CORNER}, // X-B,X-F
00069 {WSF,WSB,ESF,ESB,NULL_CORNER,NULL_CORNER,NULL_CORNER},
00070 {WNF,WNB,ENF,ENB,NULL_CORNER,NULL_CORNER,NULL_CORNER}, // Y-B,Y-F
00071 {WSF,WNF,ESF,ENF,NULL_CORNER,NULL_CORNER,NULL_CORNER},
00072 {WSB,WNB,ESB,ENB,NULL_CORNER,NULL_CORNER,NULL_CORNER}, // Z-B,Z-F
00073 {WSF,WSB,WNF,WNB,ESF,ESB,ENF},
00074 {ESF,ESB,ENF,ENB,WNF,WNB,WSB} // All-B,All-F
00075 };
00076 const int DirEdges3[8][9] = {
00077 {WSC,WNC,WCF,WCB,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE},
00078 {ENC,ESC,ECB,ECF,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE}, // X-B,X-F
00079 {WSC,CSF,CSB,ESC,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE},
00080 {WNC,CNF,CNB,ENC,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE}, // Y-B,Y-F
00081 {WCF,CSF,CNF,ECF,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE},
00082 {WCB,CSB,CNB,ECB,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE,NULL_EDGE}, // Z-B,Z-F
00083 {WSC,WNC,WCF,WCB,CSF,CSB,ESC,CNF,ECF},
00084 {ENC,ESC,ECB,ECF,WNC,CNF,CNB,WCB,CSB} // All-B,All-F
00085 };
00086
00087 #endif
Quickstart Users Guide Programmers Reference Installation Examples Download
AMROC Main Home Contactlast update: 06/01/04