Path: blob/devel/ElmerGUI/netgen/libsrc/meshing/hpref_tet.hpp
3206 views
123// HP_TET4int reftet_splitedges[][3] =5{6{ 0, 0, 0 }7};8HPREF_ELEMENT_TYPE reftet_newelstypes[] =9{10HP_TET,11HP_NONE,12};13int reftet_newels[][8] =14{15{ 1, 2, 3, 4 },16};17HPRef_Struct reftet =18{19HP_TET,20reftet_splitedges,210, 0,22reftet_newelstypes,23reftet_newels24};25262728/* *********** Tet - Refinement - 0 edges *************** */2930// HP_TET_0E_1V31int reftet_0e_1v_splitedges[][3] =32{33{ 1, 2, 5 },34{ 1, 3, 6 },35{ 1, 4, 7 },36{ 0, 0, 0 }37};38HPREF_ELEMENT_TYPE reftet_0e_1v_newelstypes[] =39{40HP_TET_0E_1V,41HP_PRISM,42HP_NONE,43};44int reftet_0e_1v_newels[][8] =45{46{ 1, 5, 6, 7 },47{ 5, 6, 7, 2, 3, 4 }48};49HPRef_Struct reftet_0e_1v =50{51HP_TET,52reftet_0e_1v_splitedges,530, 0,54reftet_0e_1v_newelstypes,55reftet_0e_1v_newels56};57585960// HP_TET_0E_2V61int reftet_0e_2v_splitedges[][3] =62{63{ 1, 2, 5 },64{ 1, 3, 6 },65{ 1, 4, 7 },66{ 2, 1, 8 },67{ 2, 3, 9 },68{ 2, 4, 10 },69{ 0, 0, 0 }70};71HPREF_ELEMENT_TYPE reftet_0e_2v_newelstypes[] =72{73HP_TET_0E_1V,74HP_TET_0E_1V,75HP_PRISM,76HP_PRISM,77HP_NONE,78};79int reftet_0e_2v_newels[][8] =80{81{ 1, 5, 6, 7 },82{ 2, 10, 9, 8 },83{ 5, 6, 7, 8, 9, 10 },84{ 4, 10, 7, 3, 9, 6 },85};86HPRef_Struct reftet_0e_2v =87{88HP_TET,89reftet_0e_2v_splitedges,900, 0,91reftet_0e_2v_newelstypes,92reftet_0e_2v_newels93};949596979899// HP_TET_0E_3V100int reftet_0e_3v_splitedges[][3] =101{102{ 1, 2, 5 },103{ 1, 3, 6 },104{ 1, 4, 7 },105{ 2, 1, 8 },106{ 2, 3, 9 },107{ 2, 4, 10 },108{ 3, 1, 11 },109{ 3, 2, 12 },110{ 3, 4, 13 },111{ 0, 0, 0 }112};113int reftet_0e_3v_splitfaces[][4] =114{115{ 1, 2, 3, 14 },116{ 2, 3, 1, 15 },117{ 3, 1, 2, 16 },118{ 0, 0, 0, 0 },119};120HPREF_ELEMENT_TYPE reftet_0e_3v_newelstypes[] =121{122HP_PYRAMID_0E_1V,123HP_PYRAMID_0E_1V,124HP_PYRAMID_0E_1V,125HP_PRISM,126HP_PRISM,127HP_PRISM,128HP_PRISM,129HP_TET,130HP_NONE,131};132int reftet_0e_3v_newels[][8] =133{134{ 1, 5, 14, 6, 7 },135{ 2, 9, 15, 8, 10 },136{ 3, 11, 16, 12, 13 },137{ 5, 14, 7, 8, 15, 10 },138{ 9, 15, 10, 12, 16, 13 },139{ 6, 7, 14, 11, 13, 16 },140{ 14, 15, 16, 7, 10, 13 },141{ 7, 10, 13, 4 }142};143HPRef_Struct reftet_0e_3v =144{145HP_TET,146reftet_0e_3v_splitedges,147reftet_0e_3v_splitfaces,1480,149reftet_0e_3v_newelstypes,150reftet_0e_3v_newels151};152153154155156157// HP_TET_0E_4V158int reftet_0e_4v_splitedges[][3] =159{160{ 1, 2, 5 },161{ 1, 3, 6 },162{ 1, 4, 7 },163{ 2, 1, 8 },164{ 2, 3, 9 },165{ 2, 4, 10 },166{ 3, 1, 11 },167{ 3, 2, 12 },168{ 3, 4, 13 },169{ 4, 1, 14 },170{ 4, 2, 15 },171{ 4, 3, 16 },172{ 0, 0, 0 }173};174int reftet_0e_4v_splitfaces[][4] =175{176{ 1, 2, 3, 17 },177{ 1, 2, 4, 18 },178{ 1, 3, 4, 19 },179180{ 2, 1, 3, 20 },181{ 2, 1, 4, 21 },182{ 2, 3, 4, 22 },183184{ 3, 1, 2, 23 },185{ 3, 1, 4, 24 },186{ 3, 2, 4, 25 },187188{ 4, 1, 2, 26 },189{ 4, 1, 3, 27 },190{ 4, 2, 3, 28 },191{ 0, 0, 0, 0 },192};193int reftet_0e_4v_splitelements[][5] =194{195{ 1, 2, 3, 4, 29 },196{ 2, 3, 4, 1, 30 },197{ 3, 4, 1, 2, 31 },198{ 4, 1, 2, 3, 32 },199{ 0 },200};201HPREF_ELEMENT_TYPE reftet_0e_4v_newelstypes[] =202{203HP_HEX_0E_1V,204HP_HEX_0E_1V,205HP_HEX_0E_1V,206HP_HEX_0E_1V,207HP_PRISM, HP_PRISM,208HP_PRISM, HP_PRISM,209HP_PRISM, HP_PRISM,210HP_PRISM, HP_PRISM,211HP_PRISM, HP_PRISM,212HP_PRISM, HP_PRISM,213HP_PRISM,214HP_PRISM,215HP_PRISM,216HP_PRISM,217HP_TET,218HP_NONE,219};220int reftet_0e_4v_newels[][8] =221{222{ 1, 5, 17, 6, 7, 18, 29, 19 },223{ 2, 9, 20, 8, 10, 22, 30, 21 },224{ 3, 11, 23, 12, 13, 24, 31, 25 },225{ 4, 15, 26, 14, 16, 28, 32, 27 },226{ 5, 17, 18, 8, 20, 21 },227{ 18, 17, 29, 21, 20, 30 },228{ 6, 19, 17, 11, 24, 23 },229{ 17, 19, 29, 23, 24, 31 },230{ 7, 18, 19, 14, 26, 27 },231{ 19, 18, 29, 27, 26, 32 },232{ 9, 20, 22, 12, 23, 25 },233{ 22, 20, 30, 25, 23, 31 },234{ 10, 22, 21, 15, 28, 26 },235{ 21, 22, 30, 26, 28, 32 },236{ 13, 24, 25, 16, 27, 28 },237{ 25, 24, 31, 28, 27, 32 },238{ 17, 20, 23, 29, 30, 31 },239{ 18, 26, 21, 29, 32, 30 },240{ 19, 24, 27, 29, 31, 32 },241{ 22, 28, 25, 30, 32, 31 },242{ 29, 30, 31, 32 },243};244HPRef_Struct reftet_0e_4v =245{246HP_TET,247reftet_0e_4v_splitedges,248reftet_0e_4v_splitfaces,249reftet_0e_4v_splitelements,250reftet_0e_4v_newelstypes,251reftet_0e_4v_newels252};253254255256257258259260261262263264265266267268269270/* *********** Tet - Refinement - 1 edge *************** */271272273274// HP_TET_1E_0V275int reftet_1e_0v_splitedges[][3] =276{277{ 1, 3, 5 },278{ 1, 4, 6 },279{ 2, 3, 7 },280{ 2, 4, 8 },281{ 0, 0, 0 }282};283HPREF_ELEMENT_TYPE reftet_1e_0v_newelstypes[] =284{285HP_PRISM_SINGEDGE,286HP_PRISM,287HP_NONE,288};289int reftet_1e_0v_newels[][8] =290{291{ 1, 5, 6, 2, 7, 8 },292{ 7, 3, 5, 8, 4, 6 }293};294HPRef_Struct reftet_1e_0v =295{296HP_TET,297reftet_1e_0v_splitedges,2980, 0,299reftet_1e_0v_newelstypes,300reftet_1e_0v_newels301};302303304305306307// HP_TET_1E_1VA308int reftet_1e_1va_splitedges[][3] =309{310{ 1, 3, 5 },311{ 1, 4, 6 },312{ 2, 3, 7 },313{ 2, 4, 8 },314{ 1, 2, 9 },315{ 0, 0, 0 }316};317HPREF_ELEMENT_TYPE reftet_1e_1va_newelstypes[] =318{319HP_TET_1E_1VA,320HP_PRISM_SINGEDGE,321HP_PRISM,322HP_NONE,323};324int reftet_1e_1va_newels[][8] =325{326{ 1, 9, 5, 6 },327{ 9, 5, 6, 2, 7, 8 },328{ 7, 3, 5, 8, 4, 6 }329};330HPRef_Struct reftet_1e_1va =331{332HP_TET,333reftet_1e_1va_splitedges,3340, 0,335reftet_1e_1va_newelstypes,336reftet_1e_1va_newels337};338339340341342343344// HP_TET_1E_1VB345int reftet_1e_1vb_splitedges[][3] =346{347{ 1, 3, 5 },348{ 1, 4, 6 },349{ 2, 3, 7 },350{ 2, 4, 8 },351{ 4, 1, 9 },352{ 4, 2, 10 },353{ 4, 3, 11 },354{ 0, 0, 0 }355};356int reftet_1e_1vb_splitelements[][5] =357{358{ 4, 1, 2, 3, 12 },359{ 0 }360};361362HPREF_ELEMENT_TYPE reftet_1e_1vb_newelstypes[] =363{364HP_PRISM_SINGEDGE,365HP_TET_0E_1V,366HP_PYRAMID,367HP_TET,368HP_PYRAMID,369HP_TET,370HP_PYRAMID,371HP_TET,372HP_PYRAMID,373HP_TET,374HP_NONE,375};376int reftet_1e_1vb_newels[][8] =377{378{ 1, 5, 6, 2, 7, 8 },379{ 4, 11, 10, 9 },380{ 7, 8, 10, 11, 12 },381{ 3, 7, 11, 12 },382{ 5, 11, 9, 6, 12 },383{ 5, 3, 11, 12 },384{ 6, 9, 10, 8, 12 },385{ 5, 7, 3, 12 },386{ 5, 6, 8, 7, 12 },387{ 9, 11, 10, 12 }388};389HPRef_Struct reftet_1e_1vb =390{391HP_TET,392reftet_1e_1vb_splitedges,3930,394reftet_1e_1vb_splitelements,395reftet_1e_1vb_newelstypes,396reftet_1e_1vb_newels397};398399400401402403404405406// HP_TET_1E_2VA407int reftet_1e_2va_splitedges[][3] =408{409{ 1, 2, 5 },410{ 1, 3, 6 },411{ 1, 4, 7 },412{ 2, 1, 8 },413{ 2, 3, 9 },414{ 2, 4, 10 },415{ 0, 0, 0 }416};417HPREF_ELEMENT_TYPE reftet_1e_2va_newelstypes[] =418{419HP_TET_1E_1VA,420HP_TET_1E_1VA,421HP_PRISM_SINGEDGE,422HP_PRISM,423HP_NONE,424};425int reftet_1e_2va_newels[][8] =426{427{ 1, 5, 6, 7 },428{ 2, 8, 10, 9 },429{ 5, 6, 7, 8, 9, 10 },430{ 4, 10, 7, 3, 9, 6 },431};432HPRef_Struct reftet_1e_2va =433{434HP_TET,435reftet_1e_2va_splitedges,4360, 0,437reftet_1e_2va_newelstypes,438reftet_1e_2va_newels439};440441442443444445446447// HP_TET_1E_2VB448int reftet_1e_2vb_splitedges[][3] =449{450{ 1, 2, 5 },451{ 1, 3, 6 },452{ 1, 4, 7 },453{ 2, 3, 8 },454{ 2, 4, 9 },455{ 3, 1, 10 },456{ 3, 2, 11 },457{ 3, 4, 12 },458{ 0, 0, 0 }459};460int reftet_1e_2vb_splitelements[][5] =461{462{ 3, 4, 1, 2, 13 },463{ 0 }464};465466HPREF_ELEMENT_TYPE reftet_1e_2vb_newelstypes[] =467{468HP_TET_1E_1VA,469HP_PRISM_SINGEDGE,470HP_TET_0E_1V,471HP_PYRAMID,472HP_TET,473HP_PYRAMID,474HP_TET,475HP_PYRAMID,476HP_TET,477HP_PYRAMID,478HP_TET,479HP_NONE,480};481int reftet_1e_2vb_newels[][8] =482{483{ 1, 5, 6, 7 },484{ 5, 6, 7, 2, 8, 9 },485{ 3, 10, 11, 12 },486487{ 8, 9, 12, 11, 13 },488{ 4, 12, 9, 13 },489{ 6, 10, 12, 7, 13 },490{ 4, 7, 12, 13 },491{ 6, 8, 11, 10, 13 },492{ 4, 9, 7, 13 },493{ 6, 7, 9, 8, 13 },494{ 10, 11, 12, 13 },495};496HPRef_Struct reftet_1e_2vb =497{498HP_TET,499reftet_1e_2vb_splitedges,5000,501reftet_1e_2vb_splitelements,502reftet_1e_2vb_newelstypes,503reftet_1e_2vb_newels504};505506507508509510511// HP_TET_1E_2VC512int reftet_1e_2vc_splitedges[][3] =513{514{ 1, 2, 5 },515{ 1, 3, 6 },516{ 1, 4, 7 },517{ 2, 3, 8 },518{ 2, 4, 9 },519{ 4, 1, 10 },520{ 4, 2, 11 },521{ 4, 3, 12 },522{ 0, 0, 0 }523};524int reftet_1e_2vc_splitelements[][5] =525{526{ 4, 1, 2, 3, 13 },527{ 0 }528};529530HPREF_ELEMENT_TYPE reftet_1e_2vc_newelstypes[] =531{532HP_TET_1E_1VA,533HP_PRISM_SINGEDGE,534HP_TET_0E_1V,535HP_PYRAMID,536HP_TET,537HP_PYRAMID,538HP_TET,539HP_PYRAMID,540HP_TET,541HP_PYRAMID,542HP_TET,543HP_NONE,544};545int reftet_1e_2vc_newels[][8] =546{547{ 1, 5, 6, 7 },548{ 5, 6, 7, 2, 8, 9 },549{ 4, 11, 10, 12 },550{ 8, 9, 11, 12, 13 },551{ 3, 8, 12, 13 },552{ 7, 6, 12, 10, 13 },553{ 3, 12, 6, 13 },554{ 9, 7, 10, 11, 13 },555{ 3, 6, 8, 13 },556{ 6, 7, 9, 8, 13 },557{ 10, 12, 11, 13 }558};559HPRef_Struct reftet_1e_2vc =560{561HP_TET,562reftet_1e_2vc_splitedges,5630,564reftet_1e_2vc_splitelements,565reftet_1e_2vc_newelstypes,566reftet_1e_2vc_newels567};568569570571572573574575576/*577578// HP_TET_1E_2VD579int reftet_1e_2vd_splitedges[][3] =580{581{ 1, 3, 5 },582{ 1, 4, 6 },583{ 2, 3, 7 },584{ 2, 4, 8 },585{ 3, 1, 9 },586{ 3, 2, 10 },587{ 3, 4, 11 },588{ 4, 1, 12 },589{ 4, 2, 13 },590{ 4, 3, 14 },591{ 0, 0, 0 }592};593HPREF_ELEMENT_TYPE reftet_1e_2vd_newelstypes[] =594{595HP_PRISM_SINGEDGE,596HP_TET_0E_1V,597HP_TET_0E_1V,598HP_PRISM,599HP_HEX,600HP_NONE,601};602int reftet_1e_2vd_newels[][8] =603{604{ 1, 5, 6, 2, 7, 8 },605{ 4, 13, 12, 14 },606{ 3, 10, 11, 9 },607{ 14, 13, 12, 11, 10, 9 },608{ 6, 12, 13, 8, 5, 9, 10, 7 },609};610HPRef_Struct reftet_1e_2vd =611{612HP_TET,613reftet_1e_2vd_splitedges,6140, 0,615reftet_1e_2vd_newelstypes,616reftet_1e_2vd_newels617};618619*/620621622623624// HP_TET_1E_2VD, // 1 v on edge625int reftet_1e_2vd_splitedges[][3] =626{627// { 1, 2, 5 },628{ 1, 3, 6 },629{ 1, 4, 7 },630// { 2, 1, 8 },631{ 2, 3, 9 },632{ 2, 4, 10 },633{ 3, 1, 11 },634{ 3, 2, 12 },635{ 3, 4, 13 },636{ 4, 1, 14 },637{ 4, 2, 15 },638{ 4, 3, 16 },639{ 0, 0, 0 }640};641int reftet_1e_2vd_splitfaces[][4] =642{643{ 1, 3, 4, 19 },644{ 2, 3, 4, 22 },645{ 3, 1, 4, 24 },646{ 3, 2, 4, 25 },647{ 4, 1, 3, 27 },648{ 4, 2, 3, 28 },649{ 0, 0, 0, 0 }650};651HPREF_ELEMENT_TYPE reftet_1e_2vd_newelstypes[] =652{653HP_PRISM_SINGEDGE,654HP_TET_0E_1V,655HP_TET_0E_1V,656HP_PRISM,657HP_HEX,658HP_PYRAMID,659HP_HEX,660HP_PYRAMID,661HP_PRISM,662HP_PRISM,663HP_NONE,664};665int reftet_1e_2vd_newels[][8] =666{667{ 1, 6, 7, 2, 9, 10 },668{ 3, 11, 12, 13 },669{ 4, 16, 15, 14 },670{ 7, 6, 19, 10, 9, 22 },671{ 7, 19, 27, 14, 10, 22, 28, 15 },672{ 14, 15, 28, 27, 16 },673{ 9, 6, 19, 22, 12, 11, 24, 25 },674{ 12, 11, 24, 25, 13 },675{ 19, 24, 27, 22, 25, 28 },676{ 16, 28, 27, 13, 25, 24 }677};678HPRef_Struct reftet_1e_2vd =679{680HP_TET,681reftet_1e_2vd_splitedges,682reftet_1e_2vd_splitfaces,6830,684reftet_1e_2vd_newelstypes,685reftet_1e_2vd_newels686};687688689690691692693694695696697698699700701702// HP_TET_1E_3VA703int reftet_1e_3va_splitedges[][3] =704{705{ 1, 2, 5 },706{ 1, 3, 6 },707{ 1, 4, 7 },708{ 2, 1, 8 },709{ 2, 3, 9 },710{ 2, 4, 10 },711{ 3, 1, 11 },712{ 3, 2, 12 },713{ 3, 4, 13 },714{ 0, 0, 0 }715};716int reftet_1e_3va_splitelements[][5] =717{718{ 1, 2, 3, 4, 14 },719{ 0 }720};721722HPREF_ELEMENT_TYPE reftet_1e_3va_newelstypes[] =723{724HP_PRISM_SINGEDGE,725HP_TET_1E_1VA,726HP_TET_1E_1VA,727HP_TET_0E_1V,728729HP_PYRAMID,730HP_TET,731HP_PYRAMID,732HP_TET,733HP_PYRAMID,734HP_TET,735HP_PYRAMID,736HP_TET,737HP_NONE,738};739int reftet_1e_3va_newels[][8] =740{741{ 5, 6, 7, 8, 9, 10 },742{ 1, 5, 6, 7 },743{ 2, 8, 10, 9 },744{ 3, 11, 12, 13 },745746{ 6, 7, 10, 9, 14 },747{ 4, 10, 7, 14 },748{ 9, 10, 13, 12, 14 },749{ 4, 13, 10, 14 },750{ 6, 11, 13, 7, 14 },751{ 4, 7, 13, 14 },752{ 6, 11, 12, 9, 14 },753{ 11, 13, 12, 14 },754};755756HPRef_Struct reftet_1e_3va =757{758HP_TET,759reftet_1e_3va_splitedges,7600,761reftet_1e_3va_splitelements,762reftet_1e_3va_newelstypes,763reftet_1e_3va_newels764};765766767768769770771772773774775776777778779780781782783784785786787// HP_TET_1E_3VB, // 1 v on edge788int reftet_1e_3vb_splitedges[][3] =789{790{ 1, 2, 5 },791{ 1, 3, 6 },792{ 1, 4, 7 },793// { 2, 1, 8 },794{ 2, 3, 9 },795{ 2, 4, 10 },796{ 3, 1, 11 },797{ 3, 2, 12 },798{ 3, 4, 13 },799{ 4, 1, 14 },800{ 4, 2, 15 },801{ 4, 3, 16 },802{ 0, 0, 0 }803};804int reftet_1e_3vb_splitfaces[][4] =805{806{ 1, 3, 4, 19 },807{ 2, 3, 4, 22 },808{ 3, 1, 4, 24 },809{ 3, 2, 4, 25 },810{ 4, 1, 3, 27 },811{ 4, 2, 3, 28 },812{ 0, 0, 0, 0 }813};814HPREF_ELEMENT_TYPE reftet_1e_3vb_newelstypes[] =815{816HP_TET_1E_1VA,817HP_PRISM_SINGEDGE,818HP_TET_0E_1V,819HP_TET_0E_1V,820HP_PRISM,821HP_HEX,822HP_PYRAMID,823HP_HEX,824HP_PYRAMID,825HP_PRISM,826HP_PRISM,827HP_NONE,828};829int reftet_1e_3vb_newels[][8] =830{831{ 1, 5, 6, 7 },832{ 5, 6, 7, 2, 9, 10 },833{ 3, 11, 12, 13 },834{ 4, 16, 15, 14 },835{ 7, 6, 19, 10, 9, 22 },836{ 7, 19, 27, 14, 10, 22, 28, 15 },837{ 14, 15, 28, 27, 16 },838{ 9, 6, 19, 22, 12, 11, 24, 25 },839{ 12, 11, 24, 25, 13 },840{ 19, 24, 27, 22, 25, 28 },841{ 16, 28, 27, 13, 25, 24 }842};843HPRef_Struct reftet_1e_3vb =844{845HP_TET,846reftet_1e_3vb_splitedges,847reftet_1e_3vb_splitfaces,8480,849reftet_1e_3vb_newelstypes,850reftet_1e_3vb_newels851};852853854855856857858/*859// HP_TET_1E_4V860int reftet_1e_4v_splitedges[][3] =861{862{ 1, 2, 5 },863{ 1, 3, 6 },864{ 1, 4, 7 },865{ 2, 1, 8 },866{ 2, 3, 9 },867{ 2, 4, 10 },868{ 3, 1, 11 },869{ 3, 2, 12 },870{ 3, 4, 13 },871{ 4, 1, 14 },872{ 4, 2, 15 },873{ 4, 3, 16 },874{ 0, 0, 0 }875};876int reftet_1e_4v_splitfaces[][4] =877{878{ 1, 2, 3, 17 },879{ 1, 2, 4, 18 },880{ 1, 3, 4, 19 },881882{ 2, 1, 3, 20 },883{ 2, 1, 4, 21 },884{ 2, 3, 4, 22 },885886{ 3, 1, 2, 23 },887{ 3, 1, 4, 24 },888{ 3, 2, 4, 25 },889890{ 4, 1, 2, 26 },891{ 4, 1, 3, 27 },892{ 4, 2, 3, 28 },893{ 0, 0, 0, 0 },894};895int reftet_1e_4v_splitelements[][5] =896{897{ 1, 2, 3, 4, 29 },898{ 2, 3, 4, 1, 30 },899{ 3, 4, 1, 2, 31 },900{ 4, 1, 2, 3, 32 },901{ 0 },902};903HPREF_ELEMENT_TYPE reftet_1e_4v_newelstypes[] =904{905HP_HEX_1E_1V,906HP_HEX_1E_1V,907HP_HEX_0E_1V,908HP_HEX_0E_1V,909HP_PRISM_SINGEDGE, HP_PRISM,910HP_PRISM, HP_PRISM,911HP_PRISM, HP_PRISM,912HP_PRISM, HP_PRISM,913HP_PRISM, HP_PRISM,914HP_PRISM, HP_PRISM,915HP_PRISM,916HP_PRISM,917HP_PRISM,918HP_PRISM,919HP_TET,920HP_NONE,921};922int reftet_1e_4v_newels[][8] =923{924{ 1, 5, 17, 6, 7, 18, 29, 19 },925// { 2, 9, 20, 8, 10, 22, 30, 21 },926{ 2, 8, 21, 10, 9, 20, 30, 22 },927{ 3, 11, 23, 12, 13, 24, 31, 25 },928{ 4, 15, 26, 14, 16, 28, 32, 27 },929{ 5, 17, 18, 8, 20, 21 },930{ 18, 17, 29, 21, 20, 30 },931{ 6, 19, 17, 11, 24, 23 },932{ 17, 19, 29, 23, 24, 31 },933{ 7, 18, 19, 14, 26, 27 },934{ 19, 18, 29, 27, 26, 32 },935{ 9, 20, 22, 12, 23, 25 },936{ 22, 20, 30, 25, 23, 31 },937{ 10, 22, 21, 15, 28, 26 },938{ 21, 22, 30, 26, 28, 32 },939{ 13, 24, 25, 16, 27, 28 },940{ 25, 24, 31, 28, 27, 32 },941{ 17, 20, 23, 29, 30, 31 },942{ 18, 26, 21, 29, 32, 30 },943{ 19, 24, 27, 29, 31, 32 },944{ 22, 28, 25, 30, 32, 31 },945946{ 29, 30, 31, 32 },947};948HPRef_Struct reftet_1e_4v =949{950HP_TET,951reftet_1e_4v_splitedges,952reftet_1e_4v_splitfaces,953reftet_1e_4v_splitelements,954reftet_1e_4v_newelstypes,955reftet_1e_4v_newels956};957*/958959960961962// HP_TET_1E_4V963int reftet_1e_4v_splitedges[][3] =964{965{ 1, 2, 5 },966{ 1, 3, 6 },967{ 1, 4, 7 },968{ 2, 1, 8 },969{ 2, 3, 9 },970{ 2, 4, 10 },971{ 3, 1, 11 },972{ 3, 2, 12 },973{ 3, 4, 13 },974{ 4, 1, 14 },975{ 4, 2, 15 },976{ 4, 3, 16 },977{ 0, 0, 0 }978};979int reftet_1e_4v_splitfaces[][4] =980{981{ 1, 3, 4, 17 },982{ 2, 3, 4, 18 },983984{ 3, 1, 4, 19 },985{ 3, 2, 4, 20 },986987{ 4, 1, 3, 21 },988{ 4, 2, 3, 22 },989{ 0, 0, 0, 0 },990};991992HPREF_ELEMENT_TYPE reftet_1e_4v_newelstypes[] =993{994HP_TET_1E_1VA,995HP_TET_1E_1VA,996// HP_TET_1E_1VA,997// HP_TET_1E_1VA,998HP_PRISM_SINGEDGE,999HP_PRISM,1000HP_HEX,1001HP_HEX,1002HP_PRISM,1003HP_PRISM,10041005HP_PYRAMID,1006HP_TET_0E_1V,10071008HP_PYRAMID,1009HP_TET_0E_1V,10101011HP_NONE,1012};10131014int reftet_1e_4v_newels[][8] =1015{1016{ 1, 5, 6, 7 },1017{ 2, 8, 10, 9 },10181019{ 5, 6, 7, 8, 9, 10 },1020{ 7, 6, 17, 10, 9, 18 },10211022{ 7, 10, 18, 17, 14, 15, 22, 21 },1023{ 9, 6, 17, 18, 12, 11, 19, 20 },10241025{ 17, 19, 21, 18, 20, 22 },1026{ 16, 22, 21, 13, 20, 19 },10271028{ 14, 15, 22, 21, 16 },1029{ 4, 14, 16, 15 },1030{ 12, 11, 19, 20, 13 },1031{ 3, 11, 12, 13 },1032103310341035{ 1, 5, 17, 6, 7, 18, 29, 19 },1036// { 2, 9, 20, 8, 10, 22, 30, 21 },1037{ 2, 8, 21, 10, 9, 20, 30, 22 },1038{ 3, 11, 23, 12, 13, 24, 31, 25 },1039{ 4, 15, 26, 14, 16, 28, 32, 27 },1040{ 5, 17, 18, 8, 20, 21 },1041{ 18, 17, 29, 21, 20, 30 },1042{ 6, 19, 17, 11, 24, 23 },1043{ 17, 19, 29, 23, 24, 31 },1044{ 7, 18, 19, 14, 26, 27 },1045{ 19, 18, 29, 27, 26, 32 },1046{ 9, 20, 22, 12, 23, 25 },1047{ 22, 20, 30, 25, 23, 31 },1048{ 10, 22, 21, 15, 28, 26 },1049{ 21, 22, 30, 26, 28, 32 },1050{ 13, 24, 25, 16, 27, 28 },1051{ 25, 24, 31, 28, 27, 32 },1052{ 17, 20, 23, 29, 30, 31 },1053{ 18, 26, 21, 29, 32, 30 },1054{ 19, 24, 27, 29, 31, 32 },1055{ 22, 28, 25, 30, 32, 31 },10561057{ 29, 30, 31, 32 },1058};1059HPRef_Struct reftet_1e_4v =1060{1061HP_TET,1062reftet_1e_4v_splitedges,1063reftet_1e_4v_splitfaces,10640,1065reftet_1e_4v_newelstypes,1066reftet_1e_4v_newels1067};10681069107010711072107310741075107610771078107910801081// HP_TET_2EA_0V, // 2 edges connected1082int reftet_2ea_0v_splitedges[][3] =1083{1084{ 1, 2, 5 },1085{ 1, 3, 6 },1086{ 1, 4, 7 },1087{ 2, 3, 9 },1088{ 2, 4, 10 },1089{ 3, 2, 12 },1090{ 3, 4, 13 },1091{ 0, 0, 0 }1092};1093int reftet_2ea_0v_splitfaces[][4] =1094{1095{ 1, 2, 3, 17 },1096{ 0, 0, 0, 0 }1097};1098HPREF_ELEMENT_TYPE reftet_2ea_0v_newelstypes[] =1099{1100HP_PYRAMID_EDGES,1101HP_PRISM_SINGEDGE,1102HP_PRISM_SINGEDGE,1103HP_PRISM,1104HP_TET,1105HP_NONE,1106};1107int reftet_2ea_0v_newels[][8] =1108{1109{ 1, 5, 17, 6, 7 },1110{ 5, 17, 7, 2, 9, 10 },1111{ 6, 7, 17, 3, 13, 12 },1112{ 17, 9, 12, 7, 10, 13 },1113{ 7, 10, 13, 4 },1114};1115HPRef_Struct reftet_2ea_0v =1116{1117HP_TET,1118reftet_2ea_0v_splitedges,1119reftet_2ea_0v_splitfaces,11200,1121reftet_2ea_0v_newelstypes,1122reftet_2ea_0v_newels1123};1124112511261127112811291130// HP_TET_2EA_1VA, // 2 edges connected1131int reftet_2ea_1va_splitedges[][3] =1132{1133{ 1, 2, 5 },1134{ 1, 3, 6 },1135{ 1, 4, 7 },1136{ 2, 1, 8 },1137{ 2, 3, 9 },1138{ 2, 4, 10 },1139{ 3, 2, 12 },1140{ 3, 4, 13 },1141{ 0, 0, 0 }1142};1143int reftet_2ea_1va_splitfaces[][4] =1144{1145{ 1, 2, 3, 17 },1146{ 0, 0, 0, 0 }1147};1148HPREF_ELEMENT_TYPE reftet_2ea_1va_newelstypes[] =1149{1150HP_PYRAMID_EDGES,1151HP_PRISM_SINGEDGE,1152HP_TET_1E_1VA,1153HP_PRISM_SINGEDGE,1154HP_PRISM,1155HP_TET,1156HP_NONE,1157};1158int reftet_2ea_1va_newels[][8] =1159{1160{ 1, 5, 17, 6, 7 },1161{ 5, 17, 7, 8, 9, 10 },1162{ 2, 8, 10, 9 },1163{ 6, 7, 17, 3, 13, 12 },1164{ 17, 9, 12, 7, 10, 13 },1165{ 7, 10, 13, 4 },1166};1167HPRef_Struct reftet_2ea_1va =1168{1169HP_TET,1170reftet_2ea_1va_splitedges,1171reftet_2ea_1va_splitfaces,11720,1173reftet_2ea_1va_newelstypes,1174reftet_2ea_1va_newels1175};117611771178117911801181118211831184// HP_TET_2EA_1VB,1185int reftet_2ea_1vb_splitedges[][3] =1186{1187{ 1, 2, 5 },1188{ 1, 3, 6 },1189{ 1, 4, 7 },1190{ 2, 3, 9 },1191{ 2, 4, 10 },1192{ 3, 1, 11 },1193{ 3, 2, 12 },1194{ 3, 4, 13 },1195{ 0, 0, 0 }1196};1197int reftet_2ea_1vb_splitfaces[][4] =1198{1199{ 1, 2, 3, 17 },1200{ 0, 0, 0, 0 }1201};1202HPREF_ELEMENT_TYPE reftet_2ea_1vb_newelstypes[] =1203{1204HP_PYRAMID_EDGES,1205HP_TET_1E_1VA,1206HP_PRISM_SINGEDGE,1207HP_PRISM_SINGEDGE,1208HP_PRISM,1209HP_TET,1210HP_NONE,1211};1212int reftet_2ea_1vb_newels[][8] =1213{1214{ 1, 5, 17, 6, 7 },1215{ 3, 11, 12, 13 },1216{ 5, 17, 7, 2, 9, 10 },1217{ 6, 7, 17, 11, 13, 12 },1218{ 17, 9, 12, 7, 10, 13 },1219{ 7, 10, 13, 4 },1220};1221HPRef_Struct reftet_2ea_1vb =1222{1223HP_TET,1224reftet_2ea_1vb_splitedges,1225reftet_2ea_1vb_splitfaces,12260,1227reftet_2ea_1vb_newelstypes,1228reftet_2ea_1vb_newels1229};1230123112321233123412351236// HP_TET_2EA_1VC, // 2 edges connected1237int reftet_2ea_1vc_splitedges[][3] =1238{1239{ 1, 2, 5 },1240{ 1, 3, 6 },1241{ 1, 4, 7 },1242// { 2, 1, 8 },1243{ 2, 3, 9 },1244{ 2, 4, 10 },1245{ 3, 1, 11 },1246{ 3, 2, 12 },1247{ 3, 4, 13 },1248{ 4, 1, 14 },1249{ 4, 2, 15 },1250{ 4, 3, 16 },1251{ 0, 0, 0 }1252};1253int reftet_2ea_1vc_splitfaces[][4] =1254{1255{ 1, 2, 3, 17 },1256{ 2, 3, 4, 18 },1257{ 3, 4, 2, 19 },1258{ 4, 2, 3, 20 },1259{ 0, 0, 0, 0 }1260};1261int reftet_2ea_1vc_splitelements[][5] =1262{1263{ 1, 2, 3, 4, 21 },1264{ 0, 0, 0, 0 }1265};1266HPREF_ELEMENT_TYPE reftet_2ea_1vc_newelstypes[] =1267{1268HP_PYRAMID_EDGES,1269// HP_TET_1E_1VA,1270HP_TET_0E_1V,1271HP_PRISM_SINGEDGE,1272HP_PRISM_SINGEDGE,12731274HP_TET, HP_TET, HP_TET, HP_TET,1275HP_PYRAMID, HP_PYRAMID, HP_PYRAMID,1276HP_PYRAMID, HP_PYRAMID, HP_TET,1277HP_PYRAMID, HP_PYRAMID, HP_TET,1278// HP_PRISM,1279// HP_PRISM,1280HP_NONE,1281};1282int reftet_2ea_1vc_newels[][8] =1283{1284{ 1, 5, 17, 6, 7 },1285// { 3, 11, 12, 13 },1286{ 4, 15, 14, 16 },1287{ 5, 17, 7, 2, 9, 10 },1288{ 6, 7, 17, 3, 13, 12 },12891290{ 9, 10, 18, 21 },1291{ 13, 12, 19, 21 },1292{ 15, 16, 20, 21 },1293{ 18, 20, 19, 21 },1294{ 10, 15, 20, 18, 21 },1295{ 13, 19, 20, 16, 21 },1296{ 9, 18, 19, 12, 21 },12971298{ 7, 13, 16, 14, 21 },1299{ 7, 14, 15, 10, 21 },1300{ 9, 12, 17, 21 },1301{ 7, 10, 9, 17, 21 },1302{ 7, 17, 12, 13, 21 },1303{ 14, 16, 15, 21 },1304// { 17, 9, 12, 7, 10, 13 },1305// { 7, 10, 13, 14, 15, 16 },1306};1307HPRef_Struct reftet_2ea_1vc =1308{1309HP_TET,1310reftet_2ea_1vc_splitedges,1311reftet_2ea_1vc_splitfaces,1312reftet_2ea_1vc_splitelements,1313reftet_2ea_1vc_newelstypes,1314reftet_2ea_1vc_newels1315};1316131713181319132013211322132313241325132613271328// HP_TET_2EA_2VA,1329int reftet_2ea_2va_splitedges[][3] =1330{1331{ 1, 2, 5 },1332{ 1, 3, 6 },1333{ 1, 4, 7 },1334{ 2, 1, 8 },1335{ 2, 3, 9 },1336{ 2, 4, 10 },1337{ 3, 1, 11 },1338{ 3, 2, 12 },1339{ 3, 4, 13 },1340{ 0, 0, 0 }1341};1342int reftet_2ea_2va_splitfaces[][4] =1343{1344{ 1, 2, 3, 17 },1345{ 0, 0, 0, 0 }1346};1347HPREF_ELEMENT_TYPE reftet_2ea_2va_newelstypes[] =1348{1349HP_PYRAMID_EDGES,1350HP_TET_1E_1VA,1351HP_TET_1E_1VA,1352HP_PRISM_SINGEDGE,1353HP_PRISM_SINGEDGE,1354HP_PRISM,1355HP_TET,1356HP_NONE,1357};1358int reftet_2ea_2va_newels[][8] =1359{1360{ 1, 5, 17, 6, 7 },1361{ 3, 11, 12, 13 },1362{ 2, 8, 10, 9 },1363{ 5, 17, 7, 8, 9, 10 },1364{ 6, 7, 17, 11, 13, 12 },1365{ 17, 9, 12, 7, 10, 13 },1366{ 7, 10, 13, 4 },1367};1368HPRef_Struct reftet_2ea_2va =1369{1370HP_TET,1371reftet_2ea_2va_splitedges,1372reftet_2ea_2va_splitfaces,13730,1374reftet_2ea_2va_newelstypes,1375reftet_2ea_2va_newels1376};137713781379138013811382138313841385138613871388// HP_TET_2EA_2VB, // 2 edges connected1389int reftet_2ea_2vb_splitedges[][3] =1390{1391{ 1, 2, 5 },1392{ 1, 3, 6 },1393{ 1, 4, 7 },1394{ 2, 1, 8 },1395{ 2, 3, 9 },1396{ 2, 4, 10 },1397// { 3, 1, 11 },1398{ 3, 2, 12 },1399{ 3, 4, 13 },1400{ 4, 1, 14 },1401{ 4, 2, 15 },1402{ 4, 3, 16 },1403{ 0, 0, 0 }1404};1405int reftet_2ea_2vb_splitfaces[][4] =1406{1407{ 1, 2, 3, 17 },1408{ 2, 3, 4, 18 },1409{ 3, 4, 2, 19 },1410{ 4, 2, 3, 20 },1411{ 0, 0, 0, 0 }1412};1413int reftet_2ea_2vb_splitelements[][5] =1414{1415{ 1, 2, 3, 4, 21 },1416{ 0, 0, 0, 0 }1417};1418HPREF_ELEMENT_TYPE reftet_2ea_2vb_newelstypes[] =1419{1420HP_PYRAMID_EDGES,1421HP_TET_1E_1VA,1422// HP_TET_1E_1VA,1423HP_TET_0E_1V,1424HP_PRISM_SINGEDGE,1425HP_PRISM_SINGEDGE,14261427HP_TET, HP_TET, HP_TET, HP_TET,1428HP_PYRAMID, HP_PYRAMID, HP_PYRAMID,1429HP_PYRAMID, HP_PYRAMID, HP_TET,1430HP_PYRAMID, HP_PYRAMID, HP_TET,1431// HP_PRISM,1432// HP_PRISM,1433HP_NONE,1434};1435int reftet_2ea_2vb_newels[][8] =1436{1437{ 1, 5, 17, 6, 7 },1438{ 2, 8, 10, 9 },1439// { 3, 11, 12, 13 },1440{ 4, 15, 14, 16 },1441{ 5, 17, 7, 8, 9, 10 },1442{ 6, 7, 17, 3, 13, 12 },14431444{ 9, 10, 18, 21 },1445{ 13, 12, 19, 21 },1446{ 15, 16, 20, 21 },1447{ 18, 20, 19, 21 },1448{ 10, 15, 20, 18, 21 },1449{ 13, 19, 20, 16, 21 },1450{ 9, 18, 19, 12, 21 },14511452{ 7, 13, 16, 14, 21 },1453{ 7, 14, 15, 10, 21 },1454{ 9, 12, 17, 21 },1455{ 7, 10, 9, 17, 21 },1456{ 7, 17, 12, 13, 21 },1457{ 14, 16, 15, 21 },1458// { 17, 9, 12, 7, 10, 13 },1459// { 7, 10, 13, 14, 15, 16 },1460};1461HPRef_Struct reftet_2ea_2vb =1462{1463HP_TET,1464reftet_2ea_2vb_splitedges,1465reftet_2ea_2vb_splitfaces,1466reftet_2ea_2vb_splitelements,1467reftet_2ea_2vb_newelstypes,1468reftet_2ea_2vb_newels1469};14701471147214731474147514761477147814791480// HP_TET_2EA_2VC, // 2 edges connected1481int reftet_2ea_2vc_splitedges[][3] =1482{1483{ 1, 2, 5 },1484{ 1, 3, 6 },1485{ 1, 4, 7 },1486// { 2, 1, 8 },1487{ 2, 3, 9 },1488{ 2, 4, 10 },1489{ 3, 1, 11 },1490{ 3, 2, 12 },1491{ 3, 4, 13 },1492{ 4, 1, 14 },1493{ 4, 2, 15 },1494{ 4, 3, 16 },1495{ 0, 0, 0 }1496};1497int reftet_2ea_2vc_splitfaces[][4] =1498{1499{ 1, 2, 3, 17 },1500{ 2, 3, 4, 18 },1501{ 3, 4, 2, 19 },1502{ 4, 2, 3, 20 },1503{ 0, 0, 0, 0 }1504};1505int reftet_2ea_2vc_splitelements[][5] =1506{1507{ 1, 2, 3, 4, 21 },1508{ 0, 0, 0, 0 }1509};1510HPREF_ELEMENT_TYPE reftet_2ea_2vc_newelstypes[] =1511{1512HP_PYRAMID_EDGES,1513HP_TET_1E_1VA,1514// HP_TET_1E_1VA,1515HP_TET_0E_1V,1516HP_PRISM_SINGEDGE,1517HP_PRISM_SINGEDGE,15181519HP_TET, HP_TET, HP_TET, HP_TET,1520HP_PYRAMID, HP_PYRAMID, HP_PYRAMID,1521HP_PYRAMID, HP_PYRAMID, HP_TET,1522HP_PYRAMID, HP_PYRAMID, HP_TET,1523// HP_PRISM,1524// HP_PRISM,1525HP_NONE,1526};1527int reftet_2ea_2vc_newels[][8] =1528{1529{ 1, 5, 17, 6, 7 },1530// { 2, 8, 10, 9 },1531{ 3, 11, 12, 13 },1532{ 4, 15, 14, 16 },1533{ 5, 17, 7, 2, 9, 10 },1534{ 6, 7, 17, 11, 13, 12 },15351536{ 9, 10, 18, 21 },1537{ 13, 12, 19, 21 },1538{ 15, 16, 20, 21 },1539{ 18, 20, 19, 21 },1540{ 10, 15, 20, 18, 21 },1541{ 13, 19, 20, 16, 21 },1542{ 9, 18, 19, 12, 21 },15431544{ 7, 13, 16, 14, 21 },1545{ 7, 14, 15, 10, 21 },1546{ 9, 12, 17, 21 },1547{ 7, 10, 9, 17, 21 },1548{ 7, 17, 12, 13, 21 },1549{ 14, 16, 15, 21 },1550// { 17, 9, 12, 7, 10, 13 },1551// { 7, 10, 13, 14, 15, 16 },1552};1553HPRef_Struct reftet_2ea_2vc =1554{1555HP_TET,1556reftet_2ea_2vc_splitedges,1557reftet_2ea_2vc_splitfaces,1558reftet_2ea_2vc_splitelements,1559reftet_2ea_2vc_newelstypes,1560reftet_2ea_2vc_newels1561};156215631564156515661567156815691570// HP_TET_2EA_3V, // 2 edges connected1571int reftet_2ea_3v_splitedges[][3] =1572{1573{ 1, 2, 5 },1574{ 1, 3, 6 },1575{ 1, 4, 7 },1576{ 2, 1, 8 },1577{ 2, 3, 9 },1578{ 2, 4, 10 },1579{ 3, 1, 11 },1580{ 3, 2, 12 },1581{ 3, 4, 13 },1582{ 4, 1, 14 },1583{ 4, 2, 15 },1584{ 4, 3, 16 },1585{ 0, 0, 0 }1586};1587int reftet_2ea_3v_splitfaces[][4] =1588{1589{ 1, 2, 3, 17 },1590{ 2, 3, 4, 18 },1591{ 3, 4, 2, 19 },1592{ 4, 2, 3, 20 },1593{ 0, 0, 0, 0 }1594};1595int reftet_2ea_3v_splitelements[][5] =1596{1597{ 1, 2, 3, 4, 21 },1598{ 0, 0, 0, 0 }1599};1600HPREF_ELEMENT_TYPE reftet_2ea_3v_newelstypes[] =1601{1602HP_PYRAMID_EDGES,1603HP_TET_1E_1VA,1604HP_TET_1E_1VA,1605HP_TET_0E_1V,1606HP_PRISM_SINGEDGE,1607HP_PRISM_SINGEDGE,16081609HP_TET, HP_TET, HP_TET, HP_TET,1610HP_PYRAMID, HP_PYRAMID, HP_PYRAMID,1611HP_PYRAMID, HP_PYRAMID, HP_TET,1612HP_PYRAMID, HP_PYRAMID, HP_TET,1613// HP_PRISM,1614// HP_PRISM,1615HP_NONE,1616};1617int reftet_2ea_3v_newels[][8] =1618{1619{ 1, 5, 17, 6, 7 },1620{ 2, 8, 10, 9 },1621{ 3, 11, 12, 13 },1622{ 4, 15, 14, 16 },1623{ 5, 17, 7, 8, 9, 10 },1624{ 6, 7, 17, 11, 13, 12 },16251626{ 9, 10, 18, 21 },1627{ 13, 12, 19, 21 },1628{ 15, 16, 20, 21 },1629{ 18, 20, 19, 21 },1630{ 10, 15, 20, 18, 21 },1631{ 13, 19, 20, 16, 21 },1632{ 9, 18, 19, 12, 21 },16331634{ 7, 13, 16, 14, 21 },1635{ 7, 14, 15, 10, 21 },1636{ 9, 12, 17, 21 },1637{ 7, 10, 9, 17, 21 },1638{ 7, 17, 12, 13, 21 },1639{ 14, 16, 15, 21 },1640// { 17, 9, 12, 7, 10, 13 },1641// { 7, 10, 13, 14, 15, 16 },1642};1643HPRef_Struct reftet_2ea_3v =1644{1645HP_TET,1646reftet_2ea_3v_splitedges,1647reftet_2ea_3v_splitfaces,1648reftet_2ea_3v_splitelements,1649reftet_2ea_3v_newelstypes,1650reftet_2ea_3v_newels1651};16521653165416551656165716581659// HP_TET_2EB_0V, // 2 opposite edges1660int reftet_2eb_0v_splitedges[][3] =1661{1662{ 1, 3, 5 },1663{ 1, 4, 6 },1664{ 2, 3, 7 },1665{ 2, 4, 8 },1666{ 3, 1, 9 },1667{ 3, 2, 10 },1668{ 4, 1, 11 },1669{ 4, 2, 12 },1670{ 0, 0, 0 }1671};16721673HPREF_ELEMENT_TYPE reftet_2eb_0v_newelstypes[] =1674{1675HP_PRISM_SINGEDGE,1676HP_PRISM_SINGEDGE,1677HP_HEX,1678HP_NONE,1679};1680int reftet_2eb_0v_newels[][8] =1681{1682{ 1, 5, 6, 2, 7, 8 },1683{ 3, 9, 10, 4, 11, 12 },1684{ 6, 11, 12, 8, 5, 9, 10, 7 },1685};1686HPRef_Struct reftet_2eb_0v =1687{1688HP_TET,1689reftet_2eb_0v_splitedges,16900, 0,1691reftet_2eb_0v_newelstypes,1692reftet_2eb_0v_newels1693};169416951696// HP_TET_2EB_1V, // V1169716981699// HP_TET_2EB_1V, // 2 opposite edges, V11700int reftet_2eb_1v_splitedges[][3] =1701{1702{ 1, 2, 5 },1703{ 1, 3, 6 },1704{ 1, 4, 7 },1705{ 2, 1, 8 },1706{ 2, 3, 9 },1707{ 2, 4, 10 },1708{ 3, 1, 11 },1709{ 3, 2, 12 },1710{ 3, 4, 13 },1711{ 4, 1, 14 },1712{ 4, 2, 15 },1713{ 4, 3, 16 },1714{ 0, 0, 0 }1715};17161717HPREF_ELEMENT_TYPE reftet_2eb_1v_newelstypes[] =1718{1719HP_PRISM_SINGEDGE,1720HP_PRISM_SINGEDGE,1721HP_TET_1E_1VA,1722// HP_TET_1E_1VA,1723// HP_TET_1E_1VA,1724// HP_TET_1E_1VA,1725HP_HEX,1726HP_NONE,1727};1728int reftet_2eb_1v_newels[][8] =1729{1730{ 5, 6, 7, 2, 9, 10 },1731{ 4, 15, 14, 3, 12, 11 },1732{ 1, 5, 6, 7 },1733// { 2, 8, 10, 9 },1734// { 3, 13, 11, 12 },1735// { 4, 16, 15, 14 },1736{ 7, 14, 15, 10, 6, 11, 12, 9 }1737};1738HPRef_Struct reftet_2eb_1v =1739{1740HP_TET,1741reftet_2eb_1v_splitedges,17420, 0,1743reftet_2eb_1v_newelstypes,1744reftet_2eb_1v_newels1745};1746174717481749// HP_TET_2EB_2VA, // 2 opposite edges, V1,21750int reftet_2eb_2va_splitedges[][3] =1751{1752{ 1, 2, 5 },1753{ 1, 3, 6 },1754{ 1, 4, 7 },1755{ 2, 1, 8 },1756{ 2, 3, 9 },1757{ 2, 4, 10 },1758{ 3, 1, 11 },1759{ 3, 2, 12 },1760{ 3, 4, 13 },1761{ 4, 1, 14 },1762{ 4, 2, 15 },1763{ 4, 3, 16 },1764{ 0, 0, 0 }1765};17661767HPREF_ELEMENT_TYPE reftet_2eb_2va_newelstypes[] =1768{1769HP_PRISM_SINGEDGE,1770HP_PRISM_SINGEDGE,1771HP_TET_1E_1VA,1772HP_TET_1E_1VA,1773// HP_TET_1E_1VA,1774// HP_TET_1E_1VA,1775HP_HEX,1776HP_NONE,1777};1778int reftet_2eb_2va_newels[][8] =1779{1780{ 5, 6, 7, 8, 9, 10 },1781{ 4, 15, 14, 3, 12, 11 },1782{ 1, 5, 6, 7 },1783{ 2, 8, 10, 9 },1784// { 3, 13, 11, 12 },1785// { 4, 16, 15, 14 },1786{ 7, 14, 15, 10, 6, 11, 12, 9 }1787};1788HPRef_Struct reftet_2eb_2va =1789{1790HP_TET,1791reftet_2eb_2va_splitedges,17920, 0,1793reftet_2eb_2va_newelstypes,1794reftet_2eb_2va_newels1795};179617971798// HP_TET_2EB_2VB, // V1,31799int reftet_2eb_2vb_splitedges[][3] =1800{1801{ 1, 2, 5 },1802{ 1, 3, 6 },1803{ 1, 4, 7 },1804{ 2, 1, 8 },1805{ 2, 3, 9 },1806{ 2, 4, 10 },1807{ 3, 1, 11 },1808{ 3, 2, 12 },1809{ 3, 4, 13 },1810{ 4, 1, 14 },1811{ 4, 2, 15 },1812{ 4, 3, 16 },1813{ 0, 0, 0 }1814};18151816HPREF_ELEMENT_TYPE reftet_2eb_2vb_newelstypes[] =1817{1818HP_PRISM_SINGEDGE,1819HP_PRISM_SINGEDGE,1820HP_TET_1E_1VA,1821// HP_TET_1E_1VA,1822HP_TET_1E_1VA,1823// HP_TET_1E_1VA,1824HP_HEX,1825HP_NONE,1826};1827int reftet_2eb_2vb_newels[][8] =1828{1829{ 5, 6, 7, 2, 9, 10 },1830{ 4, 15, 14, 13, 12, 11 },1831{ 1, 5, 6, 7 },1832// { 2, 8, 10, 9 },1833{ 3, 13, 11, 12 },1834// { 4, 16, 15, 14 },1835{ 7, 14, 15, 10, 6, 11, 12, 9 }1836};1837HPRef_Struct reftet_2eb_2vb =1838{1839HP_TET,1840reftet_2eb_2vb_splitedges,18410, 0,1842reftet_2eb_2vb_newelstypes,1843reftet_2eb_2vb_newels1844};18451846184718481849// HP_TET_2EB_2VC, // V1,41850int reftet_2eb_2vc_splitedges[][3] =1851{1852{ 1, 2, 5 },1853{ 1, 3, 6 },1854{ 1, 4, 7 },1855{ 2, 1, 8 },1856{ 2, 3, 9 },1857{ 2, 4, 10 },1858{ 3, 1, 11 },1859{ 3, 2, 12 },1860{ 3, 4, 13 },1861{ 4, 1, 14 },1862{ 4, 2, 15 },1863{ 4, 3, 16 },1864{ 0, 0, 0 }1865};18661867HPREF_ELEMENT_TYPE reftet_2eb_2vc_newelstypes[] =1868{1869HP_PRISM_SINGEDGE,1870HP_PRISM_SINGEDGE,1871HP_TET_1E_1VA,1872// HP_TET_1E_1VA,1873// HP_TET_1E_1VA,1874HP_TET_1E_1VA,1875HP_HEX,1876HP_NONE,1877};1878int reftet_2eb_2vc_newels[][8] =1879{1880{ 5, 6, 7, 2, 9, 10 },1881{ 16, 15, 14, 3, 12, 11 },1882{ 1, 5, 6, 7 },1883// { 2, 8, 10, 9 },1884// { 3, 13, 11, 12 },1885{ 4, 16, 15, 14 },1886{ 7, 14, 15, 10, 6, 11, 12, 9 }1887};1888HPRef_Struct reftet_2eb_2vc =1889{1890HP_TET,1891reftet_2eb_2vc_splitedges,18920, 0,1893reftet_2eb_2vc_newelstypes,1894reftet_2eb_2vc_newels1895};1896189718981899190019011902// HP_TET_2EB_3V, // V1,2,31903int reftet_2eb_3v_splitedges[][3] =1904{1905{ 1, 2, 5 },1906{ 1, 3, 6 },1907{ 1, 4, 7 },1908{ 2, 1, 8 },1909{ 2, 3, 9 },1910{ 2, 4, 10 },1911{ 3, 1, 11 },1912{ 3, 2, 12 },1913{ 3, 4, 13 },1914{ 4, 1, 14 },1915{ 4, 2, 15 },1916{ 4, 3, 16 },1917{ 0, 0, 0 }1918};19191920HPREF_ELEMENT_TYPE reftet_2eb_3v_newelstypes[] =1921{1922HP_PRISM_SINGEDGE,1923HP_PRISM_SINGEDGE,1924HP_TET_1E_1VA,1925HP_TET_1E_1VA,1926HP_TET_1E_1VA,1927// HP_TET_1E_1VA,1928HP_HEX,1929HP_NONE,1930};1931int reftet_2eb_3v_newels[][8] =1932{1933{ 5, 6, 7, 8, 9, 10 },1934{ 4, 15, 14, 13, 12, 11 },1935{ 1, 5, 6, 7 },1936{ 2, 8, 10, 9 },1937{ 3, 13, 11, 12 },1938// { 4, 16, 15, 14 },1939{ 7, 14, 15, 10, 6, 11, 12, 9 }1940};1941HPRef_Struct reftet_2eb_3v =1942{1943HP_TET,1944reftet_2eb_3v_splitedges,19450, 0,1946reftet_2eb_3v_newelstypes,1947reftet_2eb_3v_newels1948};1949195019511952195319541955// HP_TET_2EB_4V, // 2 opposite edges1956int reftet_2eb_4v_splitedges[][3] =1957{1958{ 1, 2, 5 },1959{ 1, 3, 6 },1960{ 1, 4, 7 },1961{ 2, 1, 8 },1962{ 2, 3, 9 },1963{ 2, 4, 10 },1964{ 3, 1, 11 },1965{ 3, 2, 12 },1966{ 3, 4, 13 },1967{ 4, 1, 14 },1968{ 4, 2, 15 },1969{ 4, 3, 16 },1970{ 0, 0, 0 }1971};19721973HPREF_ELEMENT_TYPE reftet_2eb_4v_newelstypes[] =1974{1975HP_PRISM_SINGEDGE,1976HP_PRISM_SINGEDGE,1977HP_TET_1E_1VA,1978HP_TET_1E_1VA,1979HP_TET_1E_1VA,1980HP_TET_1E_1VA,1981HP_HEX,1982HP_NONE,1983};1984int reftet_2eb_4v_newels[][8] =1985{1986{ 5, 6, 7, 8, 9, 10 },1987{ 16, 15, 14, 13, 12, 11 },1988{ 1, 5, 6, 7 },1989{ 2, 8, 10, 9 },1990{ 3, 13, 11, 12 },1991{ 4, 16, 15, 14 },1992{ 7, 14, 15, 10, 6, 11, 12, 9 }1993};1994HPRef_Struct reftet_2eb_4v =1995{1996HP_TET,1997reftet_2eb_4v_splitedges,19980, 0,1999reftet_2eb_4v_newelstypes,2000reftet_2eb_4v_newels2001};200220032004200520062007200820092010201120122013201420152016201720182019// HP_TET_3EA_0V,2020int reftet_3ea_0v_splitedges[][3] =2021{2022{ 1, 2, 5 },2023{ 1, 3, 6 },2024{ 1, 4, 7 },2025{ 2, 3, 8 },2026{ 2, 4, 9 },2027{ 3, 2, 10 },2028{ 3, 4, 11 },2029{ 4, 2, 12 },2030{ 4, 3, 13 },2031{ 0, 0, 0 }2032};2033int reftet_3ea_0v_splitfaces[][4] =2034{2035{ 1, 2, 3, 14 },2036{ 1, 2, 4, 15 },2037{ 1, 3, 4, 16 },2038{ 2, 3, 4, 17 },2039{ 3, 4, 2, 18 },2040{ 4, 2, 3, 19 },2041{ 0, 0, 0, 0 }2042};2043int reftet_3ea_0v_splitelements[][5] =2044{2045{ 1, 2, 3, 4, 20 },2046{ 0 },2047};20482049HPREF_ELEMENT_TYPE reftet_3ea_0v_newelstypes[] =2050{2051HP_HEX_3E_0V,2052HP_HEX_1E_0V,2053HP_HEX_1E_0V,2054HP_HEX_1E_0V,2055HP_PRISM,2056HP_PRISM,2057HP_PRISM,2058HP_TET,2059HP_NONE,2060};2061int reftet_3ea_0v_newels[][8] =2062{2063{ 1, 5, 14, 6, 7, 15, 20, 16 },2064{ 5, 2, 8, 14, 15, 9, 17, 20 },2065{ 3, 6, 14, 10, 11, 16, 20, 18 },2066{ 7, 4, 12, 15, 16, 13, 19, 20 },2067{ 11, 13, 16, 18, 19, 20 },2068{ 15, 12, 9, 20, 19, 17 },2069{ 8, 10, 14, 17, 18, 20 },2070{ 20, 17, 18, 19 },2071};2072HPRef_Struct reftet_3ea_0v =2073{2074HP_TET,2075reftet_3ea_0v_splitedges,2076reftet_3ea_0v_splitfaces,2077reftet_3ea_0v_splitelements,2078reftet_3ea_0v_newelstypes,2079reftet_3ea_0v_newels2080};20812082208320842085208620872088208920902091// HP_TET_3EA_1V,2092int reftet_3ea_1v_splitedges[][3] =2093{2094{ 1, 2, 5 },2095{ 1, 3, 6 },2096{ 1, 4, 7 },2097{ 2, 3, 8 },2098{ 2, 4, 9 },2099{ 3, 2, 10 },2100{ 3, 4, 11 },2101{ 4, 2, 12 },2102{ 4, 3, 13 },2103{ 2, 1, 21 },2104{ 3, 1, 22 },2105{ 4, 1, 23 },2106{ 0, 0, 0 }2107};2108int reftet_3ea_1v_splitfaces[][4] =2109{2110{ 1, 2, 3, 14 },2111{ 1, 2, 4, 15 },2112{ 1, 3, 4, 16 },2113{ 2, 3, 4, 17 },2114{ 3, 4, 2, 18 },2115{ 4, 2, 3, 19 },2116{ 0, 0, 0, 0 }2117};2118int reftet_3ea_1v_splitelements[][5] =2119{2120{ 1, 2, 3, 4, 20 },2121{ 0 },2122};21232124HPREF_ELEMENT_TYPE reftet_3ea_1v_newelstypes[] =2125{2126HP_HEX_3E_0V,2127HP_TET_1E_1VA,2128HP_PRISM_SINGEDGE,2129HP_PRISM,2130// HP_TET_1E_1VA,2131HP_PRISM_SINGEDGE,2132HP_PRISM,2133// HP_TET_1E_1VA,2134HP_PRISM_SINGEDGE,2135HP_PRISM,21362137HP_PRISM,2138HP_PRISM,2139HP_PRISM,2140HP_TET,2141HP_NONE,2142};2143int reftet_3ea_1v_newels[][8] =2144{2145{ 1, 5, 14, 6, 7, 15, 20, 16 },21462147{ 2, 21, 9, 8 },2148{ 5, 14, 15, 21, 8, 9 },2149{ 15, 14, 20, 9, 8, 17 },2150// { 3, 22, 10, 11 },2151// { 6, 16, 14, 22, 11, 10 },2152{ 6, 16, 14, 3, 11, 10 },2153{ 14, 16, 20, 10, 11, 18 },2154// { 4, 23, 13, 12 },2155// { 7, 15, 16, 23, 12, 13 },2156{ 7, 15, 16, 4, 12, 13 },2157{ 16, 15, 20, 13, 12, 19 },21582159{ 11, 13, 16, 18, 19, 20 },2160{ 15, 12, 9, 20, 19, 17 },2161{ 8, 10, 14, 17, 18, 20 },2162{ 20, 17, 18, 19 },2163};2164HPRef_Struct reftet_3ea_1v =2165{2166HP_TET,2167reftet_3ea_1v_splitedges,2168reftet_3ea_1v_splitfaces,2169reftet_3ea_1v_splitelements,2170reftet_3ea_1v_newelstypes,2171reftet_3ea_1v_newels2172};21732174217521762177217821792180218121822183// HP_TET_3EA_2V,2184int reftet_3ea_2v_splitedges[][3] =2185{2186{ 1, 2, 5 },2187{ 1, 3, 6 },2188{ 1, 4, 7 },2189{ 2, 3, 8 },2190{ 2, 4, 9 },2191{ 3, 2, 10 },2192{ 3, 4, 11 },2193{ 4, 2, 12 },2194{ 4, 3, 13 },2195{ 2, 1, 21 },2196{ 3, 1, 22 },2197{ 4, 1, 23 },2198{ 0, 0, 0 }2199};2200int reftet_3ea_2v_splitfaces[][4] =2201{2202{ 1, 2, 3, 14 },2203{ 1, 2, 4, 15 },2204{ 1, 3, 4, 16 },2205{ 2, 3, 4, 17 },2206{ 3, 4, 2, 18 },2207{ 4, 2, 3, 19 },2208{ 0, 0, 0, 0 }2209};2210int reftet_3ea_2v_splitelements[][5] =2211{2212{ 1, 2, 3, 4, 20 },2213{ 0 },2214};22152216HPREF_ELEMENT_TYPE reftet_3ea_2v_newelstypes[] =2217{2218HP_HEX_3E_0V,2219HP_TET_1E_1VA,2220HP_PRISM_SINGEDGE,2221HP_PRISM,2222HP_TET_1E_1VA,2223HP_PRISM_SINGEDGE,2224HP_PRISM,2225// HP_TET_1E_1VA,2226HP_PRISM_SINGEDGE,2227HP_PRISM,22282229HP_PRISM,2230HP_PRISM,2231HP_PRISM,2232HP_TET,2233HP_NONE,2234};2235int reftet_3ea_2v_newels[][8] =2236{2237{ 1, 5, 14, 6, 7, 15, 20, 16 },22382239{ 2, 21, 9, 8 },2240{ 5, 14, 15, 21, 8, 9 },2241{ 15, 14, 20, 9, 8, 17 },2242{ 3, 22, 10, 11 },2243{ 6, 16, 14, 22, 11, 10 },2244{ 14, 16, 20, 10, 11, 18 },2245// { 4, 23, 13, 12 },2246{ 7, 15, 16, 4, 12, 13 },2247{ 16, 15, 20, 13, 12, 19 },22482249{ 11, 13, 16, 18, 19, 20 },2250{ 15, 12, 9, 20, 19, 17 },2251{ 8, 10, 14, 17, 18, 20 },2252{ 20, 17, 18, 19 },2253};2254HPRef_Struct reftet_3ea_2v =2255{2256HP_TET,2257reftet_3ea_2v_splitedges,2258reftet_3ea_2v_splitfaces,2259reftet_3ea_2v_splitelements,2260reftet_3ea_2v_newelstypes,2261reftet_3ea_2v_newels2262};226322642265226622672268226922702271// HP_TET_3EA_3V,2272int reftet_3ea_3v_splitedges[][3] =2273{2274{ 1, 2, 5 },2275{ 1, 3, 6 },2276{ 1, 4, 7 },2277{ 2, 3, 8 },2278{ 2, 4, 9 },2279{ 3, 2, 10 },2280{ 3, 4, 11 },2281{ 4, 2, 12 },2282{ 4, 3, 13 },2283{ 2, 1, 21 },2284{ 3, 1, 22 },2285{ 4, 1, 23 },2286{ 0, 0, 0 }2287};2288int reftet_3ea_3v_splitfaces[][4] =2289{2290{ 1, 2, 3, 14 },2291{ 1, 2, 4, 15 },2292{ 1, 3, 4, 16 },2293{ 2, 3, 4, 17 },2294{ 3, 4, 2, 18 },2295{ 4, 2, 3, 19 },2296{ 0, 0, 0, 0 }2297};2298int reftet_3ea_3v_splitelements[][5] =2299{2300{ 1, 2, 3, 4, 20 },2301{ 0 },2302};23032304HPREF_ELEMENT_TYPE reftet_3ea_3v_newelstypes[] =2305{2306HP_HEX_3E_0V,2307HP_TET_1E_1VA,2308HP_PRISM_SINGEDGE,2309HP_PRISM,2310HP_TET_1E_1VA,2311HP_PRISM_SINGEDGE,2312HP_PRISM,2313HP_TET_1E_1VA,2314HP_PRISM_SINGEDGE,2315HP_PRISM,23162317HP_PRISM,2318HP_PRISM,2319HP_PRISM,2320HP_TET,2321HP_NONE,2322};2323int reftet_3ea_3v_newels[][8] =2324{2325{ 1, 5, 14, 6, 7, 15, 20, 16 },23262327{ 2, 21, 9, 8 },2328{ 5, 14, 15, 21, 8, 9 },2329{ 15, 14, 20, 9, 8, 17 },2330{ 3, 22, 10, 11 },2331{ 6, 16, 14, 22, 11, 10 },2332{ 14, 16, 20, 10, 11, 18 },2333{ 4, 23, 13, 12 },2334{ 7, 15, 16, 23, 12, 13 },2335{ 16, 15, 20, 13, 12, 19 },23362337{ 11, 13, 16, 18, 19, 20 },2338{ 15, 12, 9, 20, 19, 17 },2339{ 8, 10, 14, 17, 18, 20 },2340{ 20, 17, 18, 19 },2341};2342HPRef_Struct reftet_3ea_3v =2343{2344HP_TET,2345reftet_3ea_3v_splitedges,2346reftet_3ea_3v_splitfaces,2347reftet_3ea_3v_splitelements,2348reftet_3ea_3v_newelstypes,2349reftet_3ea_3v_newels2350};23512352235323542355235623572358// HP_TET_3EV_0V,2359int reftet_3eb_0v_splitedges[][3] =2360{2361{ 1, 2, 5 },2362{ 1, 3, 6 },2363{ 1, 4, 7 },2364{ 2, 1, 8 },2365{ 2, 3, 9 },2366{ 2, 4, 10 },2367{ 3, 1, 11 },2368// { 3, 2, 12 },2369{ 3, 4, 13 },2370// { 4, 1, 14 },2371{ 4, 2, 15 },2372{ 4, 3, 16 },2373{ 0, 0, 0 }2374};2375int reftet_3eb_0v_splitfaces[][4] =2376{2377{ 1, 2, 4, 17 },2378{ 2, 1, 3, 18 },2379{ 0, 0, 0, 0 }2380};2381int reftet_3eb_0v_splitelements[][5] =2382{2383{ 1, 2, 3, 4, 20 },2384{ 0 },2385};23862387HPREF_ELEMENT_TYPE reftet_3eb_0v_newelstypes[] =2388{2389HP_PYRAMID_EDGES,2390HP_PYRAMID_EDGES,2391// HP_TET_1E_1VA,2392// HP_TET_1E_1VA,2393HP_PRISM_SINGEDGE,2394HP_PRISM_SINGEDGE,2395HP_PRISM_SINGEDGE,23962397HP_PYRAMID,2398HP_PYRAMID,2399HP_TET,2400HP_TET,2401HP_PYRAMID,2402HP_PYRAMID,2403HP_PYRAMID,2404HP_NONE,2405};2406int reftet_3eb_0v_newels[][8] =2407{2408{ 1, 7, 17, 5, 6 },2409{ 2, 9, 18, 8, 10 },2410// { 3, 12, 13, 11 },2411// { 4, 14, 16, 15 },2412{ 5, 6, 17, 8, 18, 10 },2413{ 7, 17, 6, 4, 15, 16 },2414{ 9, 18, 10, 3, 11, 13 },24152416{ 10, 15, 16, 13, 20 },2417{ 6, 11, 13, 16, 20 },2418{ 10, 17, 15, 20 },2419{ 6, 18, 11, 20 },2420{ 6, 17, 10, 18, 20 },2421{ 6, 16, 15, 17, 20 },2422{ 18, 10, 13, 11, 20 },2423};2424HPRef_Struct reftet_3eb_0v =2425{2426HP_TET,2427reftet_3eb_0v_splitedges,2428reftet_3eb_0v_splitfaces,2429reftet_3eb_0v_splitelements,2430reftet_3eb_0v_newelstypes,2431reftet_3eb_0v_newels2432};2433243424352436243724382439244024412442// HP_TET_3EV_1V,2443int reftet_3eb_1v_splitedges[][3] =2444{2445{ 1, 2, 5 },2446{ 1, 3, 6 },2447{ 1, 4, 7 },2448{ 2, 1, 8 },2449{ 2, 3, 9 },2450{ 2, 4, 10 },2451{ 3, 1, 11 },2452{ 3, 2, 12 },2453{ 3, 4, 13 },2454// { 4, 1, 14 },2455{ 4, 2, 15 },2456{ 4, 3, 16 },2457{ 0, 0, 0 }2458};2459int reftet_3eb_1v_splitfaces[][4] =2460{2461{ 1, 2, 4, 17 },2462{ 2, 1, 3, 18 },2463{ 0, 0, 0, 0 }2464};2465int reftet_3eb_1v_splitelements[][5] =2466{2467{ 1, 2, 3, 4, 20 },2468{ 0 },2469};24702471HPREF_ELEMENT_TYPE reftet_3eb_1v_newelstypes[] =2472{2473HP_PYRAMID_EDGES,2474HP_PYRAMID_EDGES,2475HP_TET_1E_1VA,2476// HP_TET_1E_1VA,2477HP_PRISM_SINGEDGE,2478HP_PRISM_SINGEDGE,2479HP_PRISM_SINGEDGE,24802481HP_PYRAMID,2482HP_PYRAMID,2483HP_TET,2484HP_TET,2485HP_PYRAMID,2486HP_PYRAMID,2487HP_PYRAMID,2488HP_NONE,2489};2490int reftet_3eb_1v_newels[][8] =2491{2492{ 1, 7, 17, 5, 6 },2493{ 2, 9, 18, 8, 10 },2494{ 3, 12, 13, 11 },2495// { 4, 14, 16, 15 },2496{ 5, 6, 17, 8, 18, 10 },2497{ 7, 17, 6, 4, 15, 16 },2498{ 9, 18, 10, 12, 11, 13 },24992500{ 10, 15, 16, 13, 20 },2501{ 6, 11, 13, 16, 20 },2502{ 10, 17, 15, 20 },2503{ 6, 18, 11, 20 },2504{ 6, 17, 10, 18, 20 },2505{ 6, 16, 15, 17, 20 },2506{ 18, 10, 13, 11, 20 },2507};2508HPRef_Struct reftet_3eb_1v =2509{2510HP_TET,2511reftet_3eb_1v_splitedges,2512reftet_3eb_1v_splitfaces,2513reftet_3eb_1v_splitelements,2514reftet_3eb_1v_newelstypes,2515reftet_3eb_1v_newels2516};251725182519252025212522252325242525// HP_TET_3EV_2V,2526int reftet_3eb_2v_splitedges[][3] =2527{2528{ 1, 2, 5 },2529{ 1, 3, 6 },2530{ 1, 4, 7 },2531{ 2, 1, 8 },2532{ 2, 3, 9 },2533{ 2, 4, 10 },2534{ 3, 1, 11 },2535{ 3, 2, 12 },2536{ 3, 4, 13 },2537{ 4, 1, 14 },2538{ 4, 2, 15 },2539{ 4, 3, 16 },2540{ 0, 0, 0 }2541};2542int reftet_3eb_2v_splitfaces[][4] =2543{2544{ 1, 2, 4, 17 },2545{ 2, 1, 3, 18 },2546{ 0, 0, 0, 0 }2547};2548int reftet_3eb_2v_splitelements[][5] =2549{2550{ 1, 2, 3, 4, 20 },2551{ 0 },2552};25532554HPREF_ELEMENT_TYPE reftet_3eb_2v_newelstypes[] =2555{2556HP_PYRAMID_EDGES,2557HP_PYRAMID_EDGES,2558HP_TET_1E_1VA,2559HP_TET_1E_1VA,2560HP_PRISM_SINGEDGE,2561HP_PRISM_SINGEDGE,2562HP_PRISM_SINGEDGE,25632564HP_PYRAMID,2565HP_PYRAMID,2566HP_TET,2567HP_TET,2568HP_PYRAMID,2569HP_PYRAMID,2570HP_PYRAMID,2571HP_NONE,2572};2573int reftet_3eb_2v_newels[][8] =2574{2575{ 1, 7, 17, 5, 6 },2576{ 2, 9, 18, 8, 10 },2577{ 3, 12, 13, 11 },2578{ 4, 14, 16, 15 },2579{ 5, 6, 17, 8, 18, 10 },2580{ 7, 17, 6, 14, 15, 16 },2581{ 9, 18, 10, 12, 11, 13 },25822583{ 10, 15, 16, 13, 20 },2584{ 6, 11, 13, 16, 20 },2585{ 10, 17, 15, 20 },2586{ 6, 18, 11, 20 },2587{ 6, 17, 10, 18, 20 },2588{ 6, 16, 15, 17, 20 },2589{ 18, 10, 13, 11, 20 },2590};2591HPRef_Struct reftet_3eb_2v =2592{2593HP_TET,2594reftet_3eb_2v_splitedges,2595reftet_3eb_2v_splitfaces,2596reftet_3eb_2v_splitelements,2597reftet_3eb_2v_newelstypes,2598reftet_3eb_2v_newels2599};26002601260226032604260526062607260826092610261126122613// HP_TET_3EC_0V,2614int reftet_3ec_0v_splitedges[][3] =2615{2616{ 1, 2, 5 },2617{ 1, 3, 6 },2618{ 1, 4, 7 },2619{ 2, 1, 8 },2620{ 2, 3, 9 },2621{ 2, 4, 10 },2622// { 3, 1, 11 },2623{ 3, 2, 12 },2624{ 3, 4, 13 },2625{ 4, 1, 14 },2626// { 4, 2, 15 },2627{ 4, 3, 16 },2628{ 0, 0, 0 }2629};2630int reftet_3ec_0v_splitfaces[][4] =2631{2632{ 1, 2, 3, 17 },2633{ 2, 1, 4, 18 },2634{ 0, 0, 0, 0 }2635};2636int reftet_3ec_0v_splitelements[][5] =2637{2638{ 1, 2, 3, 4, 20 },2639{ 0 },2640};26412642HPREF_ELEMENT_TYPE reftet_3ec_0v_newelstypes[] =2643{2644HP_PYRAMID_EDGES,2645HP_PYRAMID_EDGES,2646// HP_TET_1E_1VA,2647// HP_TET_1E_1VA,2648HP_PRISM_SINGEDGE,2649HP_PRISM_SINGEDGE,2650HP_PRISM_SINGEDGE,26512652HP_PYRAMID,2653HP_PYRAMID,2654HP_TET,2655HP_TET,2656HP_PYRAMID,2657HP_PYRAMID,2658HP_PYRAMID,2659HP_NONE,2660};2661int reftet_3ec_0v_newels[][8] =2662{2663{ 1, 5, 17, 6, 7 },2664{ 2, 8, 18, 10, 9 },2665// { 3, 11, 12, 13 },2666// { 4, 15, 14, 16 },2667{ 5, 17, 7, 8, 9, 18 },2668{ 6, 7, 17, 3, 13, 12 },2669{ 10, 9, 18, 4, 16, 14 },26702671{ 9, 16, 13, 12, 20 },2672{ 7, 13, 16, 14, 20 },2673{ 7, 14, 18, 20 },2674{ 9, 12, 17, 20 },2675{ 17, 7, 18, 9, 20 },2676{ 7, 17, 12, 13, 20 },2677{ 9, 18, 14, 16, 20 },2678};2679HPRef_Struct reftet_3ec_0v =2680{2681HP_TET,2682reftet_3ec_0v_splitedges,2683reftet_3ec_0v_splitfaces,2684reftet_3ec_0v_splitelements,2685reftet_3ec_0v_newelstypes,2686reftet_3ec_0v_newels2687};2688268926902691269226932694269526962697// HP_TET_3EC_1V,2698int reftet_3ec_1v_splitedges[][3] =2699{2700{ 1, 2, 5 },2701{ 1, 3, 6 },2702{ 1, 4, 7 },2703{ 2, 1, 8 },2704{ 2, 3, 9 },2705{ 2, 4, 10 },2706{ 3, 1, 11 },2707{ 3, 2, 12 },2708{ 3, 4, 13 },2709{ 4, 1, 14 },2710// { 4, 2, 15 },2711{ 4, 3, 16 },2712{ 0, 0, 0 }2713};2714int reftet_3ec_1v_splitfaces[][4] =2715{2716{ 1, 2, 3, 17 },2717{ 2, 1, 4, 18 },2718{ 0, 0, 0, 0 }2719};2720int reftet_3ec_1v_splitelements[][5] =2721{2722{ 1, 2, 3, 4, 20 },2723{ 0 },2724};27252726HPREF_ELEMENT_TYPE reftet_3ec_1v_newelstypes[] =2727{2728HP_PYRAMID_EDGES,2729HP_PYRAMID_EDGES,2730HP_TET_1E_1VA,2731// HP_TET_1E_1VA,2732HP_PRISM_SINGEDGE,2733HP_PRISM_SINGEDGE,2734HP_PRISM_SINGEDGE,27352736HP_PYRAMID,2737HP_PYRAMID,2738HP_TET,2739HP_TET,2740HP_PYRAMID,2741HP_PYRAMID,2742HP_PYRAMID,2743HP_NONE,2744};2745int reftet_3ec_1v_newels[][8] =2746{2747{ 1, 5, 17, 6, 7 },2748{ 2, 8, 18, 10, 9 },2749{ 3, 11, 12, 13 },2750// { 4, 15, 14, 16 },2751{ 5, 17, 7, 8, 9, 18 },2752{ 6, 7, 17, 11, 13, 12 },2753{ 10, 9, 18, 4, 16, 14 },27542755{ 9, 16, 13, 12, 20 },2756{ 7, 13, 16, 14, 20 },2757{ 7, 14, 18, 20 },2758{ 9, 12, 17, 20 },2759{ 17, 7, 18, 9, 20 },2760{ 7, 17, 12, 13, 20 },2761{ 9, 18, 14, 16, 20 },2762};2763HPRef_Struct reftet_3ec_1v =2764{2765HP_TET,2766reftet_3ec_1v_splitedges,2767reftet_3ec_1v_splitfaces,2768reftet_3ec_1v_splitelements,2769reftet_3ec_1v_newelstypes,2770reftet_3ec_1v_newels2771};277227732774277527762777277827792780// HP_TET_3EC_2V,2781int reftet_3ec_2v_splitedges[][3] =2782{2783{ 1, 2, 5 },2784{ 1, 3, 6 },2785{ 1, 4, 7 },2786{ 2, 1, 8 },2787{ 2, 3, 9 },2788{ 2, 4, 10 },2789{ 3, 1, 11 },2790{ 3, 2, 12 },2791{ 3, 4, 13 },2792{ 4, 1, 14 },2793{ 4, 2, 15 },2794{ 4, 3, 16 },2795{ 0, 0, 0 }2796};2797int reftet_3ec_2v_splitfaces[][4] =2798{2799{ 1, 2, 3, 17 },2800{ 2, 1, 4, 18 },2801{ 0, 0, 0, 0 }2802};2803int reftet_3ec_2v_splitelements[][5] =2804{2805{ 1, 2, 3, 4, 20 },2806{ 0 },2807};28082809HPREF_ELEMENT_TYPE reftet_3ec_2v_newelstypes[] =2810{2811HP_PYRAMID_EDGES,2812HP_PYRAMID_EDGES,2813HP_TET_1E_1VA,2814HP_TET_1E_1VA,2815HP_PRISM_SINGEDGE,2816HP_PRISM_SINGEDGE,2817HP_PRISM_SINGEDGE,28182819HP_PYRAMID,2820HP_PYRAMID,2821HP_TET,2822HP_TET,2823HP_PYRAMID,2824HP_PYRAMID,2825HP_PYRAMID,2826HP_NONE,2827};2828int reftet_3ec_2v_newels[][8] =2829{2830{ 1, 5, 17, 6, 7 },2831{ 2, 8, 18, 10, 9 },2832{ 3, 11, 12, 13 },2833{ 4, 15, 14, 16 },2834{ 5, 17, 7, 8, 9, 18 },2835{ 6, 7, 17, 11, 13, 12 },2836{ 10, 9, 18, 15, 16, 14 },28372838{ 9, 16, 13, 12, 20 },2839{ 7, 13, 16, 14, 20 },2840{ 7, 14, 18, 20 },2841{ 9, 12, 17, 20 },2842{ 17, 7, 18, 9, 20 },2843{ 7, 17, 12, 13, 20 },2844{ 9, 18, 14, 16, 20 },2845};2846HPRef_Struct reftet_3ec_2v =2847{2848HP_TET,2849reftet_3ec_2v_splitedges,2850reftet_3ec_2v_splitfaces,2851reftet_3ec_2v_splitelements,2852reftet_3ec_2v_newelstypes,2853reftet_3ec_2v_newels2854};28552856285728582859286028612862286328642865/* ************************ 1 singular face ******************** */286628672868// HP_TET_1F_0E_0V2869int reftet_1f_0e_0v_splitedges[][3] =2870{2871{ 2, 1, 5 },2872{ 3, 1, 6 },2873{ 4, 1, 7 },2874{ 0, 0, 0 }2875};2876HPREF_ELEMENT_TYPE reftet_1f_0e_0v_newelstypes[] =2877{2878HP_PRISM_1FA_0E_0V,2879HP_TET,2880HP_NONE,2881};2882int reftet_1f_0e_0v_newels[][8] =2883{2884{ 3, 2, 4, 6, 5, 7 },2885{ 5, 7, 6, 1 }2886};2887HPRef_Struct reftet_1f_0e_0v =2888{2889HP_TET,2890reftet_1f_0e_0v_splitedges,28910, 0,2892reftet_1f_0e_0v_newelstypes,2893reftet_1f_0e_0v_newels2894};289528962897289828992900// HP_TET_1F_0E_1VA ... singular vertex in face2901int reftet_1f_0e_1va_splitedges[][3] =2902{2903{ 2, 1, 5 },2904{ 2, 3, 6 },2905{ 2, 4, 7 },2906{ 3, 1, 8 },2907{ 4, 1, 9 },2908{ 0, 0, 0 }2909};2910HPREF_ELEMENT_TYPE reftet_1f_0e_1va_newelstypes[] =2911{2912HP_HEX_1F_0E_0V,2913HP_TET_1F_0E_1VA,2914HP_TET,2915HP_NONE,2916};2917int reftet_1f_0e_1va_newels[][8] =2918{2919{ 3, 6, 7, 4, 8, 5, 5, 9 },2920{ 5, 2, 6, 7 },2921{ 5, 9, 8, 1 },2922};2923HPRef_Struct reftet_1f_0e_1va =2924{2925HP_TET,2926reftet_1f_0e_1va_splitedges,29270, 0,2928reftet_1f_0e_1va_newelstypes,2929reftet_1f_0e_1va_newels2930};293129322933293429352936// HP_TET_1F_0E_1VB ... singular vertex not in face2937int reftet_1f_0e_1vb_splitedges[][3] =2938{2939{ 1, 2, 5 },2940{ 1, 3, 6 },2941{ 1, 4, 7 },2942{ 2, 1, 8 },2943{ 3, 1, 9 },2944{ 4, 1, 10 },2945{ 0, 0, 0 }2946};2947HPREF_ELEMENT_TYPE reftet_1f_0e_1vb_newelstypes[] =2948{2949HP_PRISM_1FA_0E_0V,2950HP_PRISM,2951HP_TET_0E_1V,2952HP_NONE,2953};2954int reftet_1f_0e_1vb_newels[][8] =2955{2956{ 2, 4, 3, 8, 10, 9 },2957{ 8, 10, 9, 5, 7, 6 },2958{ 1, 5, 6, 7 },2959};2960HPRef_Struct reftet_1f_0e_1vb =2961{2962HP_TET,2963reftet_1f_0e_1vb_splitedges,29640, 0,2965reftet_1f_0e_1vb_newelstypes,2966reftet_1f_0e_1vb_newels2967};296829692970297129722973297429752976// HP_TET_1F_1EA_0V ... sing edge is 1..22977int reftet_1f_1ea_0v_splitedges[][3] =2978{2979{ 1, 3, 5 },2980{ 1, 4, 6 },2981{ 2, 1, 7 },2982{ 2, 3, 8 },2983{ 2, 4, 9 },2984{ 3, 1, 10 },2985{ 4, 1, 11 },2986{ 0, 0, 0 }2987};29882989int reftet_1f_1ea_0v_splitfaces[][4] =2990{2991{ 2, 1, 3, 12 },2992{ 2, 1, 4, 13 },2993{ 0, 0, 0, 0 }2994};299529962997HPREF_ELEMENT_TYPE reftet_1f_1ea_0v_newelstypes[] =2998{2999HP_HEX_1F_0E_0V,3000// HP_PRISM,3001HP_PYRAMID_1FB_0E_1VA,3002HP_TET_1E_1VA,3003HP_PRISM_SINGEDGE,3004HP_PRISM,3005HP_NONE,3006};3007int reftet_1f_1ea_0v_newels[][8] =3008{3009{ 3, 8, 9, 4, 10, 12, 13, 11 },3010// { 2, 9, 8, 7, 13, 12 },3011{ 8, 9, 13, 12, 2 },3012{ 2, 7, 13, 12 },3013{ 7, 13, 12, 1, 6, 5 },3014{ 6, 11, 13, 5, 10, 12 }3015};3016HPRef_Struct reftet_1f_1ea_0v =3017{3018HP_TET,3019reftet_1f_1ea_0v_splitedges,3020reftet_1f_1ea_0v_splitfaces,30210,3022reftet_1f_1ea_0v_newelstypes,3023reftet_1f_1ea_0v_newels3024};302530263027302830293030303130323033// HP_TET_1F_1EB_0V singular edge in face, edge is 2-33034int reftet_1f_1eb_0v_splitedges[][3] =3035{3036{ 2, 1, 5 },3037{ 2, 4, 6 },3038{ 3, 1, 7 },3039{ 3, 4, 8 },3040{ 4, 1, 9 },3041{ 0, 0, 0 }3042};304330443045HPREF_ELEMENT_TYPE reftet_1f_1eb_0v_newelstypes[] =3046{3047HP_PRISM_1FB_1EA_0V,3048HP_PRISM_1FA_0E_0V,3049HP_TET,3050HP_NONE,3051};3052int reftet_1f_1eb_0v_newels[][8] =3053{3054// { 2, 5, 6, 3, 7, 8 },3055{ 3, 8, 7, 2, 6, 5 },3056{ 6, 4, 8, 5, 9, 7 },3057{ 5, 9, 7, 1}3058};3059HPRef_Struct reftet_1f_1eb_0v =3060{3061HP_TET,3062reftet_1f_1eb_0v_splitedges,30630, 0,3064reftet_1f_1eb_0v_newelstypes,3065reftet_1f_1eb_0v_newels3066};30673068306930703071307230733074307530763077/* ************************ 2 singular faces ******************** */307830793080// HP_TET_2F_0E_0V3081int reftet_2f_0e_0v_splitedges[][3] =3082{3083{ 1, 2, 5 },3084{ 2, 1, 6 },3085{ 3, 1, 7 },3086{ 3, 2, 8 },3087{ 4, 1, 9 },3088{ 4, 2, 10 },3089{ 0, 0, 0 }3090};30913092int reftet_2f_0e_0v_splitfaces[][4] =3093{3094{ 3, 1, 2, 11 },3095{ 4, 1, 2, 12 },3096{ 0, 0, 0, 0 }3097};309830993100HPREF_ELEMENT_TYPE reftet_2f_0e_0v_newelstypes[] =3101{3102HP_PRISM_1FA_0E_0V,3103HP_PRISM_1FA_0E_0V,3104HP_PRISM_1FB_1EA_0V,3105HP_PRISM_1FB_1EA_0V,3106HP_TET,3107HP_NONE,3108};3109int reftet_2f_0e_0v_newels[][8] =3110{3111{ 2, 10, 8, 6, 12, 11 },3112{ 1, 7, 9, 5, 11, 12 },3113// { 3, 11, 8, 4, 12, 10 },3114{ 4, 10, 12, 3, 8, 11 },3115{ 3, 7, 11, 4, 9, 12 },3116{ 5, 6, 11, 12 }3117};3118HPRef_Struct reftet_2f_0e_0v =3119{3120HP_TET,3121reftet_2f_0e_0v_splitedges,3122reftet_2f_0e_0v_splitfaces,31230,3124reftet_2f_0e_0v_newelstypes,3125reftet_2f_0e_0v_newels3126};3127312831293130