mirror of
https://github.com/NGSolve/netgen.git
synced 2024-12-26 22:00:33 +05:00
3406 lines
72 KiB
C++
3406 lines
72 KiB
C++
|
|
// HP_PRISM ... no refinement
|
|
int refprism_splitedges[][3] =
|
|
{
|
|
{ 0, 0, 0 }
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_NONE,
|
|
};
|
|
int refprism_newels[][8] =
|
|
{
|
|
{ 1, 2, 3, 4, 5, 6 }
|
|
};
|
|
HPRef_Struct refprism =
|
|
{
|
|
HP_PRISM,
|
|
refprism_splitedges,
|
|
0, 0,
|
|
refprism_newelstypes,
|
|
refprism_newels
|
|
};
|
|
|
|
|
|
|
|
// HP_PRISM_SINGEDGE ... vertical edge 1-4 is singular
|
|
int refprism_singedge_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7 },
|
|
{ 1, 3, 8 },
|
|
{ 4, 5, 9 },
|
|
{ 4, 6, 10 },
|
|
{ 0, 0, 0 }
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_singedge_newelstypes[] =
|
|
{
|
|
HP_PRISM_SINGEDGE,
|
|
HP_HEX,
|
|
HP_NONE,
|
|
};
|
|
int refprism_singedge_newels[][8] =
|
|
{
|
|
{ 1, 7, 8, 4, 9, 10 },
|
|
{ 3, 8, 7, 2, 6, 10, 9, 5 }
|
|
};
|
|
HPRef_Struct refprism_singedge =
|
|
{
|
|
HP_PRISM,
|
|
refprism_singedge_splitedges,
|
|
0, 0,
|
|
refprism_singedge_newelstypes,
|
|
refprism_singedge_newels
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// HP_PRISM_SINGEDGE_V12 vertical edges 1-4 and 2-5 are singular
|
|
int refprism_singedge_v12_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7 },
|
|
{ 1, 3, 8 },
|
|
{ 2, 1, 9 },
|
|
{ 2, 3, 10 },
|
|
{ 4, 5, 11 },
|
|
{ 4, 6, 12 },
|
|
{ 5, 4, 13 },
|
|
{ 5, 6, 14},
|
|
{ 0, 0, 0 }
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_singedge_v12_newelstypes[] =
|
|
{
|
|
HP_HEX,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM,
|
|
HP_NONE,
|
|
};
|
|
int refprism_singedge_v12_newels[][8] =
|
|
{
|
|
{ 7, 9, 10, 8, 11, 13, 14, 12 },
|
|
{ 1, 7, 8, 4, 11, 12 },
|
|
{ 2, 10, 9, 5, 14, 13 },
|
|
{ 3, 8, 10, 6, 12, 14 },
|
|
};
|
|
HPRef_Struct refprism_singedge_v12 =
|
|
{
|
|
HP_PRISM,
|
|
refprism_singedge_v12_splitedges,
|
|
0, 0,
|
|
refprism_singedge_v12_newelstypes,
|
|
refprism_singedge_v12_newels
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// HP_PRISM_SINGEDGE_H12
|
|
int refprism_singedge_h12_splitedges[][3] =
|
|
{
|
|
{ 1, 3, 7 },
|
|
{ 2, 1, 8 },
|
|
{ 2, 3, 9 },
|
|
{ 3, 1, 10 },
|
|
|
|
{ 4, 6, 12 },
|
|
{ 5, 4, 13 },
|
|
{ 5, 6, 14 },
|
|
{ 6, 4, 15 },
|
|
|
|
{ 0, 0, 0 }
|
|
};
|
|
|
|
int refprism_singedge_h12_splitfaces[][4] =
|
|
{
|
|
{ 2, 1, 3, 11 },
|
|
{ 5, 4, 6, 16 },
|
|
{ 0, 0, 0, 0 },
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_singedge_h12_newelstypes[] =
|
|
{
|
|
HP_HEX,
|
|
HP_HEX,
|
|
HP_PRISM,
|
|
HP_PRISM,
|
|
HP_PRISM,
|
|
HP_NONE,
|
|
};
|
|
int refprism_singedge_h12_newels[][8] =
|
|
{
|
|
{ 1, 8, 11, 7, 4, 13, 16, 12 },
|
|
{ 9, 3, 10, 11, 14, 6, 15, 16 },
|
|
{ 7, 11, 10, 12, 16, 15 },
|
|
{ 2, 9, 11, 5, 14, 16 },
|
|
{ 8, 2, 11, 13, 5, 16 }
|
|
};
|
|
HPRef_Struct refprism_singedge_h12 =
|
|
{
|
|
HP_PRISM,
|
|
refprism_singedge_h12_splitedges,
|
|
refprism_singedge_h12_splitfaces,
|
|
0,
|
|
refprism_singedge_h12_newelstypes,
|
|
refprism_singedge_h12_newels
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// HP_PRISM_SINGEDGE_H1
|
|
int refprism_singedge_h1_splitedges[][3] =
|
|
{
|
|
{ 1, 3, 7 },
|
|
{ 2, 3, 8 },
|
|
{ 4, 6, 9 },
|
|
{ 5, 6, 10 },
|
|
{ 0, 0, 0 }
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_singedge_h1_newelstypes[] =
|
|
{
|
|
HP_HEX,
|
|
HP_PRISM,
|
|
HP_NONE,
|
|
};
|
|
int refprism_singedge_h1_newels[][8] =
|
|
{
|
|
{ 1, 2, 8, 7, 4, 5, 10, 9 },
|
|
{ 3, 7, 8, 6, 9, 10 }
|
|
};
|
|
HPRef_Struct refprism_singedge_h1 =
|
|
{
|
|
HP_PRISM,
|
|
refprism_singedge_h1_splitedges,
|
|
0, 0,
|
|
refprism_singedge_h1_newelstypes,
|
|
refprism_singedge_h1_newels
|
|
};
|
|
|
|
|
|
|
|
// HP_PRISM_1FA_0E_0V
|
|
int refprism_1fa_0e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 4, 16 },
|
|
{ 2, 5, 17 },
|
|
{ 3, 6, 18 },
|
|
{ 0, 0, 0 }
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_1fa_0e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fa_0e_0v_newels[][8] =
|
|
{
|
|
{ 16, 17, 18, 4, 5, 6 },
|
|
{ 1, 2, 3, 16, 17, 18 }
|
|
};
|
|
HPRef_Struct refprism_1fa_0e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_0e_0v_splitedges,
|
|
0, 0,
|
|
refprism_1fa_0e_0v_newelstypes,
|
|
refprism_1fa_0e_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_1FA_1E_0V
|
|
int refprism_1fa_1e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 4, 16 },
|
|
{ 2, 5, 17 },
|
|
{ 3, 6, 18 },
|
|
{ 1, 2, 7},
|
|
{ 1, 3, 12},
|
|
{ 4, 6, 45},
|
|
{ 4, 5, 40},
|
|
{ 0, 0, 0 }
|
|
};
|
|
int refprism_1fa_1e_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,4,19},
|
|
{1,3,4,24},
|
|
{0,0,0,0}
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_1e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM_SINGEDGE,
|
|
HP_HEX,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fa_1e_0v_newels[][8] =
|
|
{
|
|
{ 16, 19, 24, 4, 40, 45 },
|
|
{ 24, 19, 17, 18, 45 , 40, 5, 6 },
|
|
{ 1, 7 , 12 , 16, 19, 24 },
|
|
{ 7, 2, 3, 12, 19, 17, 18, 24 }
|
|
};
|
|
HPRef_Struct refprism_1fa_1e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_1e_0v_splitedges,
|
|
refprism_1fa_1e_0v_splitfaces,
|
|
0,
|
|
refprism_1fa_1e_0v_newelstypes,
|
|
refprism_1fa_1e_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_2FA_1E_0V
|
|
int refprism_2fa_1e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 4, 16 },
|
|
{ 2, 5, 17 },
|
|
{ 3, 6, 18 },
|
|
{ 1, 2, 7},
|
|
{ 1, 3, 12},
|
|
{ 4, 6, 45},
|
|
{ 4, 5, 40},
|
|
{ 4, 1, 28},
|
|
{ 5, 2, 29},
|
|
{ 6, 3, 30},
|
|
{ 0, 0, 0 }
|
|
};
|
|
int refprism_2fa_1e_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,4,19},
|
|
{1,3,4,24},
|
|
{4,1,5,31},
|
|
{4,1,6,36},
|
|
{0,0,0,0}
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_1e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM_SINGEDGE,
|
|
HP_HEX,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_2fa_1e_0v_newels[][8] =
|
|
{
|
|
{ 16, 19, 24, 28, 31, 36 },
|
|
{ 24, 19, 17, 18, 36, 31, 29, 30 },
|
|
{ 1, 7 , 12 , 16, 19, 24 },
|
|
{ 12, 7, 2, 3, 24, 19, 17, 18 },
|
|
{ 4, 45, 40, 28, 36, 31 },
|
|
{ 40, 45, 6, 5, 31, 36, 30, 29,}
|
|
};
|
|
HPRef_Struct refprism_2fa_1e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_1e_0v_splitedges,
|
|
refprism_2fa_1e_0v_splitfaces,
|
|
0,
|
|
refprism_2fa_1e_0v_newelstypes,
|
|
refprism_2fa_1e_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_1FB_0E_0V ... quad face 1-2-4-5
|
|
int refprism_1fb_0e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 3, 7 },
|
|
{ 2, 3, 8 },
|
|
{ 4, 6, 9 },
|
|
{ 5, 6, 10 },
|
|
{ 0, 0, 0 }
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_1fb_0e_0v_newelstypes[] =
|
|
{
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fb_0e_0v_newels[][8] =
|
|
{
|
|
{ 1, 4, 5, 2, 7, 9, 10, 8 },
|
|
{ 7, 8, 3, 9, 10, 6 }
|
|
};
|
|
HPRef_Struct refprism_1fb_0e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fb_0e_0v_splitedges,
|
|
|
|
0, 0,
|
|
refprism_1fb_0e_0v_newelstypes,
|
|
refprism_1fb_0e_0v_newels
|
|
};
|
|
|
|
|
|
// HP_PRISM_1FB_1EA_0V ... quad face 1-2-4-5, edge is 1-4
|
|
int refprism_1fb_1ea_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 3, 7 },
|
|
{ 2, 3, 8 },
|
|
{ 4, 6, 9 },
|
|
{ 5, 6, 10 },
|
|
{ 1, 2, 11 },
|
|
{ 4, 5, 12 },
|
|
{ 0, 0, 0 }
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_1fb_1ea_0v_newelstypes[] =
|
|
{
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fb_1ea_0v_newels[][8] =
|
|
{
|
|
{ 11, 12, 5, 2, 7, 9, 10, 8 },
|
|
{ 1, 11, 7, 4, 12, 9 },
|
|
{ 7, 8, 3, 9, 10, 6 }
|
|
};
|
|
HPRef_Struct refprism_1fb_1ea_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fb_1ea_0v_splitedges,
|
|
0, 0,
|
|
refprism_1fb_1ea_0v_newelstypes,
|
|
refprism_1fb_1ea_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_1FB_1EC_0V ... quad face 1-2-4-5 with singular edge 3-6
|
|
int refprism_1fb_1ec_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{3,2,10},
|
|
{3,1,11},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{6,5,43},
|
|
{6,4,44},
|
|
{ 0, 0, 0 }
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_1fb_1ec_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM_SINGEDGE,
|
|
HP_HEX,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fb_1ec_0v_newels[][8] =
|
|
{
|
|
{ 3, 11, 10, 6, 44, 43},
|
|
{ 12, 9, 10, 11, 45, 42, 43, 44},
|
|
{ 4, 5, 2, 1, 45, 42, 9, 12 }
|
|
};
|
|
HPRef_Struct refprism_1fb_1ec_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fb_1ec_0v_splitedges,
|
|
0, 0,
|
|
refprism_1fb_1ec_0v_newelstypes,
|
|
refprism_1fb_1ec_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_1FA_1FB_1EC_0V ... bot-trig face, quad face 1-2-4-5 with singular edge 3-6
|
|
int refprism_1fa_1fb_1ec_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{3,2,10},
|
|
{3,1,11},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{6,5,43},
|
|
{6,4,44},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{ 0, 0, 0 }
|
|
};
|
|
|
|
int refprism_1fa_1fb_1ec_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{0,0,0,0}
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_1fa_1fb_1ec_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM_SINGEDGE,
|
|
HP_HEX,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fa_1fb_1ec_0v_newels[][8] =
|
|
{
|
|
{ 18, 23, 22, 6, 44, 43},
|
|
{ 24, 21, 22, 23, 45, 42, 43, 44},
|
|
{ 4, 5, 17, 16, 45, 42, 21, 24},
|
|
{ 3, 11, 10, 18, 23, 22},
|
|
{ 12, 9, 10, 11, 24, 21, 22, 23},
|
|
{ 1, 2, 9, 12, 16, 17, 21, 24}
|
|
};
|
|
HPRef_Struct refprism_1fa_1fb_1ec_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_1fb_1ec_0v_splitedges,
|
|
refprism_1fa_1fb_1ec_0v_splitfaces, 0,
|
|
refprism_1fa_1fb_1ec_0v_newelstypes,
|
|
refprism_1fa_1fb_1ec_0v_newels
|
|
};
|
|
|
|
|
|
// HP_PRISM_1FA_1FB_2EB_0V
|
|
int refprism_1fa_1fb_2eb_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{3,2,10},
|
|
{3,1,11},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{6,5,43},
|
|
{6,4,44},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{ 4, 5, 40},
|
|
{ 4, 6, 45},
|
|
{ 1, 2, 7},
|
|
{ 0, 0, 0 }
|
|
};
|
|
|
|
int refprism_1fa_1fb_2eb_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{1,2,4,19},
|
|
{0,0,0,0}
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_1fa_1fb_2eb_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM_SINGEDGE,
|
|
HP_HEX,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fa_1fb_2eb_0v_newels[][8] =
|
|
{
|
|
{ 18, 23, 22, 6, 44, 43},
|
|
{ 24, 21, 22, 23, 45, 42, 43, 44},
|
|
{ 40, 5, 17, 19, 45, 42, 21, 24},
|
|
{ 3, 11, 10, 18, 23, 22},
|
|
{ 12, 9, 10, 11, 24, 21, 22, 23},
|
|
{ 7, 2, 9, 12, 19, 17, 21, 24},
|
|
{16,19,24,4,40,45},
|
|
{1,7,12,16,19,24}
|
|
};
|
|
HPRef_Struct refprism_1fa_1fb_2eb_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_1fb_2eb_0v_splitedges,
|
|
refprism_1fa_1fb_2eb_0v_splitfaces, 0,
|
|
refprism_1fa_1fb_2eb_0v_newelstypes,
|
|
refprism_1fa_1fb_2eb_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_1FA_1FB_2EC_0V
|
|
int refprism_1fa_1fb_2ec_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{3,2,10},
|
|
{3,1,11},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{6,5,43},
|
|
{6,4,44},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{5,4,41},
|
|
{2,1,8},
|
|
{ 0, 0, 0 }
|
|
};
|
|
|
|
int refprism_1fa_1fb_2ec_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{2,1,5,20},
|
|
{0,0,0,0}
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_1fa_1fb_2ec_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM_SINGEDGE,
|
|
HP_HEX,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fa_1fb_2ec_0v_newels[][8] =
|
|
{
|
|
{ 18, 23, 22, 6, 44, 43},
|
|
{ 24, 21, 22, 23, 45, 42, 43, 44},
|
|
{ 4, 41, 20, 16, 45, 42, 21, 24},
|
|
{ 3, 11, 10, 18, 23, 22},
|
|
{ 12, 9, 10, 11, 24, 21, 22, 23},
|
|
{ 1, 8, 9, 12, 16, 20, 21, 24},
|
|
{8,2,9,20,17,21},
|
|
{5,41,42,17,20,21}
|
|
};
|
|
HPRef_Struct refprism_1fa_1fb_2ec_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_1fb_2ec_0v_splitedges,
|
|
refprism_1fa_1fb_2ec_0v_splitfaces,
|
|
0,
|
|
refprism_1fa_1fb_2ec_0v_newelstypes,
|
|
refprism_1fa_1fb_2ec_0v_newels
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// HP_PRISM_2FA_1FB_1EC_0V ... trig faces, quad face 1-2-4-5 with singular edge 3-6
|
|
int refprism_2fa_1fb_1ec_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{3,2,10},
|
|
{3,1,11},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{6,5,43},
|
|
{6,4,44},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{ 4, 1, 28},
|
|
{ 5, 2, 29},
|
|
{ 6, 3, 30},
|
|
{ 0, 0, 0 }
|
|
};
|
|
|
|
int refprism_2fa_1fb_1ec_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{5,2,6,33},
|
|
{6,5,3,34},
|
|
{6,4,3,35},
|
|
{4,1,6,36},
|
|
{0,0,0,0}
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_2fa_1fb_1ec_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM_SINGEDGE,
|
|
HP_HEX,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_2fa_1fb_1ec_0v_newels[][8] =
|
|
{
|
|
{ 18, 23, 22, 30, 35, 34},
|
|
{ 24, 21, 22, 23, 36, 33, 34, 35},
|
|
{ 28, 29, 17, 16, 36, 33, 21, 24},
|
|
{ 3, 11, 10, 18, 23, 22},
|
|
{ 12, 9, 10, 11, 24, 21, 22, 23},
|
|
{ 1, 2, 9, 12, 16, 17, 21, 24},
|
|
{ 6, 43, 44, 30, 34, 35},
|
|
{ 44, 43, 42, 45, 35, 34, 33, 36},
|
|
{ 5, 4, 45, 42, 29, 28, 36, 33 },
|
|
};
|
|
HPRef_Struct refprism_2fa_1fb_1ec_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_1fb_1ec_0v_splitedges,
|
|
refprism_2fa_1fb_1ec_0v_splitfaces,
|
|
0,
|
|
refprism_2fa_1fb_1ec_0v_newelstypes,
|
|
refprism_2fa_1fb_1ec_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_2FA_1FB_2EB_0V
|
|
int refprism_2fa_1fb_2eb_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{3,2,10},
|
|
{3,1,11},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{6,5,43},
|
|
{6,4,44},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{ 4, 1, 28},
|
|
{ 5, 2, 29},
|
|
{ 6, 3, 30},
|
|
{4,5,40},
|
|
{1,2,7},
|
|
{ 0, 0, 0 }
|
|
};
|
|
|
|
int refprism_2fa_1fb_2eb_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{5,6,2,33},
|
|
{6,5,3,34},
|
|
{6,4,3,35},
|
|
{4,1,6,36},
|
|
{4,1,5,31},
|
|
{1,2,4,19},
|
|
{0,0,0,0}
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_2fa_1fb_2eb_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM_SINGEDGE,
|
|
HP_HEX,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_2fa_1fb_2eb_0v_newels[][8] =
|
|
{
|
|
{ 18, 23, 22, 30, 35, 34},
|
|
{ 24, 21, 22, 23, 36, 33, 34, 35},
|
|
{ 31, 29, 17, 19, 36, 33, 21, 24},
|
|
{ 3, 11, 10, 18, 23, 22},
|
|
{ 12, 9, 10, 11, 24, 21, 22, 23},
|
|
{ 7, 2, 9, 12, 19, 17, 21, 24},
|
|
{ 6, 43, 44, 30, 34, 35},
|
|
{ 44, 43, 42, 45, 35, 34, 33, 36},
|
|
{ 5, 40, 45, 42, 29, 31, 36, 33 },
|
|
{ 1, 7, 12, 16, 19, 24 },
|
|
{ 16, 19, 24, 28, 31, 36 },
|
|
{ 40, 4, 45, 31, 28, 36 },
|
|
};
|
|
HPRef_Struct refprism_2fa_1fb_2eb_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_1fb_2eb_0v_splitedges,
|
|
refprism_2fa_1fb_2eb_0v_splitfaces, 0,
|
|
refprism_2fa_1fb_2eb_0v_newelstypes,
|
|
refprism_2fa_1fb_2eb_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_1FB_2EA_0V ... quad face 1-2-4-5 with singular edges 1-4, 2-5
|
|
int refprism_1fb_2ea_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 3, 7 },
|
|
{ 2, 3, 8 },
|
|
{ 1, 2, 9 },
|
|
{ 2, 1, 10 },
|
|
{ 4, 6, 11 },
|
|
{ 5, 6, 12 },
|
|
{ 4, 5, 13 },
|
|
{ 5, 4, 14 },
|
|
{ 0, 0, 0 }
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_1fb_2ea_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fb_2ea_0v_newels[][8] =
|
|
{
|
|
{ 7, 8, 3, 11, 12, 6 },
|
|
{ 1, 9, 7, 4, 13, 11 },
|
|
{ 13, 14, 10, 9, 11, 12, 8, 7 },
|
|
{ 5, 14, 12, 2, 10, 8 },
|
|
};
|
|
HPRef_Struct refprism_1fb_2ea_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fb_2ea_0v_splitedges,
|
|
0, 0,
|
|
refprism_1fb_2ea_0v_newelstypes,
|
|
refprism_1fb_2ea_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_1FB_2EB_0V ... quad face 1-2-4-5 with singular edges 1-4, 3-6
|
|
int refprism_1fb_2eb_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 4, 5, 40},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0 }
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_1fb_2eb_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM_SINGEDGE,
|
|
HP_HEX,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fb_2eb_0v_newels[][8] =
|
|
{
|
|
{ 3, 11, 10, 6, 44, 43 },
|
|
{ 12, 9, 10, 11, 45, 42, 43, 44},
|
|
{ 1, 7, 12, 4, 40, 45},
|
|
{ 40, 5, 2, 7, 45, 42, 9, 12}
|
|
};
|
|
HPRef_Struct refprism_1fb_2eb_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fb_2eb_0v_splitedges,
|
|
0, 0,
|
|
refprism_1fb_2eb_0v_newelstypes,
|
|
refprism_1fb_2eb_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_1FB_3E_0V ... quad face 1-2-4-5 with singular edges 1-4, 3-6
|
|
int refprism_1fb_3e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 1, 8},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 4, 5, 40},
|
|
{ 5, 4, 41},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0 }
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_1fb_3e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM_SINGEDGE,
|
|
HP_HEX,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fb_3e_0v_newels[][8] =
|
|
{
|
|
{ 3, 11, 10, 6, 44, 43 },
|
|
{ 12, 9, 10, 11, 45, 42, 43, 44},
|
|
{ 1, 7, 12, 4, 40, 45 },
|
|
{ 40, 41, 8, 7, 45, 42, 9, 12},
|
|
{ 5, 41, 42, 2, 8, 9},
|
|
};
|
|
HPRef_Struct refprism_1fb_3e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fb_3e_0v_splitedges,
|
|
0, 0,
|
|
refprism_1fb_3e_0v_newelstypes,
|
|
refprism_1fb_3e_0v_newels
|
|
};
|
|
|
|
|
|
|
|
// HP_PRISM_2FB ... quad face 1-2-4-5 and quad face 1-4-6-3
|
|
int refprism_2fb_0e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 3, 7 },
|
|
{ 2, 3, 8 },
|
|
{ 1, 2, 9 },
|
|
{ 3, 2, 10 },
|
|
{ 4, 6, 11 },
|
|
{ 5, 6, 12 },
|
|
{ 4, 5, 13 },
|
|
{ 6, 5, 14 },
|
|
{ 0, 0, 0 }
|
|
};
|
|
int refprism_2fb_0e_0v_splitfaces[][4] =
|
|
{
|
|
{ 1, 2, 3, 15 },
|
|
{ 4, 5, 6, 16 },
|
|
{ 0, 0, 0, 0 },
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_2fb_0e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_2fb_0e_0v_newels[][8] =
|
|
{
|
|
{ 15, 8, 10, 16, 12, 14 },
|
|
{ 13, 5, 2, 9, 16, 12, 8, 15},
|
|
{ 11, 7, 3, 6, 16, 15, 10, 14 },
|
|
{ 1, 9, 15, 4, 13, 16 },
|
|
{ 4, 11, 16, 1,7, 15 }
|
|
};
|
|
HPRef_Struct refprism_2fb_0e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fb_0e_0v_splitedges,
|
|
refprism_2fb_0e_0v_splitfaces,
|
|
0,
|
|
refprism_2fb_0e_0v_newelstypes,
|
|
refprism_2fb_0e_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_2FB ... quad face 1-2-4-5 and quad face 1-4-6-3 and sing edge 3-6
|
|
int refprism_2fb_1ec_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 3, 7 },
|
|
{ 2, 3, 8 },
|
|
{ 1, 2, 9 },
|
|
{ 3, 2, 10 },
|
|
{ 4, 6, 11 },
|
|
{ 5, 6, 12 },
|
|
{ 4, 5, 13 },
|
|
{ 6, 5, 14 },
|
|
{ 3, 1, 17},
|
|
{ 6, 4, 18},
|
|
{ 0, 0, 0 }
|
|
};
|
|
int refprism_2fb_1ec_0v_splitfaces[][4] =
|
|
{
|
|
{ 1, 2, 3, 15 },
|
|
{ 4, 5, 6, 16 },
|
|
{ 0, 0, 0, 0 },
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_2fb_1ec_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_2fb_1ec_0v_newels[][8] =
|
|
{
|
|
{ 15, 8, 10, 16, 12, 14 },
|
|
{ 13, 5, 2, 9, 16, 12, 8, 15},
|
|
{ 11, 7, 17, 18, 16, 15, 10, 14 },
|
|
{ 1, 9, 15, 4, 13, 16 },
|
|
{ 4, 11, 16, 1,7, 15 },
|
|
{ 3, 17, 10, 6, 18, 14 }
|
|
};
|
|
HPRef_Struct refprism_2fb_1ec_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fb_1ec_0v_splitedges,
|
|
refprism_2fb_1ec_0v_splitfaces,
|
|
0,
|
|
refprism_2fb_1ec_0v_newelstypes,
|
|
refprism_2fb_1ec_0v_newels
|
|
};
|
|
|
|
|
|
|
|
// HP_PRISM_2FB ... quad face 1-2-4-5 and quad face 1-4-6-3 and 3 sing edges
|
|
int refprism_2fb_3e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 3, 7 },
|
|
{ 2, 3, 8 },
|
|
{ 1, 2, 9 },
|
|
{ 3, 2, 10 },
|
|
{ 4, 6, 11 },
|
|
{ 5, 6, 12 },
|
|
{ 4, 5, 13 },
|
|
{ 6, 5, 14 },
|
|
{ 3, 1, 17},
|
|
{ 6, 4, 18},
|
|
{ 2, 1, 19},
|
|
{ 5, 4, 20},
|
|
{ 0, 0, 0 }
|
|
};
|
|
int refprism_2fb_3e_0v_splitfaces[][4] =
|
|
{
|
|
{ 1, 2, 3, 15 },
|
|
{ 4, 5, 6, 16 },
|
|
{ 0, 0, 0, 0 },
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_2fb_3e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_2fb_3e_0v_newels[][8] =
|
|
{
|
|
{ 15, 8, 10, 16, 12, 14 },
|
|
{ 13, 20, 19, 9, 16, 12, 8, 15},
|
|
{ 11, 7, 17, 18, 16, 15, 10, 14 },
|
|
{ 1, 9, 15, 4, 13, 16 },
|
|
{ 4, 11, 16, 1,7, 15 },
|
|
{ 3, 17, 10, 6, 18, 14 },
|
|
{ 5, 20, 12, 2, 19, 8 }
|
|
};
|
|
HPRef_Struct refprism_2fb_3e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fb_3e_0v_splitedges,
|
|
refprism_2fb_3e_0v_splitfaces, 0,
|
|
refprism_2fb_3e_0v_newelstypes,
|
|
refprism_2fb_3e_0v_newels
|
|
};
|
|
|
|
|
|
|
|
// HP_PRISM_1FA_1FB_0E_0V ... quad face 1-2-4-5 and trig face 1-2-3
|
|
int refprism_1fa_1fb_0e_0v_splitedges[][3] =
|
|
{
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{0,0,0}
|
|
};
|
|
int refprism_1fa_1fb_0e_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{1,3,4,24},
|
|
{ 0, 0, 0, 0 }
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_1fb_0e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fa_1fb_0e_0v_newels[][8] =
|
|
{
|
|
{ 24, 21, 18, 45, 42, 6 },
|
|
{ 4, 5, 17, 16, 45, 42, 21, 24 },
|
|
{ 12, 9, 3, 24, 21, 18 },
|
|
{ 1, 2, 9, 12, 16, 17, 21, 24 }
|
|
};
|
|
HPRef_Struct refprism_1fa_1fb_0e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_1fb_0e_0v_splitedges,
|
|
|
|
refprism_1fa_1fb_0e_0v_splitfaces, 0,
|
|
refprism_1fa_1fb_0e_0v_newelstypes,
|
|
refprism_1fa_1fb_0e_0v_newels
|
|
};
|
|
|
|
/*
|
|
// HP_PRISM_1FA_1FB_1EC_0V ... quad face 1-2-4-5 and trig face 1-2-3
|
|
int refprism_1fa_1fb_1ec_0v_splitedges[][3] =
|
|
{
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{6,5,43},
|
|
{6,4,44},
|
|
{3,2,10},
|
|
{3,1,11},
|
|
{0,0,0}
|
|
};
|
|
int refprism_1fa_1fb_1ec_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{1,3,4,24},
|
|
{ 0, 0, 0, 0 }
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_1fb_1ec_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fa_1fb_0e_0v_newels[][8] =
|
|
{
|
|
{ 24, 21, 18, 45, 42, 6 },
|
|
{ 4, 5, 17, 16, 45, 42, 21, 24 },
|
|
{ 12, 9, 3, 24, 21, 18 },
|
|
{ 1, 2, 9, 12, 16, 17, 21, 24 }
|
|
};
|
|
HPRef_Struct refprism_1fa_1fb_0e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_1fb_1ec_0v_splitedges,
|
|
|
|
refprism_1fa_1fb_1ec_0v_splitfaces, 0,
|
|
refprism_1fa_1fb_1ec_0v_newelstypes,
|
|
refprism_1fa_1fb_1ec_0v_newels
|
|
};
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
// HP_PRISM_2FA_1FB_0E_0V ... quad face 1-2-4-5 and trig face 1-2-3
|
|
int refprism_2fa_1fb_0e_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{4,1,28},
|
|
{5,2,29},
|
|
{6,3,30},
|
|
{0,0,0}
|
|
|
|
};
|
|
int refprism_2fa_1fb_0e_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{1,3,4,24},
|
|
{5,6,2,33},
|
|
{4,1,6,36},
|
|
{0,0,0,0}
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_1fb_0e_0v_newelstypes[] =
|
|
{
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_2fa_1fb_0e_0v_newels[][8] =
|
|
{
|
|
{28,29,17,16,36,33,21,24},
|
|
{24,21,18, 36, 33, 30},
|
|
{12,9,3,24,21,18},
|
|
{1,2,9,12,16,17,21,24},
|
|
{6,42,45,30,33,36},
|
|
{4,5,29,28,45,42,33,36}
|
|
};
|
|
HPRef_Struct refprism_2fa_1fb_0e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_1fb_0e_0v_splitedges,
|
|
|
|
refprism_2fa_1fb_0e_0v_splitfaces, 0,
|
|
refprism_2fa_1fb_0e_0v_newelstypes,
|
|
refprism_2fa_1fb_0e_0v_newels
|
|
};
|
|
|
|
|
|
// HP_PRISM_1FA_1FB_1EA_0V ... quad face 1-2-4-5 and trig face 1-2-3
|
|
int refprism_1fa_1fb_1ea_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{4,5,40},
|
|
{1,2,7},
|
|
{0,0,0},
|
|
};
|
|
int refprism_1fa_1fb_1ea_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{1,3,4,24},
|
|
{1,2,4,19},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_1fb_1ea_0v_newelstypes[] =
|
|
{
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_NONE
|
|
};
|
|
int refprism_1fa_1fb_1ea_0v_newels[][8] =
|
|
{
|
|
{40,5,17,19,45,42,21,24},
|
|
{24,21,18,45,42,6},
|
|
{12,9,3,24,21,18},
|
|
{7,2,9,12,19,17,21,24},
|
|
{16,19,24,4,40,45},
|
|
{1,7,12,16,19,24}
|
|
|
|
};
|
|
HPRef_Struct refprism_1fa_1fb_1ea_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_1fb_1ea_0v_splitedges,
|
|
refprism_1fa_1fb_1ea_0v_splitfaces, 0,
|
|
refprism_1fa_1fb_1ea_0v_newelstypes,
|
|
refprism_1fa_1fb_1ea_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_2FA_1FB_1EA_0V
|
|
int refprism_2fa_1fb_1ea_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{4,1,28},
|
|
{5,2,29},
|
|
{6,3,30},
|
|
{4,5,40},
|
|
{1,2,7},
|
|
{0,0,0},
|
|
};
|
|
int refprism_2fa_1fb_1ea_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{1,3,4,24},
|
|
{1,2,4,19},
|
|
{4,1,6,36},
|
|
{4,1,5,31},
|
|
{5,6,2,33},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_1fb_1ea_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_NONE
|
|
};
|
|
int refprism_2fa_1fb_1ea_0v_newels[][8] =
|
|
{
|
|
{ 18, 24, 21, 30, 36, 33},
|
|
{ 31, 29, 17, 19, 36, 33, 21, 24},
|
|
{ 16,19, 24, 28, 31, 36 },
|
|
{ 3, 12, 9, 18, 24, 21 },
|
|
{ 7, 2, 9, 12, 19, 17, 21, 24},
|
|
{ 1, 7, 12, 16, 19, 24 },
|
|
{ 6, 42, 45, 30, 33, 36 },
|
|
{ 40, 5, 29, 31, 45, 42, 33, 36 },
|
|
{ 40, 4, 45, 31, 28, 36}
|
|
};
|
|
HPRef_Struct refprism_2fa_1fb_1ea_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_1fb_1ea_0v_splitedges,
|
|
refprism_2fa_1fb_1ea_0v_splitfaces, 0,
|
|
refprism_2fa_1fb_1ea_0v_newelstypes,
|
|
refprism_2fa_1fb_1ea_0v_newels
|
|
};
|
|
|
|
|
|
// HP_PRISM_2FA_1FB_2EA_0V
|
|
int refprism_2fa_1fb_2ea_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{4,1,28},
|
|
{5,2,29},
|
|
{6,3,30},
|
|
{4,5,40},
|
|
{1,2,7},
|
|
{ 5, 4, 41},
|
|
{ 2, 1, 8},
|
|
{0,0,0},
|
|
};
|
|
int refprism_2fa_1fb_2ea_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{1,3,4,24},
|
|
{1,2,4,19},
|
|
{4,1,6,36},
|
|
{4,1,5,31},
|
|
{5,6,2,33},
|
|
{5,4,2,32},
|
|
{2,1,5,20},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_1fb_2ea_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_NONE
|
|
};
|
|
int refprism_2fa_1fb_2ea_0v_newels[][8] =
|
|
{
|
|
{ 18, 24, 21, 30, 36, 33},
|
|
{ 31, 32, 20, 19, 36, 33, 21, 24},
|
|
{ 16,19, 24, 28, 31, 36 },
|
|
{ 3, 12, 9, 18, 24, 21 },
|
|
{7,8,9,12,19,20,21,24},
|
|
{ 1, 7, 12, 16, 19, 24 },
|
|
{ 6, 42, 45, 30, 33, 36 },
|
|
{ 40, 41, 32, 31, 45, 42, 33, 36},
|
|
{ 40, 4, 45, 31, 28, 36},
|
|
{ 8, 2, 9, 20, 17, 21 },
|
|
{ 29, 32, 33, 17, 20, 21 },
|
|
{ 5, 41, 42, 29, 32, 33 },
|
|
};
|
|
HPRef_Struct refprism_2fa_1fb_2ea_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_1fb_2ea_0v_splitedges,
|
|
refprism_2fa_1fb_2ea_0v_splitfaces, 0,
|
|
refprism_2fa_1fb_2ea_0v_newelstypes,
|
|
refprism_2fa_1fb_2ea_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_2FA_1FB_3E_0V
|
|
int refprism_2fa_1fb_3e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 1, 8},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 1, 4, 16},
|
|
{ 2, 5, 17},
|
|
{ 3, 6, 18},
|
|
{ 4, 1, 28},
|
|
{ 5, 2, 29},
|
|
{ 6, 3, 30},
|
|
{ 4, 5, 40},
|
|
{ 5, 4, 41},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{0,0,0},
|
|
};
|
|
int refprism_2fa_1fb_3e_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,4,19},
|
|
{2,1,5,20},
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{4,1,5,31},
|
|
{5,4,2,32},
|
|
{5,6,2,33},
|
|
{6,5,3,34},
|
|
{6,4,3,35},
|
|
{4,1,6,36},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_1fb_3e_0v_newelstypes[] =
|
|
{
|
|
HP_HEX,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
|
|
HP_NONE
|
|
};
|
|
int refprism_2fa_1fb_3e_0v_newels[][8] =
|
|
{
|
|
{24, 21, 22, 23, 36, 33, 34, 35},
|
|
{18, 23, 22, 30, 35, 34},
|
|
{ 31, 32, 20, 19, 36, 33, 21, 24},
|
|
{ 16,19, 24, 28, 31, 36 },
|
|
{ 29, 32, 33, 17, 20, 21},
|
|
|
|
|
|
{ 12, 9,10,11, 24, 21, 22, 23 },
|
|
{ 3, 11, 10, 18,23,22},
|
|
{ 1, 7, 12 , 16, 19, 24},
|
|
{ 8,2,9, 20, 17,21},
|
|
{ 7,8,9,12,19, 20, 21, 24},
|
|
|
|
{ 44, 43, 42, 45, 35, 34, 33, 36},
|
|
{ 6, 43, 44, 30, 34, 35},
|
|
{ 40, 4, 45, 31,28, 36},
|
|
{ 5, 41,42, 29, 32, 33},
|
|
{ 40, 41, 32, 31, 45, 42, 33, 36},
|
|
};
|
|
HPRef_Struct refprism_2fa_1fb_3e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_1fb_3e_0v_splitedges,
|
|
|
|
refprism_2fa_1fb_3e_0v_splitfaces, 0,
|
|
refprism_2fa_1fb_3e_0v_newelstypes,
|
|
refprism_2fa_1fb_3e_0v_newels
|
|
};
|
|
|
|
|
|
|
|
|
|
// HP_PRISM_1FA_1FB_1EB_0V ... quad face 1-2-4-5 and trig face 1-2-3
|
|
int refprism_1fa_1fb_1eb_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{5,4,41},
|
|
{2,1,8},
|
|
{0,0,0},
|
|
};
|
|
int refprism_1fa_1fb_1eb_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{1,3,4,24},
|
|
{2,1,5,20},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_1fb_1eb_0v_newelstypes[] =
|
|
{
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V ,
|
|
HP_NONE
|
|
};
|
|
int refprism_1fa_1fb_1eb_0v_newels[][8] =
|
|
{
|
|
{4,41,20,16,45,42,21,24},
|
|
{24,21,18,45,42,6},
|
|
{12,9,3,24,21,18},
|
|
{1,8,9,12,16,20,21,24},
|
|
{5,41,42,17,20,21},
|
|
{8,2,9,20,17,21}
|
|
};
|
|
HPRef_Struct refprism_1fa_1fb_1eb_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_1fb_1eb_0v_splitedges,
|
|
|
|
refprism_1fa_1fb_1eb_0v_splitfaces, 0,
|
|
refprism_1fa_1fb_1eb_0v_newelstypes,
|
|
refprism_1fa_1fb_1eb_0v_newels
|
|
};
|
|
|
|
|
|
// HP_PRISM_1FA_1FB_2EA_0V ... quad face 1-2-4-5 and trig face 1-2-3
|
|
int refprism_1fa_1fb_2ea_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{5,4,41},
|
|
{2,1,8},
|
|
{4,5,40},
|
|
{1,2,7},
|
|
{0,0,0},
|
|
|
|
};
|
|
int refprism_1fa_1fb_2ea_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{1,3,4,24},
|
|
{2,1,5,20},
|
|
{1,2,4,19},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_1fb_2ea_0v_newelstypes[] =
|
|
{
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V ,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_NONE
|
|
};
|
|
int refprism_1fa_1fb_2ea_0v_newels[][8] =
|
|
{
|
|
{40,41,20,19,45,42,21,24},
|
|
{24,21,18,45,42,6},
|
|
{12,9,3,24,21,18},
|
|
{7,8,9,12,19,20,21,24},
|
|
{5,41,42,17,20,21},
|
|
{8,2,9,20,17,21},
|
|
{16,19,24,4,40,45},
|
|
{1,7,12,16,19,24}
|
|
};
|
|
HPRef_Struct refprism_1fa_1fb_2ea_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_1fb_2ea_0v_splitedges,
|
|
|
|
refprism_1fa_1fb_2ea_0v_splitfaces, 0,
|
|
refprism_1fa_1fb_2ea_0v_newelstypes,
|
|
refprism_1fa_1fb_2ea_0v_newels
|
|
};
|
|
|
|
|
|
// HP_PRISM_1FA_1FB_3E_0V
|
|
int refprism_1fa_1fb_3e_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{5,4,41},
|
|
{2,1,8},
|
|
{4,5,40},
|
|
{1,2,7},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{0,0,0},
|
|
|
|
};
|
|
int refprism_1fa_1fb_3e_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{1,3,4,24},
|
|
{2,1,5,20},
|
|
{1,2,4,19},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_1fb_3e_0v_newelstypes[] =
|
|
{
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V ,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_NONE
|
|
};
|
|
int refprism_1fa_1fb_3e_0v_newels[][8] =
|
|
{
|
|
{40,41,20,19,45,42,21,24},
|
|
{24, 21, 22, 23, 45, 42, 43, 44},
|
|
{18, 23, 22, 6, 44, 43},
|
|
{12, 9, 10, 11, 24, 21, 22, 23},
|
|
{3, 11, 10, 18, 23, 22},
|
|
{7,8,9,12,19,20,21,24},
|
|
{5,41,42,17,20,21},
|
|
{8,2,9,20,17,21},
|
|
{16,19,24,4,40,45},
|
|
{1,7,12,16,19,24}
|
|
};
|
|
HPRef_Struct refprism_1fa_1fb_3e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_1fb_3e_0v_splitedges,
|
|
|
|
refprism_1fa_1fb_3e_0v_splitfaces, 0,
|
|
refprism_1fa_1fb_3e_0v_newelstypes,
|
|
refprism_1fa_1fb_3e_0v_newels
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// HP_PRISM_2FA_0E_0V singular trig faces
|
|
int refprism_2fa_0e_0v_splitedges[][3] =
|
|
{
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{4,1,28},
|
|
{5,2,29},
|
|
{6,3,30},
|
|
{0,0,0}
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_0e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_NONE
|
|
};
|
|
int refprism_2fa_0e_0v_newels[][8] =
|
|
{
|
|
{16,17,18,28,29,30},
|
|
{1,2,3,16,17,18},
|
|
{4,6,5,28,30,29},
|
|
};
|
|
|
|
HPRef_Struct refprism_2fa_0e_0v =
|
|
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_0e_0v_splitedges,
|
|
0, 0,
|
|
refprism_2fa_0e_0v_newelstypes,
|
|
refprism_2fa_0e_0v_newels
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
// HP_PRISM_1FA_2FB ... quad face 1-2-4-5 and quad face 1-4-6-3
|
|
int refprism_1fa_2fb_0e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 1, 3, 12},
|
|
{ 1, 4, 16},
|
|
{ 2, 5, 17},
|
|
{ 3, 6, 18},
|
|
{ 4, 5, 40},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0 }
|
|
};
|
|
int refprism_1fa_2fb_0e_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{1,2,4,19},
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{1,3,4,24},
|
|
{4,5,6,46},
|
|
{ 0, 0, 0, 0 }
|
|
};
|
|
int refprism_1fa_2fb_0e_0v_splitelement[][5] =
|
|
{
|
|
{1,2,3,4,25},
|
|
{0,0,0,0,0}
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_2fb_0e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fa_2fb_0e_0v_newels[][8] =
|
|
{
|
|
{ 25, 21, 22, 46, 42, 43 },
|
|
{ 40, 5, 17, 19, 46, 42, 21, 25 },
|
|
{ 24, 18, 6, 45, 25, 22, 43, 46},
|
|
{ 16, 19, 25, 4, 40, 46 },
|
|
{ 4, 45, 46, 16, 24, 25 },
|
|
{ 13, 9, 10, 25, 21, 22 },
|
|
{ 7, 2, 9, 13, 19, 17, 21, 25 },
|
|
{ 3, 12, 13, 10, 18, 24, 25, 22 },
|
|
{ 1, 7, 13, 16, 19, 25 },
|
|
{ 12, 1, 13, 24, 16, 25 }
|
|
|
|
};
|
|
HPRef_Struct refprism_1fa_2fb_0e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_2fb_0e_0v_splitedges,
|
|
refprism_1fa_2fb_0e_0v_splitfaces,
|
|
refprism_1fa_2fb_0e_0v_splitelement,
|
|
refprism_1fa_2fb_0e_0v_newelstypes,
|
|
refprism_1fa_2fb_0e_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_1FA_2FB_1EC ... quad face 1-2-4-5 and quad face 1-4-6-3
|
|
int refprism_1fa_2fb_1ec_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 1, 4, 16},
|
|
{ 2, 5, 17},
|
|
{ 3, 6, 18},
|
|
{ 4, 5, 40},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0 }
|
|
};
|
|
int refprism_1fa_2fb_1ec_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{1,2,4,19},
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{4,5,6,46},
|
|
{ 0, 0, 0, 0 }
|
|
};
|
|
int refprism_1fa_2fb_1ec_0v_splitelement[][5] =
|
|
{
|
|
{1,2,3,4,25},
|
|
{0,0,0,0,0}
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_2fb_1ec_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fa_2fb_1ec_0v_newels[][8] =
|
|
{
|
|
{ 25, 21, 22, 46, 42, 43 },
|
|
{ 40, 5, 17, 19, 46, 42, 21, 25 },
|
|
{ 24, 23, 44, 45, 25, 22, 43, 46},
|
|
{ 16, 19, 25, 4, 40, 46 },
|
|
{ 4, 45, 46, 16, 24, 25 },
|
|
{ 18, 23, 22, 6, 44, 43},
|
|
|
|
|
|
{ 13, 9, 10, 25, 21, 22 },
|
|
{ 7, 2, 9, 13, 19, 17, 21, 25 },
|
|
{ 11, 12, 13, 10, 23, 24, 25, 22 },
|
|
{ 1, 7, 13, 16, 19, 25 },
|
|
{ 12, 1, 13, 24, 16, 25 },
|
|
{ 3, 11, 10, 18, 23, 22},
|
|
|
|
};
|
|
HPRef_Struct refprism_1fa_2fb_1ec_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_2fb_1ec_0v_splitedges,
|
|
refprism_1fa_2fb_1ec_0v_splitfaces,
|
|
refprism_1fa_2fb_1ec_0v_splitelement,
|
|
refprism_1fa_2fb_1ec_0v_newelstypes,
|
|
refprism_1fa_2fb_1ec_0v_newels
|
|
};
|
|
|
|
|
|
// HP_PRISM_1FA_2FB_3E ... quad face 1-2-4-5 and quad face 1-4-6-3
|
|
int refprism_1fa_2fb_3e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 1, 8},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 1, 4, 16},
|
|
{ 2, 5, 17},
|
|
{ 3, 6, 18},
|
|
{ 4, 5, 40},
|
|
{ 5, 4, 41},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0 }
|
|
};
|
|
int refprism_1fa_2fb_3e_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{1,2,4,19},
|
|
{2,1,5,20},
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{4,5,6,46},
|
|
{ 0, 0, 0, 0 }
|
|
};
|
|
int refprism_1fa_2fb_3e_0v_splitelement[][5] =
|
|
{
|
|
{1,2,3,4,25},
|
|
{0,0,0,0,0}
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_2fb_3e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fa_2fb_3e_0v_newels[][8] =
|
|
{
|
|
{ 25, 21, 22, 46, 42, 43 },
|
|
{ 40, 41, 20, 19, 46, 42, 21, 25 },
|
|
{ 24, 23, 44, 45, 25, 22, 43, 46},
|
|
{ 16, 19, 25, 4, 40, 46 },
|
|
{ 4, 45, 46, 16, 24, 25 },
|
|
{ 18, 23, 22, 6, 44, 43},
|
|
{ 5, 41, 42, 17, 20, 21},
|
|
|
|
|
|
{ 13, 9, 10, 25, 21, 22 },
|
|
{ 7, 8, 9, 13, 19, 20, 21, 25 },
|
|
{ 11, 12, 13, 10, 23, 24, 25, 22 },
|
|
{ 1, 7, 13, 16, 19, 25 },
|
|
|
|
{ 12, 1, 13, 24, 16, 25 },
|
|
{ 3, 11, 10, 18, 23, 22},
|
|
{ 8, 2, 9, 20, 17, 21},
|
|
|
|
};
|
|
HPRef_Struct refprism_1fa_2fb_3e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_2fb_3e_0v_splitedges,
|
|
refprism_1fa_2fb_3e_0v_splitfaces,
|
|
refprism_1fa_2fb_3e_0v_splitelement,
|
|
refprism_1fa_2fb_3e_0v_newelstypes,
|
|
refprism_1fa_2fb_3e_0v_newels
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// HP_PRISM_1FA_2FB_1eb ... quad face 1-2-4-5 and quad face 1-4-6-3
|
|
int refprism_1fa_2fb_1eb_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 1, 8},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 1, 3, 12},
|
|
{ 1, 4, 16},
|
|
{ 2, 5, 17},
|
|
{ 3, 6, 18},
|
|
{ 4, 5, 40},
|
|
{ 5, 4, 41},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0 }
|
|
};
|
|
int refprism_1fa_2fb_1eb_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{1,2,4,19},
|
|
{2,1,5,20},
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{1,3,4,24},
|
|
{4,5,6,46},
|
|
{ 0, 0, 0, 0 }
|
|
};
|
|
int refprism_1fa_2fb_1eb_0v_splitelement[][5] =
|
|
{
|
|
{1,2,3,4,25},
|
|
{0,0,0,0,0}
|
|
};
|
|
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_2fb_1eb_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
|
|
HP_NONE,
|
|
};
|
|
|
|
int refprism_1fa_2fb_1eb_0v_newels[][8] =
|
|
{
|
|
{ 25, 21, 22, 46, 42, 43 },
|
|
{ 40, 41, 20, 19, 46, 42, 21, 25 },
|
|
{ 24, 18, 6, 45, 25, 22, 43, 46},
|
|
{ 16, 19, 25, 4, 40, 46 },
|
|
{ 4, 45, 46, 16, 24, 25 },
|
|
{ 5, 41, 42, 17, 20, 21 },
|
|
|
|
|
|
{ 13, 9, 10, 25, 21, 22 },
|
|
{ 7, 8, 9, 13, 19, 20, 21, 25 },
|
|
{ 3, 12, 13, 10, 18, 24, 25, 22 },
|
|
{ 1, 7, 13, 16, 19, 25 },
|
|
{ 12, 1, 13, 24, 16, 25 },
|
|
{ 8, 2, 9, 20, 17, 21},
|
|
|
|
};
|
|
HPRef_Struct refprism_1fa_2fb_1eb_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_2fb_1eb_0v_splitedges,
|
|
refprism_1fa_2fb_1eb_0v_splitfaces,
|
|
refprism_1fa_2fb_1eb_0v_splitelement,
|
|
refprism_1fa_2fb_1eb_0v_newelstypes,
|
|
refprism_1fa_2fb_1eb_0v_newels
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// HP_PRISM_2FA_2FB
|
|
int refprism_2fa_2fb_0e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 1, 3, 12},
|
|
{ 1, 4, 16},
|
|
{ 2, 5, 17},
|
|
{ 3, 6, 18},
|
|
{ 4, 5, 40},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 4, 6, 45},
|
|
{ 4, 1, 28},
|
|
{ 5, 2, 29},
|
|
{ 6, 3, 30},
|
|
{ 0, 0, 0 }
|
|
};
|
|
int refprism_2fa_2fb_0e_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{1,2,4,19},
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{1,3,4,24},
|
|
{4,5,6,46},
|
|
{4,1,5,31},
|
|
{5,6,2,33},
|
|
{6,5,3,34},
|
|
{4,1,6,36},
|
|
{ 0, 0, 0, 0 }
|
|
};
|
|
int refprism_2fa_2fb_0e_0v_splitelement[][5] =
|
|
{
|
|
{1,2,3,4,25},
|
|
{4,1,6,5,37},
|
|
{0,0,0,0,0}
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_2fb_0e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
|
|
HP_NONE,
|
|
};
|
|
int refprism_2fa_2fb_0e_0v_newels[][8] =
|
|
{
|
|
{ 25, 21, 22, 37, 33, 34},
|
|
{ 31, 29, 17, 19, 37, 33, 21, 25},
|
|
{ 36, 24, 18, 30, 37, 25, 22, 34},
|
|
{ 16, 19, 25, 28, 31, 37},
|
|
{ 28, 36, 37, 16, 24, 25},
|
|
|
|
{ 13, 9, 10, 25, 21, 22 },
|
|
{ 7, 2, 9, 13, 19, 17, 21, 25 },
|
|
{ 3, 12, 13, 10, 18, 24, 25, 22 },
|
|
{ 1, 7, 13, 16, 19, 25 },
|
|
{ 12, 1, 13, 24, 16, 25 },
|
|
|
|
{ 46, 43, 42 ,37, 34, 33},
|
|
{ 40, 5, 29, 31, 46, 42, 33, 37 },
|
|
{ 6, 45, 36, 30, 43, 46, 37, 34 },
|
|
{ 40, 4, 46, 31, 28, 37 },
|
|
{ 4, 45, 46, 28, 36, 37},
|
|
|
|
};
|
|
HPRef_Struct refprism_2fa_2fb_0e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_2fb_0e_0v_splitedges,
|
|
refprism_2fa_2fb_0e_0v_splitfaces,
|
|
refprism_2fa_2fb_0e_0v_splitelement,
|
|
refprism_2fa_2fb_0e_0v_newelstypes,
|
|
refprism_2fa_2fb_0e_0v_newels
|
|
};
|
|
|
|
|
|
// HP_PRISM_2FA_2FB_1EC
|
|
int refprism_2fa_2fb_1ec_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 1, 4, 16},
|
|
{ 2, 5, 17},
|
|
{ 3, 6, 18},
|
|
{ 4, 1, 28},
|
|
{ 5, 2, 29},
|
|
{ 6, 3, 30},
|
|
{ 4, 5, 40},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0 }
|
|
};
|
|
int refprism_2fa_2fb_1ec_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{1,2,4,19},
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{4,5,6,46},
|
|
{4,1,5,31},
|
|
{5,6,2,33},
|
|
{6,5,3,34},
|
|
{6,4,3,35},
|
|
{4,1,6,36},
|
|
{ 0, 0, 0, 0 }
|
|
};
|
|
int refprism_2fa_2fb_1ec_0v_splitelement[][5] =
|
|
{
|
|
{1,2,3,4,25},
|
|
{4,1,6,5,37},
|
|
{0,0,0,0,0}
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_2fb_1ec_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
|
|
HP_NONE,
|
|
};
|
|
int refprism_2fa_2fb_1ec_0v_newels[][8] =
|
|
{
|
|
{ 25, 21, 22, 37, 33, 34},
|
|
{ 31, 29, 17, 19, 37, 33, 21, 25},
|
|
{ 36, 24, 23, 35, 37, 25, 22, 34},
|
|
{ 16, 19, 25, 28, 31, 37},
|
|
{ 28, 36, 37, 16, 24, 25},
|
|
{ 18, 23, 22, 30, 35, 34},
|
|
|
|
{ 13, 9, 10, 25, 21, 22 },
|
|
{ 7, 2, 9, 13, 19, 17, 21, 25 },
|
|
{ 11, 12, 13, 10, 23, 24, 25, 22 },
|
|
{ 1, 7, 13, 16, 19, 25 },
|
|
{ 12, 1, 13, 24, 16, 25 },
|
|
{ 3, 11, 10, 18, 23, 22 },
|
|
|
|
{ 46, 43, 42 ,37, 34, 33},
|
|
{ 40, 5, 29, 31, 46, 42, 33, 37 },
|
|
{ 44, 45, 36, 35, 43, 46, 37, 34 },
|
|
{ 40, 4, 46, 31, 28, 37 },
|
|
{ 4, 45, 46, 28, 36, 37},
|
|
{ 44, 6, 43, 35, 30, 34},
|
|
|
|
};
|
|
HPRef_Struct refprism_2fa_2fb_1ec_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_2fb_1ec_0v_splitedges,
|
|
refprism_2fa_2fb_1ec_0v_splitfaces,
|
|
refprism_2fa_2fb_1ec_0v_splitelement,
|
|
refprism_2fa_2fb_1ec_0v_newelstypes,
|
|
refprism_2fa_2fb_1ec_0v_newels
|
|
};
|
|
|
|
|
|
|
|
// HP_PRISM_2FA_2FB_3E
|
|
int refprism_2fa_2fb_3e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 1, 8},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 1, 4, 16},
|
|
{ 2, 5, 17},
|
|
{ 3, 6, 18},
|
|
{ 4, 1, 28},
|
|
{ 5, 2, 29},
|
|
{ 6, 3, 30},
|
|
{ 4, 5, 40},
|
|
{ 5, 4, 41},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0 }
|
|
};
|
|
int refprism_2fa_2fb_3e_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{1,2,4,19},
|
|
{2,1,5,20},
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{4,5,6,46},
|
|
{4,1,5,31},
|
|
{5,4,2,32},
|
|
{5,6,2,33},
|
|
{6,5,3,34},
|
|
{6,4,3,35},
|
|
{4,1,6,36},
|
|
{ 0, 0, 0, 0 }
|
|
};
|
|
int refprism_2fa_2fb_3e_0v_splitelement[][5] =
|
|
{
|
|
{1,2,3,4,25},
|
|
{4,1,6,5,37},
|
|
{0,0,0,0,0}
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_2fb_3e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
|
|
HP_NONE,
|
|
};
|
|
int refprism_2fa_2fb_3e_0v_newels[][8] =
|
|
{
|
|
{ 25, 21, 22, 37, 33, 34},
|
|
{ 31, 32, 20, 19, 37, 33, 21, 25},
|
|
{ 36, 24, 23, 35, 37, 25, 22, 34},
|
|
{ 16, 19, 25, 28, 31, 37},
|
|
{ 28, 36, 37, 16, 24, 25},
|
|
{ 18, 23, 22, 30, 35, 34},
|
|
{ 29, 32, 33, 17, 20, 21},
|
|
|
|
{ 13, 9, 10, 25, 21, 22 },
|
|
{ 7, 8, 9, 13, 19, 20, 21, 25 },
|
|
{ 11, 12, 13, 10, 23, 24, 25, 22 },
|
|
{ 1, 7, 13, 16, 19, 25 },
|
|
{ 12, 1, 13, 24, 16, 25 },
|
|
{ 3, 11, 10, 18, 23, 22 },
|
|
{ 8, 2, 9, 20, 17, 21 },
|
|
|
|
{ 46, 43, 42 ,37, 34, 33},
|
|
{ 40, 41, 32, 31, 46, 42, 33, 37 },
|
|
{ 44, 45, 36, 35, 43, 46, 37, 34 },
|
|
{ 40, 4, 46, 31, 28, 37 },
|
|
{ 4, 45, 46, 28, 36, 37},
|
|
{ 44, 6, 43, 35, 30, 34},
|
|
{ 5, 41, 42, 29, 32, 33},
|
|
|
|
};
|
|
HPRef_Struct refprism_2fa_2fb_3e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_2fb_3e_0v_splitedges,
|
|
refprism_2fa_2fb_3e_0v_splitfaces,
|
|
refprism_2fa_2fb_3e_0v_splitelement,
|
|
refprism_2fa_2fb_3e_0v_newelstypes,
|
|
refprism_2fa_2fb_3e_0v_newels
|
|
};
|
|
|
|
|
|
|
|
|
|
// HP_PRISM_1FA_2E_0V
|
|
int refprism_1fa_2e_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{5,4,41},
|
|
{2,1,8},
|
|
{4,5,40},
|
|
{1,2,7},
|
|
{0,0,0},
|
|
|
|
};
|
|
int refprism_1fa_2e_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{1,3,4,24},
|
|
{2,1,5,20},
|
|
{1,2,4,19},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_2e_0v_newelstypes[] =
|
|
{
|
|
HP_HEX,
|
|
HP_PRISM,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_NONE
|
|
};
|
|
int refprism_1fa_2e_0v_newels[][8] =
|
|
{
|
|
{40,41,20,19,45,42,21,24},
|
|
{24,21,18,45,42,6},
|
|
{12,9,3,24,21,18},
|
|
{9, 12, 7, 8, 21, 24, 19, 20},
|
|
{ 17, 21, 20, 5, 42, 41},
|
|
{2, 9, 8, 17, 21, 20},
|
|
{16,19,24,4,40,45},
|
|
{1,7,12,16,19,24}
|
|
};
|
|
HPRef_Struct refprism_1fa_2e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_2e_0v_splitedges,
|
|
|
|
refprism_1fa_2e_0v_splitfaces, 0,
|
|
refprism_1fa_2e_0v_newelstypes,
|
|
refprism_1fa_2e_0v_newels
|
|
};
|
|
|
|
// HP_PRISM_2FA_2E_0V
|
|
int refprism_2fa_2e_0v_splitedges[][3] =
|
|
{
|
|
{2,3,9},
|
|
{1,3,12},
|
|
{1,4,16},
|
|
{2,5,17},
|
|
{3,6,18},
|
|
{5,6,42},
|
|
{4,6,45},
|
|
{4,1,28},
|
|
{5,2,29},
|
|
{6,3,30},
|
|
{4,5,40},
|
|
{1,2,7},
|
|
{ 5, 4, 41},
|
|
{ 2, 1, 8},
|
|
{0,0,0},
|
|
};
|
|
int refprism_2fa_2e_0v_splitfaces[][4] =
|
|
{
|
|
{2,3,5,21},
|
|
{1,3,4,24},
|
|
{1,2,4,19},
|
|
{4,1,6,36},
|
|
{4,1,5,31},
|
|
{5,6,2,33},
|
|
{5,4,2,32},
|
|
{2,1,5,20},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_2e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM_SINGEDGE,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_NONE,
|
|
|
|
};
|
|
int refprism_2fa_2e_0v_newels[][8] =
|
|
{
|
|
{ 24, 21, 18, 36, 33, 30},
|
|
{ 19, 20, 21, 24, 31, 32, 33, 36},
|
|
{ 16, 19, 24, 28, 31, 36},
|
|
{ 17, 21, 20, 29, 33, 32},
|
|
|
|
{ 12, 9, 3, 24, 21, 18},
|
|
{ 7, 8, 9, 12, 19, 20, 21, 24},
|
|
{ 1, 7, 12, 16, 19, 24},
|
|
{ 2, 9, 8, 17, 21, 20},
|
|
|
|
{ 45, 6, 42, 36, 30, 33},
|
|
{ 40, 45, 42, 41, 31, 36, 33, 32},
|
|
{ 4, 45, 40, 28, 36, 31 },
|
|
{ 5, 41, 42, 29, 32, 33 },
|
|
};
|
|
HPRef_Struct refprism_2fa_2e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_2e_0v_splitedges,
|
|
refprism_2fa_2e_0v_splitfaces, 0,
|
|
refprism_2fa_2e_0v_newelstypes,
|
|
refprism_2fa_2e_0v_newels
|
|
};
|
|
|
|
|
|
|
|
// HP_PRISM_3E_0V
|
|
int refprism_3e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 1, 8},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 4, 5, 40},
|
|
{ 5, 4, 41},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0},
|
|
};
|
|
int refprism_3e_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{2,3,1,14},
|
|
{3,1,2,15},
|
|
{4,5,6,46},
|
|
{5,4,6,47},
|
|
{6,4,5,48},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_3e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX,
|
|
HP_HEX,
|
|
HP_HEX,
|
|
HP_PRISM,
|
|
HP_PRISM,
|
|
HP_PRISM,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_NONE
|
|
};
|
|
int refprism_3e_0v_newels[][8] =
|
|
{
|
|
{ 13, 14, 15, 46, 47, 48},
|
|
{ 7, 8, 14, 13, 40, 41, 47, 46},
|
|
{ 15, 14, 9, 10, 48, 47, 42, 43},
|
|
{ 12, 13, 15, 11, 45, 46, 48, 44},
|
|
{ 14, 8, 9, 47, 41, 42 },
|
|
{ 11, 15, 10, 44, 48, 43 },
|
|
{ 7, 13, 12, 40, 46, 45},
|
|
{ 1, 7, 12, 4, 40, 45},
|
|
{ 2, 9, 8, 5, 42, 41 },
|
|
{ 3, 11, 10, 6, 44, 43 }
|
|
};
|
|
HPRef_Struct refprism_3e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_3e_0v_splitedges,
|
|
refprism_3e_0v_splitfaces, 0,
|
|
refprism_3e_0v_newelstypes,
|
|
refprism_3e_0v_newels
|
|
};
|
|
|
|
|
|
// HP_PRISM_3E_0V
|
|
int refprism_1fa_3e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 1, 8},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 1, 4, 16},
|
|
{ 2, 5, 17},
|
|
{ 3, 6, 18},
|
|
{ 4, 5, 40},
|
|
{ 5, 4, 41},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
|
|
{ 0, 0, 0},
|
|
};
|
|
int refprism_1fa_3e_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{2,3,1,14},
|
|
{3,1,2,15},
|
|
{1,2,4,19},
|
|
{2,1,5,20},
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{4,5,6,46},
|
|
{5,4,6,47},
|
|
{6,4,5,48},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
int refprism_1fa_3e_0v_splitelements[][5] =
|
|
{
|
|
{1,2,3,4,25},
|
|
{2,1,3,5,26},
|
|
{3,1,2,6,27},
|
|
{0,0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_3e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX,
|
|
HP_HEX,
|
|
HP_HEX,
|
|
HP_PRISM,
|
|
HP_PRISM,
|
|
HP_PRISM,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM_SINGEDGE,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_NONE
|
|
};
|
|
int refprism_1fa_3e_0v_newels[][8] =
|
|
{
|
|
{ 25, 26, 27, 46, 47, 48},
|
|
{ 19, 20, 26, 25, 40, 41, 47, 46},
|
|
{ 27, 26, 21, 22, 48, 47, 42, 43},
|
|
{ 23, 24, 25, 27, 44, 45, 46, 48},
|
|
{ 19, 25, 24, 40, 46, 45},
|
|
{ 26, 20, 21, 47, 41, 42},
|
|
{ 23, 27, 22, 44, 48, 43},
|
|
{ 16, 19, 24, 4, 40, 45},
|
|
{ 17, 21, 20, 5, 42, 41},
|
|
{ 18, 23, 22, 6, 44, 43},
|
|
|
|
{ 13, 14, 15, 25, 26, 27},
|
|
{ 7, 8, 14, 13, 19, 20, 26, 25},
|
|
{ 15, 14, 9, 10, 27, 26, 21, 22},
|
|
{ 12, 13, 15, 11, 24, 25, 27, 23},
|
|
{ 14, 8, 9, 26, 20, 21},
|
|
{ 11, 15, 10, 23, 27, 22},
|
|
{ 7, 13 , 12, 19, 25, 24},
|
|
{ 2, 9, 8, 17, 21, 20},
|
|
{ 3, 11, 10, 18, 23, 22},
|
|
{ 1, 7, 12, 16, 19, 24},
|
|
};
|
|
HPRef_Struct refprism_1fa_3e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_3e_0v_splitedges,
|
|
refprism_1fa_3e_0v_splitfaces,
|
|
refprism_1fa_3e_0v_splitelements,
|
|
refprism_1fa_3e_0v_newelstypes,
|
|
refprism_1fa_3e_0v_newels
|
|
};
|
|
|
|
|
|
|
|
// HP_PRISM_2FA_3E_0V
|
|
int refprism_2fa_3e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 1, 8},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 1, 4, 16},
|
|
{ 2, 5, 17},
|
|
{ 3, 6, 18},
|
|
{ 4, 1, 28},
|
|
{ 5, 2, 29},
|
|
{ 6, 3, 30},
|
|
{ 4, 5, 40},
|
|
{ 5, 4, 41},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0},
|
|
};
|
|
int refprism_2fa_3e_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{2,3,1,14},
|
|
{3,1,2,15},
|
|
{1,2,4,19},
|
|
{2,1,5,20},
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{4,1,5,31},
|
|
{5,4,2,32},
|
|
{5,6,2,33},
|
|
{6,5,3,34},
|
|
{6,4,3,35},
|
|
{4,1,6,36},
|
|
{4,5,6,46},
|
|
{5,4,6,47},
|
|
{6,4,5,48},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
int refprism_2fa_3e_0v_splitelements[][5] =
|
|
{
|
|
{1,2,3,4,25},
|
|
{2,1,3,5,26},
|
|
{3,1,2,6,27},
|
|
{4,1,6,5,37},
|
|
{5,2,4,6,38},
|
|
{6,4,5,3,39},
|
|
{0,0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_3e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX,
|
|
HP_HEX,
|
|
HP_HEX,
|
|
HP_PRISM,
|
|
HP_PRISM,
|
|
HP_PRISM,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM_SINGEDGE,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
|
|
HP_NONE
|
|
};
|
|
|
|
int refprism_2fa_3e_0v_newels[][8] =
|
|
{
|
|
{ 25, 26, 27, 37, 38, 39},
|
|
{ 19, 20, 26, 25, 31, 32, 38, 37},
|
|
{ 27, 26, 21, 22, 39, 38, 33, 34},
|
|
{ 23, 24, 25, 27, 35, 36, 37, 39},
|
|
{ 19, 25, 24, 31, 37, 36},
|
|
{ 26, 20, 21, 38, 32, 33},
|
|
{ 23, 27, 22, 35, 39, 34},
|
|
{ 16, 19, 24, 28, 31, 36},
|
|
{ 17, 21, 20, 29, 33, 32},
|
|
{ 18, 23, 22, 30, 35, 34},
|
|
|
|
{ 13, 14, 15, 25, 26, 27},
|
|
{ 7, 8, 14, 13, 19, 20, 26, 25},
|
|
{ 15, 14, 9, 10, 27, 26, 21, 22},
|
|
{ 12, 13, 15, 11, 24, 25, 27, 23},
|
|
{ 14, 8, 9, 26, 20, 21},
|
|
{ 11, 15, 10, 23, 27, 22},
|
|
{ 7, 13 , 12, 19, 25, 24},
|
|
{ 2, 9, 8, 17, 21, 20},
|
|
{ 3, 11, 10, 18, 23, 22},
|
|
{ 1, 7, 12, 16, 19, 24},
|
|
|
|
{ 48, 47, 46, 39, 38, 37 },
|
|
{ 48, 43, 42, 47, 39, 34, 33, 38},
|
|
{ 45, 44, 48, 46, 36, 35, 39, 37},
|
|
{ 46, 47, 41, 40, 37, 38, 32, 31},
|
|
{ 47, 42, 41, 38, 33, 32},
|
|
{ 45, 46, 40, 36, 37, 31},
|
|
{ 44, 43, 48, 35, 34, 39},
|
|
{ 6, 43, 44, 30, 34, 35},
|
|
{ 5, 41, 42, 29, 32, 33},
|
|
{ 4, 45, 40, 28, 36, 31},
|
|
};
|
|
|
|
HPRef_Struct refprism_2fa_3e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_3e_0v_splitedges,
|
|
refprism_2fa_3e_0v_splitfaces,
|
|
refprism_2fa_3e_0v_splitelements,
|
|
refprism_2fa_3e_0v_newelstypes,
|
|
refprism_2fa_3e_0v_newels
|
|
};
|
|
|
|
|
|
|
|
// HP_PRISM_3FB_0V
|
|
int refprism_3fb_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 1, 8},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 4, 5, 40},
|
|
{ 5, 4, 41},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0},
|
|
};
|
|
int refprism_3fb_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{2,3,1,14},
|
|
{3,1,2,15},
|
|
{4,5,6,46},
|
|
{5,4,6,47},
|
|
{6,4,5,48},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_3fb_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_NONE
|
|
};
|
|
int refprism_3fb_0v_newels[][8] =
|
|
{
|
|
{ 13, 14, 15, 46, 47, 48},
|
|
{ 8, 7, 40, 41, 14,13, 46, 47 },
|
|
{ 10, 9, 42, 43, 15, 14, 47, 48 },
|
|
{ 44, 45, 12, 11, 48, 46, 13, 15},
|
|
{ 1, 7, 13, 4, 40, 46 },
|
|
{ 4, 45, 46, 1, 12, 13},
|
|
{ 2, 9, 14, 5, 42, 47 },
|
|
{ 5, 41, 47, 2, 8, 14 },
|
|
{ 3, 11, 15, 6, 44, 48},
|
|
{ 6, 43, 48, 3, 10, 15},
|
|
|
|
};
|
|
HPRef_Struct refprism_3fb_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_3fb_0v_splitedges,
|
|
refprism_3fb_0v_splitfaces, 0,
|
|
refprism_3fb_0v_newelstypes,
|
|
refprism_3fb_0v_newels
|
|
};
|
|
|
|
|
|
// HP_PRISM_3FB_0V
|
|
int refprism_1fa_3fb_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 1, 8},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 1, 4, 16},
|
|
{ 2, 5, 17},
|
|
{ 3, 6, 18},
|
|
{ 4, 5, 40},
|
|
{ 5, 4, 41},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0},
|
|
};
|
|
int refprism_1fa_3fb_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{2,3,1,14},
|
|
{3,1,2,15},
|
|
{1,2,4,19},
|
|
{2,1,5,20},
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{4,5,6,46},
|
|
{5,4,6,47},
|
|
{6,4,5,48},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
int refprism_1fa_3fb_0v_splitelements[][5] =
|
|
{
|
|
{1,2,3,4,25},
|
|
{2,1,3,5,26},
|
|
{3,1,2,6,27},
|
|
{0,0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_1fa_3fb_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
|
|
HP_NONE
|
|
};
|
|
int refprism_1fa_3fb_0v_newels[][8] =
|
|
{
|
|
{ 25, 26, 27, 46, 47, 48},
|
|
{ 19, 40, 41, 20, 25, 46, 47, 26},
|
|
{ 22, 21, 42, 43, 27, 26, 47, 48},
|
|
{ 24, 23, 44, 45, 25, 27, 48, 46},
|
|
|
|
{ 16, 19, 25, 4, 40, 46 },
|
|
{ 4, 45, 46, 16, 24, 25 },
|
|
{ 17, 21, 26, 5, 42, 47 },
|
|
{ 5, 41, 47, 17, 20, 26},
|
|
{ 18, 23, 27, 6, 44, 48},
|
|
{ 6, 43, 48, 18, 22, 27},
|
|
|
|
{ 13, 14, 15, 25, 26, 27},
|
|
{ 7, 8, 14, 13, 19, 20, 26, 25},
|
|
{ 9, 10, 15, 14, 21, 22, 27, 26},
|
|
{ 11, 12, 13, 15, 23, 24, 25, 27},
|
|
|
|
{ 2, 9, 14, 17, 21, 26},
|
|
{ 8, 2, 14, 20, 17, 26},
|
|
{ 1, 7, 13, 16, 19, 25},
|
|
{ 12, 1, 13, 24, 16, 25 },
|
|
{ 3, 11, 15, 18, 23, 27 },
|
|
{ 10, 3, 15, 22, 18, 27},
|
|
|
|
};
|
|
HPRef_Struct refprism_1fa_3fb_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fa_3fb_0v_splitedges,
|
|
refprism_1fa_3fb_0v_splitfaces,
|
|
refprism_1fa_3fb_0v_splitelements,
|
|
refprism_1fa_3fb_0v_newelstypes,
|
|
refprism_1fa_3fb_0v_newels
|
|
};
|
|
|
|
|
|
|
|
// HP_PRISM_2FA_3E_0V
|
|
int refprism_2fa_3fb_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 1, 8},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 1, 4, 16},
|
|
{ 2, 5, 17},
|
|
{ 3, 6, 18},
|
|
{ 4, 1, 28},
|
|
{ 5, 2, 29},
|
|
{ 6, 3, 30},
|
|
{ 4, 5, 40},
|
|
{ 5, 4, 41},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0},
|
|
};
|
|
int refprism_2fa_3fb_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{2,3,1,14},
|
|
{3,1,2,15},
|
|
{1,2,4,19},
|
|
{2,1,5,20},
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{4,1,5,31},
|
|
{5,4,2,32},
|
|
{5,6,2,33},
|
|
{6,5,3,34},
|
|
{6,4,3,35},
|
|
{4,1,6,36},
|
|
{4,5,6,46},
|
|
{5,4,6,47},
|
|
{6,4,5,48},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
int refprism_2fa_3fb_0v_splitelements[][5] =
|
|
{
|
|
{1,2,3,4,25},
|
|
{2,1,3,5,26},
|
|
{3,1,2,6,27},
|
|
{4,1,6,5,37},
|
|
{5,2,4,6,38},
|
|
{6,4,5,3,39},
|
|
{0,0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_3fb_0v_newelstypes[] =
|
|
{
|
|
|
|
HP_PRISM,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_HEX_1FA_1FB_0E_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
HP_PRISM_1FA_1FB_1EA_0V,
|
|
HP_PRISM_1FA_1FB_1EB_0V,
|
|
|
|
HP_NONE
|
|
};
|
|
int refprism_2fa_3fb_0v_newels[][8] =
|
|
{
|
|
{ 25, 26, 27, 37, 38, 39},
|
|
{ 19, 31, 32, 20, 25, 37, 38, 26},
|
|
{ 33, 34, 22, 21, 38, 39, 27, 26},
|
|
{ 35, 36, 24, 23, 39, 37, 25, 27},
|
|
|
|
{ 16, 19, 25, 28, 31, 37},
|
|
{ 28, 36, 37, 16, 24, 25 },
|
|
{ 17, 21, 26, 29, 33, 38 },
|
|
{ 29, 32, 38, 17, 20, 26},
|
|
{ 18, 23, 27, 30, 35, 39},
|
|
{ 30, 34, 39, 18, 22, 27},
|
|
|
|
|
|
{ 13, 14, 15, 25, 26, 27},
|
|
{ 7, 8, 14, 13, 19, 20, 26, 25},
|
|
{ 9, 10, 15, 14, 21, 22, 27, 26},
|
|
{ 11, 12, 13, 15, 23, 24, 25, 27},
|
|
|
|
{ 2, 9, 14, 17, 21, 26},
|
|
{ 8, 2, 14, 20, 17, 26},
|
|
{ 1, 7, 13, 16, 19, 25},
|
|
{ 12, 1, 13, 24, 16, 25 },
|
|
{ 3, 11, 15, 18, 23, 27 },
|
|
{ 10, 3, 15, 22, 18, 27},
|
|
|
|
|
|
{ 48, 47, 46, 39, 38, 37 },
|
|
{ 44, 45, 36, 35, 48, 46, 37, 39},
|
|
{ 40, 41, 32, 31, 46, 47, 38, 37},
|
|
{ 42, 43, 34, 33, 47, 48, 39, 38},
|
|
|
|
{ 6, 43, 48, 30, 34, 39},
|
|
{ 44, 6, 48, 35, 30, 39},
|
|
{ 4, 45, 46, 28, 36, 37},
|
|
{ 40, 4, 46, 31, 28, 37},
|
|
{ 5, 41, 47, 29, 32, 38},
|
|
{ 42, 5, 47, 33, 29, 38},
|
|
};
|
|
|
|
HPRef_Struct refprism_2fa_3fb_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_3fb_0v_splitedges,
|
|
refprism_2fa_3fb_0v_splitfaces,
|
|
refprism_2fa_3fb_0v_splitelements,
|
|
refprism_2fa_3fb_0v_newelstypes,
|
|
refprism_2fa_3fb_0v_newels
|
|
};
|
|
|
|
|
|
/*
|
|
|
|
|
|
// HP_PRISM_3E_4EH
|
|
int refprism_3e_4eh_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 1, 8},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 4, 5, 40},
|
|
{ 5, 4, 41},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0},
|
|
|
|
};
|
|
int refprism_3e_4eh_splitfaces[][4] =
|
|
{
|
|
{3,1,2,15},
|
|
{6,4,5,48},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_3fb_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX_2EH_0V,
|
|
HP_HEX_2EH_0V,
|
|
HP_TET_2E,
|
|
HP_TET_2E,
|
|
HP_PRISM_1E_2EH_0V,
|
|
HP_PRISM_1E_2EH_0V,
|
|
HP_NONE
|
|
};
|
|
int refprism_2fa_3fb_0v_newels[][8] =
|
|
{
|
|
{15, 7, 8, 48, 40, 41 },
|
|
|
|
};
|
|
|
|
HPRef_Struct refprism_2fa_3fb_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_3fb_0v_splitedges,
|
|
refprism_2fa_3fb_0v_splitfaces,
|
|
refprism_2fa_3fb_0v_splitelements,
|
|
refprism_2fa_3fb_0v_newelstypes,
|
|
refprism_2fa_3fb_0v_newels
|
|
};
|
|
*/
|
|
|
|
/*
|
|
// HP_PRISM_2FA_3E_0V
|
|
int refprism_3e_4_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 2, 7},
|
|
{ 2, 1, 8},
|
|
{ 2, 3, 9},
|
|
{ 3, 2, 10},
|
|
{ 3, 1, 11},
|
|
{ 1, 3, 12},
|
|
{ 1, 4, 16},
|
|
{ 2, 5, 17},
|
|
{ 3, 6, 18},
|
|
{ 4, 1, 28},
|
|
{ 5, 2, 29},
|
|
{ 6, 3, 30},
|
|
{ 4, 5, 40},
|
|
{ 5, 4, 41},
|
|
{ 5, 6, 42},
|
|
{ 6, 5, 43},
|
|
{ 6, 4, 44},
|
|
{ 4, 6, 45},
|
|
{ 0, 0, 0},
|
|
};
|
|
int refprism_2fa_3e_0v_splitfaces[][4] =
|
|
{
|
|
{1,2,3,13},
|
|
{2,3,1,14},
|
|
{3,1,2,15},
|
|
{1,2,4,19},
|
|
{2,1,5,20},
|
|
{2,3,5,21},
|
|
{3,2,6,22},
|
|
{3,1,6,23},
|
|
{1,3,4,24},
|
|
{4,1,5,31},
|
|
{5,4,2,32},
|
|
{5,6,2,33},
|
|
{6,5,3,34},
|
|
{6,4,3,35},
|
|
{4,1,6,36},
|
|
{4,5,6,46},
|
|
{5,4,6,47},
|
|
{6,4,5,48},
|
|
{0,0,0,0},
|
|
};
|
|
|
|
int refprism_2fa_3e_0v_splitelements[][5] =
|
|
{
|
|
{1,2,3,4,25},
|
|
{2,1,3,5,26},
|
|
{3,1,2,6,27},
|
|
{4,1,6,5,37},
|
|
{5,2,4,6,38},
|
|
{6,4,5,3,39},
|
|
{0,0,0,0,0},
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2fa_3e_0v_newelstypes[] =
|
|
{
|
|
HP_PRISM,
|
|
HP_HEX,
|
|
HP_HEX,
|
|
HP_HEX,
|
|
HP_PRISM,
|
|
HP_PRISM,
|
|
HP_PRISM,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM_SINGEDGE,
|
|
HP_PRISM_SINGEDGE,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_0E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
HP_PRISM_1FA_1E_0V,
|
|
|
|
HP_NONE
|
|
};
|
|
|
|
int refprism_2fa_3e_0v_newels[][8] =
|
|
{
|
|
{ 25, 26, 27, 37, 38, 39},
|
|
{ 19, 20, 26, 25, 31, 32, 38, 37},
|
|
{ 27, 26, 21, 22, 39, 38, 33, 34},
|
|
{ 23, 24, 25, 27, 35, 36, 37, 39},
|
|
{ 19, 25, 24, 31, 37, 36},
|
|
{ 26, 20, 21, 38, 32, 33},
|
|
{ 23, 27, 22, 35, 39, 34},
|
|
{ 16, 19, 24, 28, 31, 36},
|
|
{ 17, 21, 20, 29, 33, 32},
|
|
{ 18, 23, 22, 30, 35, 34},
|
|
|
|
{ 13, 14, 15, 25, 26, 27},
|
|
{ 7, 8, 14, 13, 19, 20, 26, 25},
|
|
{ 15, 14, 9, 10, 27, 26, 21, 22},
|
|
{ 12, 13, 15, 11, 24, 25, 27, 23},
|
|
{ 14, 8, 9, 26, 20, 21},
|
|
{ 11, 15, 10, 23, 27, 22},
|
|
{ 7, 13 , 12, 19, 25, 24},
|
|
{ 2, 9, 8, 17, 21, 20},
|
|
{ 3, 11, 10, 18, 23, 22},
|
|
{ 1, 7, 12, 16, 19, 24},
|
|
|
|
{ 48, 47, 46, 39, 38, 37 },
|
|
{ 48, 43, 42, 47, 39, 34, 33, 38},
|
|
{ 45, 44, 48, 46, 36, 35, 39, 37},
|
|
{ 46, 47, 41, 40, 37, 38, 32, 31},
|
|
{ 47, 42, 41, 38, 33, 32},
|
|
{ 45, 46, 40, 36, 37, 31},
|
|
{ 44, 43, 48, 35, 34, 39},
|
|
{ 6, 43, 44, 30, 34, 35},
|
|
{ 5, 41, 42, 29, 32, 33},
|
|
{ 4, 45, 40, 28, 36, 31},
|
|
};
|
|
|
|
HPRef_Struct refprism_2fa_3e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2fa_3e_0v_splitedges,
|
|
refprism_2fa_3e_0v_splitfaces,
|
|
refprism_2fa_3e_0v_splitelements,
|
|
refprism_2fa_3e_0v_newelstypes,
|
|
refprism_2fa_3e_0v_newels
|
|
};
|
|
|
|
*/
|
|
/*
|
|
|
|
// HP_PRISM_1FB_1EB_0V ... quad face 1-2-4-5
|
|
int refprism_1fb_1eb_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 3, 7 },
|
|
{ 2, 3, 8 },
|
|
{ 4, 6, 9 },
|
|
{ 5, 6, 10 },
|
|
{ 2, 1, 11 },
|
|
{ 5, 4, 12 },
|
|
{ 0, 0, 0 }
|
|
};
|
|
HPREF_ELEMENT_TYPE refprism_1fb_1eb_0v_newelstypes[] =
|
|
{
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EB_0V,
|
|
HP_PRISM,
|
|
HP_NONE,
|
|
};
|
|
int refprism_1fb_1eb_0v_newels[][8] =
|
|
{
|
|
{ 1, 4, 12, 11, 7, 9, 10, 8 },
|
|
{ 11, 2, 8, 12, 5, 10 },
|
|
{ 7, 8, 3, 9, 10, 6 }
|
|
};
|
|
HPRef_Struct refprism_1fb_1eb_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_1fb_1eb_0v_splitedges,
|
|
0, 0,
|
|
refprism_1fb_1eb_0v_newelstypes,
|
|
refprism_1fb_1eb_0v_newels
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// HP_PRISM_2F_0E_0V
|
|
int refprism_2f_0e_0v_splitedges[][3] =
|
|
{
|
|
{ 1, 3, 7 },
|
|
{ 2, 1, 8 },
|
|
{ 2, 3, 9 },
|
|
{ 3, 1, 10 },
|
|
|
|
{ 4, 6, 12 },
|
|
{ 5, 4, 13 },
|
|
{ 5, 6, 14 },
|
|
{ 6, 4, 15 },
|
|
|
|
{ 0, 0, 0 }
|
|
};
|
|
|
|
int refprism_2f_0e_0v_splitfaces[][4] =
|
|
{
|
|
{ 2, 1, 3, 11 },
|
|
{ 5, 4, 6, 16 },
|
|
{ 0, 0, 0, 0 },
|
|
};
|
|
|
|
HPREF_ELEMENT_TYPE refprism_2f_0e_0v_newelstypes[] =
|
|
{
|
|
HP_HEX_1F_0E_0V,
|
|
HP_HEX_1F_0E_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM_1FB_1EA_0V,
|
|
HP_PRISM,
|
|
HP_NONE,
|
|
};
|
|
int refprism_2f_0e_0v_newels[][8] =
|
|
{
|
|
//{ 1, 8, 11, 7, 4, 13, 16, 12 },
|
|
// { 9, 3, 10, 11, 14, 6, 15, 16 },
|
|
{ 1, 4, 13, 8, 7, 12, 16, 11 },
|
|
{ 9, 14, 6, 3, 11, 16, 15, 10 },
|
|
{ 2, 9, 11, 5, 14, 16 },
|
|
// { 8, 2, 11, 13, 5, 16 },
|
|
{ 5, 13, 16, 2, 8, 11 },
|
|
{ 7, 11, 10, 12, 16, 15 }
|
|
};
|
|
HPRef_Struct refprism_2f_0e_0v =
|
|
{
|
|
HP_PRISM,
|
|
refprism_2f_0e_0v_splitedges,
|
|
refprism_2f_0e_0v_splitfaces,
|
|
0,
|
|
refprism_2f_0e_0v_newelstypes,
|
|
refprism_2f_0e_0v_newels
|
|
};
|
|
|
|
*/
|