// SZ // HP_HEX ... no refinement int refhex_splitedges[][3] = { { 0, 0, 0 } }; HPREF_ELEMENT_TYPE refhex_newelstypes[] = { HP_HEX, HP_NONE, }; int refhex_newels[][8] = { { 1, 2, 3, 4, 5, 6, 7, 8 } }; HPRef_Struct refhex = { HP_HEX, refhex_splitedges, 0, 0, refhex_newelstypes, refhex_newels }; // HP_HEX_1F ... face (1 - 4 - 3 -2) singular int refhex_1f_0e_0v_splitedges[][3] = { { 1, 5, 9 }, { 2, 6, 10 }, { 3, 7, 11 }, { 4, 8, 12 }, { 0, 0, 0 } }; HPREF_ELEMENT_TYPE refhex_1f_0e_0v_newelstypes[] = { HP_HEX, HP_HEX_1F_0E_0V, HP_NONE, }; int refhex_1f_0e_0v_newels[][8] = { { 9, 10, 11, 12, 5, 6, 7, 8 }, { 1, 2, 3, 4, 9, 10, 11, 12} }; HPRef_Struct refhex_1f_0e_0v = { HP_HEX, refhex_1f_0e_0v_splitedges, 0, 0, refhex_1f_0e_0v_newelstypes, refhex_1f_0e_0v_newels }; // HP_HEX_1FA_1FB ... face (1 - 4 - 3 -2) and face (1-2-6-5) singular int refhex_1fa_1fb_0e_0v_splitedges[][3] = { { 1, 5, 9 }, { 2, 6, 10 }, { 3, 7, 11 }, { 4, 8, 12 }, { 1, 4, 13 }, { 2, 3, 14 }, { 6, 7, 15 }, { 5, 8, 16 }, { 0, 0, 0 } }; int refhex_1fa_1fb_0e_0v_splitfaces[][4] = { { 2, 3, 6, 17 }, { 1, 4, 5, 18 }, { 0, 0, 0, 0 }, }; HPREF_ELEMENT_TYPE refhex_1fa_1fb_0e_0v_newelstypes[] = { HP_HEX, HP_HEX_1F_0E_0V, HP_HEX_1F_0E_0V, HP_HEX_1FA_1FB_0E_0V, HP_NONE, }; int refhex_1fa_1fb_0e_0v_newels[][8] = { {18, 17, 11, 12, 16, 15, 7, 8}, {13, 14, 3, 4, 18, 17, 11, 12}, { 5, 6, 10, 9, 16, 15, 17, 18}, { 1, 2, 14, 13, 9, 10, 17, 18} }; HPRef_Struct refhex_1fa_1fb_0e_0v = { HP_HEX, refhex_1fa_1fb_0e_0v_splitedges, refhex_1fa_1fb_0e_0v_splitfaces, 0, refhex_1fa_1fb_0e_0v_newelstypes, refhex_1fa_1fb_0e_0v_newels }; // Refine Dummies // HP_HEX_0E_1V int refhex_0e_1v_splitedges[][3] = { { 0, 0, 0 } }; HPREF_ELEMENT_TYPE refhex_0e_1v_newelstypes[] = { HP_TET_0E_1V, HP_TET, HP_TET, HP_TET, HP_TET, HP_TET, HP_NONE, }; int refhex_0e_1v_newels[][8] = { { 1, 5, 2, 4 }, { 7, 3, 6, 8 }, { 2, 8, 5, 6 }, { 2, 8, 6, 3 }, { 2, 8, 3, 4 }, { 2, 8, 4, 5 }, }; HPRef_Struct refhex_0e_1v = { HP_HEX, refhex_0e_1v_splitedges, 0, 0, refhex_0e_1v_newelstypes, refhex_0e_1v_newels }; // Refine Dummies // HP_HEX_1E_1V int refhex_1e_1v_splitedges[][3] = { { 0, 0, 0 } }; HPREF_ELEMENT_TYPE refhex_1e_1v_newelstypes[] = { HP_TET_1E_1VA, HP_TET, HP_TET_0E_1V, HP_TET_0E_1V, HP_TET_0E_1V, HP_TET_0E_1V, HP_NONE, }; int refhex_1e_1v_newels[][8] = { // { 1, 5, 2, 4 }, { 1, 2, 4, 5 }, { 7, 3, 6, 8 }, { 2, 8, 5, 6 }, { 2, 8, 6, 3 }, { 2, 8, 3, 4 }, { 2, 8, 4, 5 }, }; HPRef_Struct refhex_1e_1v = { HP_HEX, refhex_1e_1v_splitedges, 0, 0, refhex_1e_1v_newelstypes, refhex_1e_1v_newels }; // Refine Dummies // HP_HEX_3E_0V int refhex_3e_0v_splitedges[][3] = { { 0, 0, 0 } }; HPREF_ELEMENT_TYPE refhex_3e_0v_newelstypes[] = { HP_TET_1E_1VA, HP_TET_1E_1VA, HP_TET_1E_1VA, HP_TET_0E_1V, HP_TET, HP_NONE, }; int refhex_3e_0v_newels[][8] = { { 1, 2, 3, 6 }, { 1, 4, 8, 3 }, { 1, 5, 6, 8 }, { 1, 6, 3, 8 }, { 3, 8, 6, 7 }, }; HPRef_Struct refhex_3e_0v = { HP_HEX, refhex_3e_0v_splitedges, 0, 0, refhex_3e_0v_newelstypes, refhex_3e_0v_newels }; // Refine Dummies // HP_HEX_1E_0V int refhex_1e_0v_splitedges[][3] = { { 0, 0, 0 } }; HPREF_ELEMENT_TYPE refhex_1e_0v_newelstypes[] = { HP_PRISM_SINGEDGE, // HP_PRISM_SINGEDGE_H1, HP_PRISM, HP_NONE, }; int refhex_1e_0v_newels[][8] = { { 1, 4, 5, 2, 3, 6 }, { 5, 4, 8, 6, 3, 7 }, }; HPRef_Struct refhex_1e_0v = { HP_HEX, refhex_1e_0v_splitedges, 0, 0, refhex_1e_0v_newelstypes, refhex_1e_0v_newels }; // HP_HEX ... no refinement int refhex7_splitedges[][3] = { { 0, 0, 0 } }; HPREF_ELEMENT_TYPE refhex7_newelstypes[] = { HP_HEX7, HP_NONE, }; int refhex7_newels[][8] = { { 1, 2, 3, 4, 5, 6, 7 } }; HPRef_Struct refhex7 = { HP_HEX7, refhex7_splitedges, 0, 0, refhex7_newelstypes, refhex7_newels }; // HP_HEX_1FA ... face (1 - 4 - 3 -2) singular int refhex7_1fa_splitedges[][3] = { { 1, 5, 8 }, { 2, 6, 9 }, { 3, 7, 10 }, { 4, 7, 11 }, { 0, 0, 0 } }; HPREF_ELEMENT_TYPE refhex7_1fa_newelstypes[] = { HP_HEX_1F_0E_0V, HP_HEX7, HP_NONE, }; int refhex7_1fa_newels[][8] = { { 1, 2, 3, 4, 8, 9, 10, 11 }, { 8, 9, 10, 11, 5, 6, 7 } }; HPRef_Struct refhex7_1fa = { HP_HEX7, refhex7_1fa_splitedges, 0, 0, refhex7_1fa_newelstypes, refhex7_1fa_newels }; // HP_HEX_1FB ... face (5,6,7) singular int refhex7_1fb_splitedges[][3] = { { 5, 1, 8 }, { 6, 2, 9 }, { 7, 3, 10 }, { 7, 4, 11 }, { 0, 0, 0 } }; HPREF_ELEMENT_TYPE refhex7_1fb_newelstypes[] = { HP_HEX, HP_HEX7_1FB, HP_NONE, }; int refhex7_1fb_newels[][8] = { { 1, 2, 3, 4, 8, 9, 10, 11 }, { 8, 9, 10, 11, 5, 6, 7 } }; HPRef_Struct refhex7_1fb = { HP_HEX7, refhex7_1fb_splitedges, 0, 0, refhex7_1fb_newelstypes, refhex7_1fb_newels };