netgen-mesher 6.2.2506.post35.dev0__cp314-cp314-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (340) hide show
  1. netgen/NgOCC.py +7 -0
  2. netgen/__init__.py +114 -0
  3. netgen/__init__.pyi +22 -0
  4. netgen/__main__.py +53 -0
  5. netgen/cmake/NetgenConfig.cmake +79 -0
  6. netgen/cmake/netgen-targets-release.cmake +69 -0
  7. netgen/cmake/netgen-targets.cmake +146 -0
  8. netgen/config/__init__.py +1 -0
  9. netgen/config/__init__.pyi +52 -0
  10. netgen/config/__main__.py +4 -0
  11. netgen/config/config.py +68 -0
  12. netgen/config/config.pyi +54 -0
  13. netgen/csg.py +25 -0
  14. netgen/geom2d.py +178 -0
  15. netgen/gui.py +82 -0
  16. netgen/include/core/archive.hpp +1256 -0
  17. netgen/include/core/array.hpp +1760 -0
  18. netgen/include/core/autodiff.hpp +1131 -0
  19. netgen/include/core/autodiffdiff.hpp +733 -0
  20. netgen/include/core/bitarray.hpp +240 -0
  21. netgen/include/core/concurrentqueue.h +3619 -0
  22. netgen/include/core/exception.hpp +145 -0
  23. netgen/include/core/flags.hpp +199 -0
  24. netgen/include/core/hashtable.hpp +1281 -0
  25. netgen/include/core/localheap.hpp +318 -0
  26. netgen/include/core/logging.hpp +117 -0
  27. netgen/include/core/memtracer.hpp +221 -0
  28. netgen/include/core/mpi4py_pycapi.h +245 -0
  29. netgen/include/core/mpi_wrapper.hpp +643 -0
  30. netgen/include/core/ng_mpi.hpp +94 -0
  31. netgen/include/core/ng_mpi_generated_declarations.hpp +155 -0
  32. netgen/include/core/ng_mpi_native.hpp +25 -0
  33. netgen/include/core/ngcore.hpp +32 -0
  34. netgen/include/core/ngcore_api.hpp +152 -0
  35. netgen/include/core/ngstream.hpp +115 -0
  36. netgen/include/core/paje_trace.hpp +279 -0
  37. netgen/include/core/profiler.hpp +382 -0
  38. netgen/include/core/python_ngcore.hpp +457 -0
  39. netgen/include/core/ranges.hpp +109 -0
  40. netgen/include/core/register_archive.hpp +100 -0
  41. netgen/include/core/signal.hpp +82 -0
  42. netgen/include/core/simd.hpp +160 -0
  43. netgen/include/core/simd_arm64.hpp +407 -0
  44. netgen/include/core/simd_avx.hpp +394 -0
  45. netgen/include/core/simd_avx512.hpp +285 -0
  46. netgen/include/core/simd_generic.hpp +1053 -0
  47. netgen/include/core/simd_math.hpp +178 -0
  48. netgen/include/core/simd_sse.hpp +289 -0
  49. netgen/include/core/statushandler.hpp +37 -0
  50. netgen/include/core/symboltable.hpp +153 -0
  51. netgen/include/core/table.hpp +810 -0
  52. netgen/include/core/taskmanager.hpp +1161 -0
  53. netgen/include/core/type_traits.hpp +65 -0
  54. netgen/include/core/utils.hpp +385 -0
  55. netgen/include/core/version.hpp +102 -0
  56. netgen/include/core/xbool.hpp +47 -0
  57. netgen/include/csg/algprim.hpp +563 -0
  58. netgen/include/csg/brick.hpp +150 -0
  59. netgen/include/csg/csg.hpp +43 -0
  60. netgen/include/csg/csgeom.hpp +389 -0
  61. netgen/include/csg/csgparser.hpp +101 -0
  62. netgen/include/csg/curve2d.hpp +67 -0
  63. netgen/include/csg/edgeflw.hpp +112 -0
  64. netgen/include/csg/explicitcurve2d.hpp +113 -0
  65. netgen/include/csg/extrusion.hpp +185 -0
  66. netgen/include/csg/gencyl.hpp +70 -0
  67. netgen/include/csg/geoml.hpp +16 -0
  68. netgen/include/csg/identify.hpp +213 -0
  69. netgen/include/csg/manifold.hpp +29 -0
  70. netgen/include/csg/meshsurf.hpp +46 -0
  71. netgen/include/csg/polyhedra.hpp +121 -0
  72. netgen/include/csg/revolution.hpp +180 -0
  73. netgen/include/csg/singularref.hpp +84 -0
  74. netgen/include/csg/solid.hpp +295 -0
  75. netgen/include/csg/specpoin.hpp +194 -0
  76. netgen/include/csg/spline3d.hpp +99 -0
  77. netgen/include/csg/splinesurface.hpp +85 -0
  78. netgen/include/csg/surface.hpp +394 -0
  79. netgen/include/csg/triapprox.hpp +63 -0
  80. netgen/include/csg/vscsg.hpp +34 -0
  81. netgen/include/general/autodiff.hpp +356 -0
  82. netgen/include/general/autoptr.hpp +39 -0
  83. netgen/include/general/gzstream.h +121 -0
  84. netgen/include/general/hashtabl.hpp +1692 -0
  85. netgen/include/general/myadt.hpp +48 -0
  86. netgen/include/general/mystring.hpp +226 -0
  87. netgen/include/general/netgenout.hpp +205 -0
  88. netgen/include/general/ngarray.hpp +797 -0
  89. netgen/include/general/ngbitarray.hpp +149 -0
  90. netgen/include/general/ngpython.hpp +74 -0
  91. netgen/include/general/optmem.hpp +44 -0
  92. netgen/include/general/parthreads.hpp +138 -0
  93. netgen/include/general/seti.hpp +50 -0
  94. netgen/include/general/sort.hpp +47 -0
  95. netgen/include/general/spbita2d.hpp +59 -0
  96. netgen/include/general/stack.hpp +114 -0
  97. netgen/include/general/table.hpp +280 -0
  98. netgen/include/general/template.hpp +509 -0
  99. netgen/include/geom2d/csg2d.hpp +750 -0
  100. netgen/include/geom2d/geometry2d.hpp +280 -0
  101. netgen/include/geom2d/spline2d.hpp +234 -0
  102. netgen/include/geom2d/vsgeom2d.hpp +28 -0
  103. netgen/include/gprim/adtree.hpp +1392 -0
  104. netgen/include/gprim/geom2d.hpp +858 -0
  105. netgen/include/gprim/geom3d.hpp +749 -0
  106. netgen/include/gprim/geomfuncs.hpp +212 -0
  107. netgen/include/gprim/geomobjects.hpp +544 -0
  108. netgen/include/gprim/geomops.hpp +404 -0
  109. netgen/include/gprim/geomtest3d.hpp +101 -0
  110. netgen/include/gprim/gprim.hpp +33 -0
  111. netgen/include/gprim/spline.hpp +778 -0
  112. netgen/include/gprim/splinegeometry.hpp +73 -0
  113. netgen/include/gprim/transform3d.hpp +216 -0
  114. netgen/include/include/acisgeom.hpp +3 -0
  115. netgen/include/include/csg.hpp +1 -0
  116. netgen/include/include/geometry2d.hpp +1 -0
  117. netgen/include/include/gprim.hpp +1 -0
  118. netgen/include/include/incopengl.hpp +62 -0
  119. netgen/include/include/inctcl.hpp +13 -0
  120. netgen/include/include/incvis.hpp +6 -0
  121. netgen/include/include/linalg.hpp +1 -0
  122. netgen/include/include/meshing.hpp +1 -0
  123. netgen/include/include/myadt.hpp +1 -0
  124. netgen/include/include/mydefs.hpp +70 -0
  125. netgen/include/include/mystdlib.h +59 -0
  126. netgen/include/include/netgen_config.hpp +27 -0
  127. netgen/include/include/netgen_version.hpp +9 -0
  128. netgen/include/include/nginterface_v2_impl.hpp +395 -0
  129. netgen/include/include/ngsimd.hpp +1 -0
  130. netgen/include/include/occgeom.hpp +1 -0
  131. netgen/include/include/opti.hpp +1 -0
  132. netgen/include/include/parallel.hpp +1 -0
  133. netgen/include/include/stlgeom.hpp +1 -0
  134. netgen/include/include/visual.hpp +1 -0
  135. netgen/include/interface/rw_medit.hpp +11 -0
  136. netgen/include/interface/writeuser.hpp +80 -0
  137. netgen/include/linalg/densemat.hpp +414 -0
  138. netgen/include/linalg/linalg.hpp +29 -0
  139. netgen/include/linalg/opti.hpp +142 -0
  140. netgen/include/linalg/polynomial.hpp +47 -0
  141. netgen/include/linalg/vector.hpp +217 -0
  142. netgen/include/meshing/adfront2.hpp +274 -0
  143. netgen/include/meshing/adfront3.hpp +332 -0
  144. netgen/include/meshing/basegeom.hpp +370 -0
  145. netgen/include/meshing/bcfunctions.hpp +53 -0
  146. netgen/include/meshing/bisect.hpp +72 -0
  147. netgen/include/meshing/boundarylayer.hpp +113 -0
  148. netgen/include/meshing/classifyhpel.hpp +1984 -0
  149. netgen/include/meshing/clusters.hpp +46 -0
  150. netgen/include/meshing/curvedelems.hpp +274 -0
  151. netgen/include/meshing/delaunay2d.hpp +73 -0
  152. netgen/include/meshing/fieldlines.hpp +103 -0
  153. netgen/include/meshing/findip.hpp +198 -0
  154. netgen/include/meshing/findip2.hpp +103 -0
  155. netgen/include/meshing/geomsearch.hpp +69 -0
  156. netgen/include/meshing/global.hpp +54 -0
  157. netgen/include/meshing/hpref_hex.hpp +330 -0
  158. netgen/include/meshing/hpref_prism.hpp +3405 -0
  159. netgen/include/meshing/hpref_pyramid.hpp +154 -0
  160. netgen/include/meshing/hpref_quad.hpp +2082 -0
  161. netgen/include/meshing/hpref_segm.hpp +122 -0
  162. netgen/include/meshing/hpref_tet.hpp +4230 -0
  163. netgen/include/meshing/hpref_trig.hpp +848 -0
  164. netgen/include/meshing/hprefinement.hpp +366 -0
  165. netgen/include/meshing/improve2.hpp +178 -0
  166. netgen/include/meshing/improve3.hpp +151 -0
  167. netgen/include/meshing/localh.hpp +223 -0
  168. netgen/include/meshing/meshclass.hpp +1076 -0
  169. netgen/include/meshing/meshfunc.hpp +47 -0
  170. netgen/include/meshing/meshing.hpp +63 -0
  171. netgen/include/meshing/meshing2.hpp +163 -0
  172. netgen/include/meshing/meshing3.hpp +123 -0
  173. netgen/include/meshing/meshtool.hpp +90 -0
  174. netgen/include/meshing/meshtype.hpp +1930 -0
  175. netgen/include/meshing/msghandler.hpp +62 -0
  176. netgen/include/meshing/paralleltop.hpp +172 -0
  177. netgen/include/meshing/python_mesh.hpp +206 -0
  178. netgen/include/meshing/ruler2.hpp +172 -0
  179. netgen/include/meshing/ruler3.hpp +211 -0
  180. netgen/include/meshing/soldata.hpp +141 -0
  181. netgen/include/meshing/specials.hpp +17 -0
  182. netgen/include/meshing/surfacegeom.hpp +73 -0
  183. netgen/include/meshing/topology.hpp +1003 -0
  184. netgen/include/meshing/validate.hpp +21 -0
  185. netgen/include/meshing/visual_interface.hpp +71 -0
  186. netgen/include/mydefs.hpp +70 -0
  187. netgen/include/nginterface.h +474 -0
  188. netgen/include/nginterface_v2.hpp +406 -0
  189. netgen/include/nglib.h +697 -0
  190. netgen/include/nglib_occ.h +50 -0
  191. netgen/include/occ/occ_edge.hpp +47 -0
  192. netgen/include/occ/occ_face.hpp +52 -0
  193. netgen/include/occ/occ_solid.hpp +23 -0
  194. netgen/include/occ/occ_utils.hpp +376 -0
  195. netgen/include/occ/occ_vertex.hpp +30 -0
  196. netgen/include/occ/occgeom.hpp +659 -0
  197. netgen/include/occ/occmeshsurf.hpp +168 -0
  198. netgen/include/occ/vsocc.hpp +33 -0
  199. netgen/include/pybind11/LICENSE +29 -0
  200. netgen/include/pybind11/attr.h +722 -0
  201. netgen/include/pybind11/buffer_info.h +208 -0
  202. netgen/include/pybind11/cast.h +2361 -0
  203. netgen/include/pybind11/chrono.h +228 -0
  204. netgen/include/pybind11/common.h +2 -0
  205. netgen/include/pybind11/complex.h +74 -0
  206. netgen/include/pybind11/conduit/README.txt +15 -0
  207. netgen/include/pybind11/conduit/pybind11_conduit_v1.h +116 -0
  208. netgen/include/pybind11/conduit/pybind11_platform_abi_id.h +87 -0
  209. netgen/include/pybind11/conduit/wrap_include_python_h.h +72 -0
  210. netgen/include/pybind11/critical_section.h +56 -0
  211. netgen/include/pybind11/detail/class.h +823 -0
  212. netgen/include/pybind11/detail/common.h +1348 -0
  213. netgen/include/pybind11/detail/cpp_conduit.h +75 -0
  214. netgen/include/pybind11/detail/descr.h +226 -0
  215. netgen/include/pybind11/detail/dynamic_raw_ptr_cast_if_possible.h +39 -0
  216. netgen/include/pybind11/detail/exception_translation.h +71 -0
  217. netgen/include/pybind11/detail/function_record_pyobject.h +191 -0
  218. netgen/include/pybind11/detail/init.h +538 -0
  219. netgen/include/pybind11/detail/internals.h +799 -0
  220. netgen/include/pybind11/detail/native_enum_data.h +209 -0
  221. netgen/include/pybind11/detail/pybind11_namespace_macros.h +82 -0
  222. netgen/include/pybind11/detail/struct_smart_holder.h +378 -0
  223. netgen/include/pybind11/detail/type_caster_base.h +1591 -0
  224. netgen/include/pybind11/detail/typeid.h +65 -0
  225. netgen/include/pybind11/detail/using_smart_holder.h +22 -0
  226. netgen/include/pybind11/detail/value_and_holder.h +90 -0
  227. netgen/include/pybind11/eigen/common.h +9 -0
  228. netgen/include/pybind11/eigen/matrix.h +723 -0
  229. netgen/include/pybind11/eigen/tensor.h +521 -0
  230. netgen/include/pybind11/eigen.h +12 -0
  231. netgen/include/pybind11/embed.h +320 -0
  232. netgen/include/pybind11/eval.h +161 -0
  233. netgen/include/pybind11/functional.h +147 -0
  234. netgen/include/pybind11/gil.h +199 -0
  235. netgen/include/pybind11/gil_safe_call_once.h +102 -0
  236. netgen/include/pybind11/gil_simple.h +37 -0
  237. netgen/include/pybind11/iostream.h +265 -0
  238. netgen/include/pybind11/native_enum.h +67 -0
  239. netgen/include/pybind11/numpy.h +2312 -0
  240. netgen/include/pybind11/operators.h +202 -0
  241. netgen/include/pybind11/options.h +92 -0
  242. netgen/include/pybind11/pybind11.h +3645 -0
  243. netgen/include/pybind11/pytypes.h +2680 -0
  244. netgen/include/pybind11/stl/filesystem.h +114 -0
  245. netgen/include/pybind11/stl.h +666 -0
  246. netgen/include/pybind11/stl_bind.h +858 -0
  247. netgen/include/pybind11/subinterpreter.h +299 -0
  248. netgen/include/pybind11/trampoline_self_life_support.h +65 -0
  249. netgen/include/pybind11/type_caster_pyobject_ptr.h +61 -0
  250. netgen/include/pybind11/typing.h +298 -0
  251. netgen/include/pybind11/warnings.h +75 -0
  252. netgen/include/stlgeom/meshstlsurface.hpp +67 -0
  253. netgen/include/stlgeom/stlgeom.hpp +491 -0
  254. netgen/include/stlgeom/stlline.hpp +193 -0
  255. netgen/include/stlgeom/stltool.hpp +331 -0
  256. netgen/include/stlgeom/stltopology.hpp +419 -0
  257. netgen/include/stlgeom/vsstl.hpp +58 -0
  258. netgen/include/visualization/meshdoc.hpp +42 -0
  259. netgen/include/visualization/mvdraw.hpp +325 -0
  260. netgen/include/visualization/vispar.hpp +128 -0
  261. netgen/include/visualization/visual.hpp +28 -0
  262. netgen/include/visualization/visual_api.hpp +10 -0
  263. netgen/include/visualization/vssolution.hpp +399 -0
  264. netgen/lib/libnggui.lib +0 -0
  265. netgen/lib/ngcore.lib +0 -0
  266. netgen/lib/nglib.lib +0 -0
  267. netgen/lib/togl.lib +0 -0
  268. netgen/libnggui.dll +0 -0
  269. netgen/libngguipy.lib +0 -0
  270. netgen/libngguipy.pyd +0 -0
  271. netgen/libngpy/_NgOCC.pyi +1545 -0
  272. netgen/libngpy/__init__.pyi +7 -0
  273. netgen/libngpy/_csg.pyi +259 -0
  274. netgen/libngpy/_geom2d.pyi +323 -0
  275. netgen/libngpy/_meshing.pyi +1111 -0
  276. netgen/libngpy/_stl.pyi +131 -0
  277. netgen/libngpy.lib +0 -0
  278. netgen/libngpy.pyd +0 -0
  279. netgen/meshing.py +65 -0
  280. netgen/ngcore.dll +0 -0
  281. netgen/nglib.dll +0 -0
  282. netgen/occ.py +52 -0
  283. netgen/read_gmsh.py +259 -0
  284. netgen/read_meshio.py +22 -0
  285. netgen/stl.py +2 -0
  286. netgen/togl.dll +0 -0
  287. netgen/version.py +2 -0
  288. netgen/webgui.py +529 -0
  289. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/boundarycondition.geo +16 -0
  290. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/boxcyl.geo +32 -0
  291. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/circle_on_cube.geo +27 -0
  292. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cone.geo +13 -0
  293. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cube.geo +16 -0
  294. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cubeandring.geo +55 -0
  295. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cubeandspheres.geo +21 -0
  296. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cubemcyl.geo +18 -0
  297. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cubemsphere.geo +19 -0
  298. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cylinder.geo +12 -0
  299. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/cylsphere.geo +12 -0
  300. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/doc/ng4.pdf +0 -0
  301. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/ellipsoid.geo +8 -0
  302. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/ellipticcyl.geo +10 -0
  303. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/extrusion.geo +99 -0
  304. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/fichera.geo +24 -0
  305. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/frame.step +11683 -0
  306. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/hinge.stl +8486 -0
  307. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/lshape3d.geo +26 -0
  308. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/manyholes.geo +26 -0
  309. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/manyholes2.geo +26 -0
  310. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/matrix.geo +27 -0
  311. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/ortho.geo +11 -0
  312. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/part1.stl +2662 -0
  313. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/period.geo +33 -0
  314. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/py_tutorials/exportNeutral.py +26 -0
  315. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/py_tutorials/mesh.py +19 -0
  316. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/py_tutorials/shaft.geo +65 -0
  317. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/revolution.geo +18 -0
  318. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/screw.step +1694 -0
  319. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/sculpture.geo +13 -0
  320. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/shaft.geo +65 -0
  321. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/shell.geo +10 -0
  322. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/sphere.geo +8 -0
  323. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/sphereincube.geo +17 -0
  324. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/square.in2d +35 -0
  325. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/squarecircle.in2d +48 -0
  326. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/squarehole.in2d +47 -0
  327. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/torus.geo +8 -0
  328. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/trafo.geo +57 -0
  329. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/twobricks.geo +15 -0
  330. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/twocubes.geo +18 -0
  331. netgen_mesher-6.2.2506.post35.dev0.data/data/share/netgen/twocyl.geo +16 -0
  332. netgen_mesher-6.2.2506.post35.dev0.dist-info/METADATA +15 -0
  333. netgen_mesher-6.2.2506.post35.dev0.dist-info/RECORD +340 -0
  334. netgen_mesher-6.2.2506.post35.dev0.dist-info/WHEEL +5 -0
  335. netgen_mesher-6.2.2506.post35.dev0.dist-info/entry_points.txt +2 -0
  336. netgen_mesher-6.2.2506.post35.dev0.dist-info/licenses/AUTHORS +1 -0
  337. netgen_mesher-6.2.2506.post35.dev0.dist-info/licenses/LICENSE +504 -0
  338. netgen_mesher-6.2.2506.post35.dev0.dist-info/top_level.txt +2 -0
  339. pyngcore/__init__.py +1 -0
  340. pyngcore/pyngcore.cp314-win_amd64.pyd +0 -0
@@ -0,0 +1,2082 @@
1
+ // HP_QUAD
2
+ int refquad_splitedges[][3] =
3
+ {
4
+ { 0, 0, 0 }
5
+ };
6
+ HPREF_ELEMENT_TYPE refquad_newelstypes[] =
7
+ {
8
+ HP_QUAD,
9
+ HP_NONE,
10
+ };
11
+ int refquad_newels[][8] =
12
+ {
13
+ { 1, 2, 3, 4 },
14
+ };
15
+ HPRef_Struct refquad =
16
+ {
17
+ HP_QUAD,
18
+ refquad_splitedges,
19
+ 0, 0,
20
+ refquad_newelstypes,
21
+ refquad_newels
22
+ };
23
+
24
+
25
+
26
+
27
+
28
+
29
+
30
+ // HP_QUAD_SINGCORNER
31
+ int refquad_singcorner_splitedges[][3] =
32
+ {
33
+ { 1, 2, 5 },
34
+ { 1, 4, 6 },
35
+ { 0, 0, 0 }
36
+ };
37
+ HPREF_ELEMENT_TYPE refquad_singcorner_newelstypes[] =
38
+ {
39
+ HP_TRIG_SINGCORNER,
40
+ HP_QUAD,
41
+ HP_TRIG,
42
+ HP_NONE,
43
+ };
44
+ int refquad_singcorner_newels[][8] =
45
+ {
46
+ { 1, 5, 6 },
47
+ { 2, 4, 6, 5 },
48
+ { 2, 3, 4 },
49
+ };
50
+ HPRef_Struct refquad_singcorner =
51
+ {
52
+ HP_QUAD,
53
+ refquad_singcorner_splitedges,
54
+ 0, 0,
55
+ refquad_singcorner_newelstypes,
56
+ refquad_singcorner_newels
57
+ };
58
+
59
+
60
+
61
+
62
+
63
+ // HP_DUMMY_QUAD_SINGCORNER
64
+ int refdummyquad_singcorner_splitedges[][3] =
65
+ {
66
+ { 0, 0, 0 }
67
+ };
68
+ HPREF_ELEMENT_TYPE refdummyquad_singcorner_newelstypes[] =
69
+ {
70
+ HP_TRIG_SINGCORNER,
71
+ HP_TRIG,
72
+ HP_NONE,
73
+ };
74
+ int refdummyquad_singcorner_newels[][8] =
75
+ {
76
+ { 1, 2, 4 },
77
+ { 4, 2, 3 },
78
+ };
79
+ HPRef_Struct refdummyquad_singcorner =
80
+ {
81
+ HP_QUAD,
82
+ refdummyquad_singcorner_splitedges,
83
+ 0, 0,
84
+ refdummyquad_singcorner_newelstypes,
85
+ refdummyquad_singcorner_newels
86
+ };
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+ // HP_QUAD_SINGEDGE
95
+ int refquad_singedge_splitedges[][3] =
96
+ {
97
+ { 1, 4, 5 },
98
+ { 2, 3, 6 },
99
+ { 0, 0, 0 }
100
+ };
101
+ HPREF_ELEMENT_TYPE refquad_singedge_newelstypes[] =
102
+ {
103
+ HP_QUAD_SINGEDGE,
104
+ HP_QUAD,
105
+ HP_NONE,
106
+ };
107
+ int refquad_singedge_newels[][8] =
108
+ {
109
+ { 1, 2, 6, 5 },
110
+ { 5, 6, 3, 4 },
111
+ };
112
+ HPRef_Struct refquad_singedge =
113
+ {
114
+ HP_QUAD,
115
+ refquad_singedge_splitedges,
116
+ 0, 0,
117
+ refquad_singedge_newelstypes,
118
+ refquad_singedge_newels
119
+ };
120
+
121
+
122
+
123
+
124
+
125
+
126
+ // HP_QUAD_0E_2VA
127
+ int refquad_0e_2va_splitedges[][3] =
128
+ {
129
+ { 1, 2, 5 },
130
+ { 1, 4, 6 },
131
+ { 2, 1, 7 },
132
+ { 2, 3, 8 },
133
+ { 0, 0, 0 }
134
+ };
135
+ HPREF_ELEMENT_TYPE refquad_0e_2va_newelstypes[] =
136
+ {
137
+ HP_TRIG_SINGCORNER,
138
+ HP_TRIG_SINGCORNER,
139
+ HP_QUAD,
140
+ HP_QUAD,
141
+ HP_NONE,
142
+ };
143
+ int refquad_0e_2va_newels[][8] =
144
+ {
145
+ { 1, 5, 6 },
146
+ { 2, 8, 7 },
147
+ { 5, 7, 8, 6 },
148
+ { 6, 8, 3, 4 },
149
+ };
150
+ HPRef_Struct refquad_0e_2va =
151
+ {
152
+ HP_QUAD,
153
+ refquad_0e_2va_splitedges,
154
+ 0, 0,
155
+ refquad_0e_2va_newelstypes,
156
+ refquad_0e_2va_newels
157
+ };
158
+
159
+
160
+
161
+ // HP_QUAD_0E_2VB
162
+ int refquad_0e_2vb_splitedges[][3] =
163
+ {
164
+ { 1, 2, 5 },
165
+ { 1, 4, 6 },
166
+ { 3, 4, 7 },
167
+ { 3, 2, 8 },
168
+ { 0, 0, 0 }
169
+ };
170
+ HPREF_ELEMENT_TYPE refquad_0e_2vb_newelstypes[] =
171
+ {
172
+ HP_TRIG_SINGCORNER,
173
+ HP_TRIG_SINGCORNER,
174
+ HP_QUAD,
175
+ HP_QUAD,
176
+ HP_NONE,
177
+ };
178
+ int refquad_0e_2vb_newels[][8] =
179
+ {
180
+ { 1, 5, 6 },
181
+ { 3, 7, 8 },
182
+ { 5, 2, 4, 6 },
183
+ { 2, 8, 7, 4 },
184
+ };
185
+ HPRef_Struct refquad_0e_2vb =
186
+ {
187
+ HP_QUAD,
188
+ refquad_0e_2vb_splitedges,
189
+ 0, 0,
190
+ refquad_0e_2vb_newelstypes,
191
+ refquad_0e_2vb_newels
192
+ };
193
+
194
+
195
+
196
+
197
+ // HP_QUAD_0E_3V
198
+ int refquad_0e_3v_splitedges[][3] =
199
+ {
200
+ { 1, 2, 5 },
201
+ { 1, 4, 6 },
202
+ { 2, 1, 7 },
203
+ { 2, 3, 8 },
204
+ { 3, 2, 9 },
205
+ { 3, 4, 10 },
206
+ { 0, 0, 0 }
207
+ };
208
+
209
+ int refquad_0e_3v_splitfaces[][4] =
210
+ {
211
+ { 2, 3, 1, 14 },
212
+ { 0, 0, 0, 0 },
213
+ };
214
+
215
+ HPREF_ELEMENT_TYPE refquad_0e_3v_newelstypes[] =
216
+ {
217
+ HP_TRIG_SINGCORNER,
218
+ HP_DUMMY_QUAD_SINGCORNER,
219
+ HP_TRIG_SINGCORNER,
220
+ HP_QUAD,
221
+ HP_QUAD,
222
+ HP_QUAD,
223
+ HP_NONE,
224
+ };
225
+ int refquad_0e_3v_newels[][8] =
226
+ {
227
+ { 1, 5, 6 },
228
+ { 2, 8, 14, 7 },
229
+ { 3, 10, 9 },
230
+ { 5, 7, 14, 6 },
231
+ { 8, 9, 10, 14 },
232
+ { 6, 14, 10, 4 },
233
+ };
234
+ HPRef_Struct refquad_0e_3v =
235
+ {
236
+ HP_QUAD,
237
+ refquad_0e_3v_splitedges,
238
+ refquad_0e_3v_splitfaces,
239
+ 0,
240
+ refquad_0e_3v_newelstypes,
241
+ refquad_0e_3v_newels
242
+ };
243
+
244
+
245
+
246
+
247
+ // HP_QUAD_0E_4V
248
+ int refquad_0e_4v_splitedges[][3] =
249
+ {
250
+ { 1, 2, 5 },
251
+ { 1, 4, 6 },
252
+ { 2, 1, 7 },
253
+ { 2, 3, 8 },
254
+ { 3, 2, 9 },
255
+ { 3, 4, 10 },
256
+ { 4, 1, 11 },
257
+ { 4, 3, 12 },
258
+ { 0, 0, 0 }
259
+ };
260
+
261
+ int refquad_0e_4v_splitfaces[][4] =
262
+ {
263
+ { 1, 2, 4, 13 },
264
+ { 2, 3, 1, 14 },
265
+ { 3, 4, 2, 15 },
266
+ { 4, 1, 3, 16 },
267
+ { 0, 0, 0, 0 },
268
+ };
269
+
270
+ HPREF_ELEMENT_TYPE refquad_0e_4v_newelstypes[] =
271
+ {
272
+ HP_DUMMY_QUAD_SINGCORNER,
273
+ HP_DUMMY_QUAD_SINGCORNER,
274
+ HP_DUMMY_QUAD_SINGCORNER,
275
+ HP_DUMMY_QUAD_SINGCORNER,
276
+
277
+ HP_QUAD,
278
+ HP_QUAD,
279
+ HP_QUAD,
280
+ HP_QUAD,
281
+
282
+ HP_QUAD,
283
+ HP_NONE,
284
+ };
285
+ int refquad_0e_4v_newels[][8] =
286
+ {
287
+ { 1, 5, 13, 6 },
288
+ { 2, 8, 14, 7 },
289
+ { 3, 10, 15, 9 },
290
+ { 4, 11, 16, 12 },
291
+ { 5, 7, 14, 13 },
292
+ { 8, 9, 15, 14 },
293
+ { 10, 12, 16, 15 },
294
+ { 11, 6, 13, 16 },
295
+ { 13, 14, 15, 16 }
296
+ };
297
+ HPRef_Struct refquad_0e_4v =
298
+ {
299
+ HP_QUAD,
300
+ refquad_0e_4v_splitedges,
301
+ refquad_0e_4v_splitfaces,
302
+ 0,
303
+ refquad_0e_4v_newelstypes,
304
+ refquad_0e_4v_newels
305
+ };
306
+
307
+
308
+
309
+
310
+
311
+
312
+
313
+
314
+ // HP_QUAD_1E_1VA
315
+ int refquad_1e_1va_splitedges[][3] =
316
+ {
317
+ { 1, 4, 5 },
318
+ { 2, 3, 6 },
319
+ { 1, 2, 7 },
320
+ { 0, 0, 0 }
321
+ };
322
+ HPREF_ELEMENT_TYPE refquad_1e_1va_newelstypes[] =
323
+ {
324
+ HP_QUAD_SINGEDGE,
325
+ HP_QUAD,
326
+ HP_TRIG_SINGEDGECORNER1,
327
+ HP_NONE,
328
+ };
329
+ int refquad_1e_1va_newels[][8] =
330
+ {
331
+ { 7, 2, 6, 5 },
332
+ { 5, 6, 3, 4 },
333
+ { 1, 7, 5 },
334
+ };
335
+ HPRef_Struct refquad_1e_1va =
336
+ {
337
+ HP_QUAD,
338
+ refquad_1e_1va_splitedges,
339
+ 0, 0,
340
+ refquad_1e_1va_newelstypes,
341
+ refquad_1e_1va_newels
342
+ };
343
+
344
+
345
+
346
+
347
+ // HP_QUAD_1E_1VB
348
+ int refquad_1e_1vb_splitedges[][3] =
349
+ {
350
+ { 1, 4, 5 },
351
+ { 2, 3, 6 },
352
+ { 2, 1, 7 },
353
+ { 0, 0, 0 }
354
+ };
355
+ HPREF_ELEMENT_TYPE refquad_1e_1vb_newelstypes[] =
356
+ {
357
+ HP_QUAD_SINGEDGE,
358
+ HP_QUAD,
359
+ HP_TRIG_SINGEDGECORNER2,
360
+ HP_NONE,
361
+ };
362
+ int refquad_1e_1vb_newels[][8] =
363
+ {
364
+ { 1, 7, 6, 5 },
365
+ { 5, 6, 3, 4 },
366
+ { 7, 2, 6 },
367
+ };
368
+ HPRef_Struct refquad_1e_1vb =
369
+ {
370
+ HP_QUAD,
371
+ refquad_1e_1vb_splitedges,
372
+ 0, 0,
373
+ refquad_1e_1vb_newelstypes,
374
+ refquad_1e_1vb_newels
375
+ };
376
+
377
+
378
+
379
+ // HP_QUAD_1E_1VC
380
+ int refquad_1e_1vc_splitedges[][3] =
381
+ {
382
+ { 1, 4, 5 },
383
+ { 2, 3, 6 },
384
+ { 3, 2, 7 },
385
+ { 3, 4, 8 },
386
+ { 0, 0, 0 }
387
+ };
388
+ HPREF_ELEMENT_TYPE refquad_1e_1vc_newelstypes[] =
389
+ {
390
+ HP_QUAD_SINGEDGE,
391
+ HP_TRIG,
392
+ HP_QUAD,
393
+ HP_TRIG_SINGCORNER,
394
+ HP_NONE,
395
+ };
396
+ int refquad_1e_1vc_newels[][8] =
397
+ {
398
+ { 1, 2, 6, 5 },
399
+ { 5, 6, 4 },
400
+ { 4, 6, 7, 8 },
401
+ { 3, 8, 7 }
402
+ };
403
+ HPRef_Struct refquad_1e_1vc =
404
+ {
405
+ HP_QUAD,
406
+ refquad_1e_1vc_splitedges,
407
+ 0, 0,
408
+ refquad_1e_1vc_newelstypes,
409
+ refquad_1e_1vc_newels
410
+ };
411
+
412
+
413
+
414
+ // HP_QUAD_1E_1VD
415
+ int refquad_1e_1vd_splitedges[][3] =
416
+ {
417
+ { 1, 4, 5 },
418
+ { 2, 3, 6 },
419
+ { 4, 1, 7 },
420
+ { 4, 3, 8 },
421
+ { 0, 0, 0 }
422
+ };
423
+ HPREF_ELEMENT_TYPE refquad_1e_1vd_newelstypes[] =
424
+ {
425
+ HP_QUAD_SINGEDGE,
426
+ HP_TRIG,
427
+ HP_QUAD,
428
+ HP_TRIG_SINGCORNER,
429
+ HP_NONE,
430
+ };
431
+ int refquad_1e_1vd_newels[][8] =
432
+ {
433
+ { 1, 2, 6, 5 },
434
+ { 5, 6, 3 },
435
+ { 5, 3, 8, 7 },
436
+ { 4, 7, 8 }
437
+ };
438
+ HPRef_Struct refquad_1e_1vd =
439
+ {
440
+ HP_QUAD,
441
+ refquad_1e_1vd_splitedges,
442
+ 0, 0,
443
+ refquad_1e_1vd_newelstypes,
444
+ refquad_1e_1vd_newels
445
+ };
446
+
447
+
448
+
449
+
450
+
451
+
452
+
453
+ // HP_QUAD_1E_2VA
454
+ int refquad_1e_2va_splitedges[][3] =
455
+ {
456
+ { 1, 4, 5 },
457
+ { 2, 3, 6 },
458
+ { 1, 2, 7 },
459
+ { 2, 1, 8 },
460
+ { 0, 0, 0 }
461
+ };
462
+ HPREF_ELEMENT_TYPE refquad_1e_2va_newelstypes[] =
463
+ {
464
+ HP_QUAD_SINGEDGE,
465
+ HP_QUAD,
466
+ HP_TRIG_SINGEDGECORNER1,
467
+ HP_TRIG_SINGEDGECORNER2,
468
+ HP_NONE,
469
+ };
470
+ int refquad_1e_2va_newels[][8] =
471
+ {
472
+ { 7, 8, 6, 5 },
473
+ { 5, 6, 3, 4 },
474
+ { 1, 7, 5 },
475
+ { 8, 2, 6 }
476
+ };
477
+ HPRef_Struct refquad_1e_2va =
478
+ {
479
+ HP_QUAD,
480
+ refquad_1e_2va_splitedges,
481
+ 0, 0,
482
+ refquad_1e_2va_newelstypes,
483
+ refquad_1e_2va_newels
484
+ };
485
+
486
+
487
+
488
+
489
+ // HP_QUAD_1E_2VB
490
+ int refquad_1e_2vb_splitedges[][3] =
491
+ {
492
+ { 1, 4, 5 },
493
+ { 2, 3, 6 },
494
+ { 1, 2, 7 },
495
+ { 3, 2, 8 },
496
+ { 3, 4, 9 },
497
+ { 0, 0, 0 }
498
+ };
499
+ HPREF_ELEMENT_TYPE refquad_1e_2vb_newelstypes[] =
500
+ {
501
+ HP_QUAD_SINGEDGE,
502
+ HP_TRIG_SINGEDGECORNER1,
503
+ HP_TRIG,
504
+ HP_QUAD,
505
+ HP_TRIG_SINGCORNER,
506
+ HP_NONE,
507
+ };
508
+ int refquad_1e_2vb_newels[][8] =
509
+ {
510
+ { 7, 2, 6, 5 },
511
+ { 1, 7, 5 },
512
+ { 5, 6, 4 },
513
+ { 4, 6, 8, 9 },
514
+ { 3, 9, 8 }
515
+ };
516
+ HPRef_Struct refquad_1e_2vb =
517
+ {
518
+ HP_QUAD,
519
+ refquad_1e_2vb_splitedges,
520
+ 0, 0,
521
+ refquad_1e_2vb_newelstypes,
522
+ refquad_1e_2vb_newels
523
+ };
524
+
525
+
526
+
527
+
528
+ // HP_QUAD_1E_2VC
529
+ int refquad_1e_2vc_splitedges[][3] =
530
+ {
531
+ { 1, 4, 5 },
532
+ { 2, 3, 6 },
533
+ { 1, 2, 7 },
534
+ { 4, 1, 8 },
535
+ { 4, 3, 9 },
536
+ { 0, 0, 0 }
537
+ };
538
+ HPREF_ELEMENT_TYPE refquad_1e_2vc_newelstypes[] =
539
+ {
540
+ HP_QUAD_SINGEDGE,
541
+ HP_TRIG_SINGEDGECORNER1,
542
+ HP_TRIG,
543
+ HP_QUAD,
544
+ HP_TRIG_SINGCORNER,
545
+ HP_NONE,
546
+ };
547
+ int refquad_1e_2vc_newels[][8] =
548
+ {
549
+ { 7, 2, 6, 5 },
550
+ { 1, 7, 5 },
551
+ { 5, 6, 3 },
552
+ { 5, 3, 9, 8 },
553
+ { 4, 8, 9 }
554
+ };
555
+ HPRef_Struct refquad_1e_2vc =
556
+ {
557
+ HP_QUAD,
558
+ refquad_1e_2vc_splitedges,
559
+ 0, 0,
560
+ refquad_1e_2vc_newelstypes,
561
+ refquad_1e_2vc_newels
562
+ };
563
+
564
+
565
+
566
+
567
+ // HP_QUAD_1E_2VD
568
+ int refquad_1e_2vd_splitedges[][3] =
569
+ {
570
+ { 1, 4, 5 },
571
+ { 2, 3, 6 },
572
+ { 2, 1, 7 },
573
+ { 3, 2, 8 },
574
+ { 3, 4, 9 },
575
+ { 0, 0, 0 }
576
+ };
577
+ HPREF_ELEMENT_TYPE refquad_1e_2vd_newelstypes[] =
578
+ {
579
+ HP_QUAD_SINGEDGE,
580
+ HP_TRIG_SINGEDGECORNER2,
581
+ HP_TRIG,
582
+ HP_QUAD,
583
+ HP_TRIG_SINGCORNER,
584
+ HP_NONE,
585
+ };
586
+ int refquad_1e_2vd_newels[][8] =
587
+ {
588
+ { 1, 7, 6, 5 },
589
+ { 7, 2, 6 },
590
+ { 5, 6, 4 },
591
+ { 4, 6, 8, 9 },
592
+ { 3, 9, 8 }
593
+ };
594
+ HPRef_Struct refquad_1e_2vd =
595
+ {
596
+ HP_QUAD,
597
+ refquad_1e_2vd_splitedges,
598
+ 0, 0,
599
+ refquad_1e_2vd_newelstypes,
600
+ refquad_1e_2vd_newels
601
+ };
602
+
603
+
604
+
605
+
606
+
607
+ // HP_QUAD_1E_2VE
608
+ int refquad_1e_2ve_splitedges[][3] =
609
+ {
610
+ { 1, 4, 5 },
611
+ { 2, 3, 6 },
612
+ { 2, 1, 7 },
613
+ { 4, 1, 8 },
614
+ { 4, 3, 9 },
615
+ { 0, 0, 0 }
616
+ };
617
+ HPREF_ELEMENT_TYPE refquad_1e_2ve_newelstypes[] =
618
+ {
619
+ HP_QUAD_SINGEDGE,
620
+ HP_TRIG_SINGEDGECORNER2,
621
+ HP_TRIG,
622
+ HP_QUAD,
623
+ HP_TRIG_SINGCORNER,
624
+ HP_NONE,
625
+ };
626
+ int refquad_1e_2ve_newels[][8] =
627
+ {
628
+ { 1, 7, 6, 5 },
629
+ { 7, 2, 6 },
630
+ { 5, 6, 3 },
631
+ { 5, 3, 9, 8 },
632
+ { 4, 8, 9 }
633
+ };
634
+ HPRef_Struct refquad_1e_2ve =
635
+ {
636
+ HP_QUAD,
637
+ refquad_1e_2ve_splitedges,
638
+ 0, 0,
639
+ refquad_1e_2ve_newelstypes,
640
+ refquad_1e_2ve_newels
641
+ };
642
+
643
+
644
+
645
+
646
+
647
+
648
+ // HP_QUAD_1E_2VF
649
+ int refquad_1e_2vf_splitedges[][3] =
650
+ {
651
+ { 1, 4, 5 },
652
+ { 2, 3, 6 },
653
+ { 4, 1, 7 },
654
+ { 4, 3, 8 },
655
+ { 3, 2, 9 },
656
+ { 3, 4, 10 },
657
+ { 0, 0, 0 }
658
+ };
659
+ HPREF_ELEMENT_TYPE refquad_1e_2vf_newelstypes[] =
660
+ {
661
+ HP_QUAD_SINGEDGE,
662
+ HP_QUAD,
663
+ HP_QUAD,
664
+ HP_TRIG_SINGCORNER,
665
+ HP_TRIG_SINGCORNER,
666
+ HP_NONE,
667
+ };
668
+ int refquad_1e_2vf_newels[][8] =
669
+ {
670
+ { 1, 2, 6, 5 },
671
+ { 5, 6, 9, 7 },
672
+ { 7, 9, 10, 8 },
673
+ { 4, 7, 8 },
674
+ { 3, 10, 9 },
675
+ };
676
+ HPRef_Struct refquad_1e_2vf =
677
+ {
678
+ HP_QUAD,
679
+ refquad_1e_2vf_splitedges,
680
+ 0, 0,
681
+ refquad_1e_2vf_newelstypes,
682
+ refquad_1e_2vf_newels
683
+ };
684
+
685
+
686
+
687
+
688
+
689
+ // HP_QUAD_1E_3VA
690
+ int refquad_1e_3va_splitedges[][3] =
691
+ {
692
+ { 1, 4, 5 },
693
+ { 2, 3, 6 },
694
+ { 1, 2, 7 },
695
+ { 2, 1, 8 },
696
+ { 3, 2, 9 },
697
+ { 3, 4, 10 },
698
+ { 0, 0, 0 }
699
+ };
700
+ HPREF_ELEMENT_TYPE refquad_1e_3va_newelstypes[] =
701
+ {
702
+ HP_TRIG_SINGEDGECORNER1,
703
+ HP_TRIG_SINGEDGECORNER2,
704
+ HP_TRIG_SINGCORNER,
705
+ HP_QUAD_SINGEDGE,
706
+ HP_QUAD,
707
+ HP_TRIG,
708
+ HP_NONE,
709
+ };
710
+ int refquad_1e_3va_newels[][8] =
711
+ {
712
+ { 1, 7, 5 },
713
+ { 8, 2, 6 },
714
+ { 3, 10, 9 },
715
+ { 7, 8, 6, 5 },
716
+ { 4, 6, 9, 10 },
717
+ { 5, 6, 4 }
718
+ };
719
+ HPRef_Struct refquad_1e_3va =
720
+ {
721
+ HP_QUAD,
722
+ refquad_1e_3va_splitedges,
723
+ 0, 0,
724
+ refquad_1e_3va_newelstypes,
725
+ refquad_1e_3va_newels
726
+ };
727
+
728
+
729
+
730
+
731
+
732
+ // HP_QUAD_1E_3VB
733
+ int refquad_1e_3vb_splitedges[][3] =
734
+ {
735
+ { 1, 4, 5 },
736
+ { 2, 3, 6 },
737
+ { 1, 2, 7 },
738
+ { 2, 1, 8 },
739
+ { 4, 1, 9 },
740
+ { 4, 3, 10 },
741
+ { 0, 0, 0 }
742
+ };
743
+ HPREF_ELEMENT_TYPE refquad_1e_3vb_newelstypes[] =
744
+ {
745
+ HP_TRIG_SINGEDGECORNER1,
746
+ HP_TRIG_SINGEDGECORNER2,
747
+ HP_TRIG_SINGCORNER,
748
+ HP_QUAD_SINGEDGE,
749
+ HP_QUAD,
750
+ HP_TRIG,
751
+ HP_NONE,
752
+ };
753
+ int refquad_1e_3vb_newels[][8] =
754
+ {
755
+ { 1, 7, 5 },
756
+ { 8, 2, 6 },
757
+ { 4, 9, 10 },
758
+ { 7, 8, 6, 5 },
759
+ { 5, 3, 10, 9 },
760
+ { 5, 6, 3 }
761
+ };
762
+ HPRef_Struct refquad_1e_3vb =
763
+ {
764
+ HP_QUAD,
765
+ refquad_1e_3vb_splitedges,
766
+ 0, 0,
767
+ refquad_1e_3vb_newelstypes,
768
+ refquad_1e_3vb_newels
769
+ };
770
+
771
+
772
+
773
+
774
+
775
+ // HP_QUAD_1E_3VC
776
+ int refquad_1e_3vc_splitedges[][3] =
777
+ {
778
+ { 1, 4, 5 },
779
+ { 2, 3, 6 },
780
+ { 1, 2, 7 },
781
+ { 3, 2, 8 },
782
+ { 3, 4, 9 },
783
+ { 4, 3, 10 },
784
+ { 4, 1, 11 },
785
+ { 0, 0, 0 }
786
+ };
787
+ HPREF_ELEMENT_TYPE refquad_1e_3vc_newelstypes[] =
788
+ {
789
+ HP_TRIG_SINGEDGECORNER1,
790
+ HP_TRIG_SINGCORNER,
791
+ HP_TRIG_SINGCORNER,
792
+ HP_QUAD_SINGEDGE,
793
+ HP_QUAD,
794
+ HP_QUAD,
795
+ HP_NONE,
796
+ };
797
+ int refquad_1e_3vc_newels[][8] =
798
+ {
799
+ { 1, 7, 5 },
800
+ { 3, 9, 8 },
801
+ { 4, 11, 10 },
802
+ { 7, 2, 6, 5 },
803
+ { 5, 6, 8, 11 },
804
+ { 11, 8, 9, 10 }
805
+ };
806
+ HPRef_Struct refquad_1e_3vc =
807
+ {
808
+ HP_QUAD,
809
+ refquad_1e_3vc_splitedges,
810
+ 0, 0,
811
+ refquad_1e_3vc_newelstypes,
812
+ refquad_1e_3vc_newels
813
+ };
814
+
815
+
816
+
817
+
818
+ // HP_QUAD_1E_3VD
819
+ int refquad_1e_3vd_splitedges[][3] =
820
+ {
821
+ { 1, 4, 5 },
822
+ { 2, 3, 6 },
823
+ { 2, 1, 7 },
824
+ { 3, 2, 8 },
825
+ { 3, 4, 9 },
826
+ { 4, 3, 10 },
827
+ { 4, 1, 11 },
828
+ { 0, 0, 0 }
829
+ };
830
+ HPREF_ELEMENT_TYPE refquad_1e_3vd_newelstypes[] =
831
+ {
832
+ HP_TRIG_SINGEDGECORNER2,
833
+ HP_TRIG_SINGCORNER,
834
+ HP_TRIG_SINGCORNER,
835
+ HP_QUAD_SINGEDGE,
836
+ HP_QUAD,
837
+ HP_QUAD,
838
+ HP_NONE,
839
+ };
840
+ int refquad_1e_3vd_newels[][8] =
841
+ {
842
+ { 7, 2, 6 },
843
+ { 3, 9, 8 },
844
+ { 4, 11, 10 },
845
+ { 1, 7, 6, 5 },
846
+ { 5, 6, 8, 11 },
847
+ { 11, 8, 9, 10 }
848
+ };
849
+ HPRef_Struct refquad_1e_3vd =
850
+ {
851
+ HP_QUAD,
852
+ refquad_1e_3vd_splitedges,
853
+ 0, 0,
854
+ refquad_1e_3vd_newelstypes,
855
+ refquad_1e_3vd_newels
856
+ };
857
+
858
+
859
+
860
+
861
+
862
+
863
+ // HP_QUAD_1E_4V
864
+ int refquad_1e_4v_splitedges[][3] =
865
+ {
866
+ { 1, 4, 5 },
867
+ { 2, 3, 6 },
868
+ { 1, 2, 7 },
869
+ { 2, 1, 8 },
870
+ { 4, 1, 9 },
871
+ { 3, 2, 10 },
872
+ { 4, 3, 11 },
873
+ { 3, 4, 12 },
874
+ { 0, 0, 0 }
875
+ };
876
+ HPREF_ELEMENT_TYPE refquad_1e_4v_newelstypes[] =
877
+ {
878
+ HP_TRIG_SINGEDGECORNER1,
879
+ HP_TRIG_SINGEDGECORNER2,
880
+ HP_TRIG_SINGCORNER,
881
+ HP_TRIG_SINGCORNER,
882
+ HP_QUAD_SINGEDGE,
883
+ HP_QUAD,
884
+ HP_QUAD,
885
+ HP_NONE,
886
+ };
887
+ int refquad_1e_4v_newels[][8] =
888
+ {
889
+ { 1, 7, 5 },
890
+ { 8, 2, 6 },
891
+ { 3, 12, 10 },
892
+ { 4, 9, 11 },
893
+ { 7, 8, 6, 5 },
894
+ { 5, 6, 10, 9 },
895
+ { 9, 10, 12, 11 }
896
+ };
897
+ HPRef_Struct refquad_1e_4v =
898
+ {
899
+ HP_QUAD,
900
+ refquad_1e_4v_splitedges,
901
+ 0, 0,
902
+ refquad_1e_4v_newelstypes,
903
+ refquad_1e_4v_newels
904
+ };
905
+
906
+ ////////////////////////////////////////////////////////////////////////////////
907
+
908
+ // HP_QUAD_2E
909
+ int refquad_2e_splitedges[][3] =
910
+ {
911
+ { 1, 2, 5 },
912
+ { 1, 4, 6 },
913
+ { 2, 3, 7 },
914
+ { 4, 3, 8 },
915
+ { 0, 0, 0 }
916
+ };
917
+ int refquad_2e_splitfaces[][4] =
918
+ {
919
+ { 1, 2, 4, 9 },
920
+ { 0, 0, 0, 0 },
921
+ };
922
+
923
+
924
+ /*
925
+ HPREF_ELEMENT_TYPE refquad_2e_newelstypes[] =
926
+ {
927
+ HP_TRIG_SINGEDGECORNER1,
928
+ HP_TRIG_SINGEDGECORNER2,
929
+ HP_QUAD_SINGEDGE,
930
+ HP_QUAD_SINGEDGE,
931
+ HP_QUAD,
932
+ HP_NONE,
933
+ };
934
+ int refquad_2e_newels[][8] =
935
+ {
936
+ { 1, 5, 9 },
937
+ { 6, 1, 9 },
938
+ { 5, 2, 7, 9 },
939
+ { 4, 6, 9, 8 },
940
+ { 9, 7, 3, 8 },
941
+ };
942
+ */
943
+
944
+ // SZ refine to 4 quads
945
+ HPREF_ELEMENT_TYPE refquad_2e_newelstypes[] =
946
+ {
947
+ HP_QUAD_2E,
948
+ HP_QUAD_SINGEDGE,
949
+ HP_QUAD_SINGEDGE,
950
+ HP_QUAD,
951
+ HP_NONE,
952
+ };
953
+ int refquad_2e_newels[][8] =
954
+ {
955
+ { 1, 5, 9, 6 },
956
+ { 5, 2, 7, 9 },
957
+ { 4, 6, 9, 8 },
958
+ { 9, 7, 3, 8 },
959
+ };
960
+
961
+ HPRef_Struct refquad_2e =
962
+ {
963
+ HP_QUAD,
964
+ refquad_2e_splitedges,
965
+ refquad_2e_splitfaces,
966
+ 0,
967
+ refquad_2e_newelstypes,
968
+ refquad_2e_newels
969
+ };
970
+
971
+
972
+ // HP_QUAD_2E_1VA
973
+ int refquad_2e_1va_splitedges[][3] =
974
+ {
975
+ { 1, 2, 5 },
976
+ { 1, 4, 6 },
977
+ { 2, 3, 7 },
978
+ { 4, 3, 8 },
979
+ { 2, 1, 10 },
980
+ { 0, 0, 0 }
981
+ };
982
+ int refquad_2e_1va_splitfaces[][4] =
983
+ {
984
+ { 1, 2, 4, 9 },
985
+ { 0, 0, 0, 0 },
986
+ };
987
+
988
+ /*
989
+ HPREF_ELEMENT_TYPE refquad_2e_1va_newelstypes[] =
990
+ {
991
+ HP_TRIG_SINGEDGECORNER1,
992
+ HP_TRIG_SINGEDGECORNER2,
993
+ HP_QUAD_SINGEDGE,
994
+ HP_QUAD_SINGEDGE,
995
+ HP_QUAD,
996
+ HP_TRIG_SINGEDGECORNER2,
997
+ HP_NONE,
998
+ };
999
+ int refquad_2e_1va_newels[][8] =
1000
+ {
1001
+ { 1, 5, 9 },
1002
+ { 6, 1, 9 },
1003
+ { 5, 10, 7, 9 },
1004
+ { 4, 6, 9, 8 },
1005
+ { 9, 7, 3, 8 },
1006
+ { 10, 2, 7 },
1007
+ };
1008
+ */
1009
+ // SZ Quad_2e refinement
1010
+ HPREF_ELEMENT_TYPE refquad_2e_1va_newelstypes[] =
1011
+ {
1012
+ HP_QUAD_2E,
1013
+ HP_QUAD_SINGEDGE,
1014
+ HP_QUAD_SINGEDGE,
1015
+ HP_QUAD,
1016
+ HP_TRIG_SINGEDGECORNER2,
1017
+ HP_NONE,
1018
+ };
1019
+ int refquad_2e_1va_newels[][8] =
1020
+ {
1021
+ { 1, 5, 9, 6 },
1022
+ { 5, 10, 7, 9 },
1023
+ { 4, 6, 9, 8 },
1024
+ { 9, 7, 3, 8 },
1025
+ { 10, 2, 7 },
1026
+ };
1027
+
1028
+ HPRef_Struct refquad_2e_1va =
1029
+ {
1030
+ HP_QUAD,
1031
+ refquad_2e_1va_splitedges,
1032
+ refquad_2e_1va_splitfaces,
1033
+ 0,
1034
+ refquad_2e_1va_newelstypes,
1035
+ refquad_2e_1va_newels
1036
+ };
1037
+
1038
+
1039
+
1040
+ // HP_QUAD_2E_1VB
1041
+ int refquad_2e_1vb_splitedges[][3] =
1042
+ {
1043
+ { 1, 2, 5 },
1044
+ { 1, 4, 6 },
1045
+ { 2, 3, 7 },
1046
+ { 4, 3, 8 },
1047
+ { 3, 2, 10 },
1048
+ { 3, 4, 11 },
1049
+ { 0, 0, 0 }
1050
+ };
1051
+ int refquad_2e_1vb_splitfaces[][4] =
1052
+ {
1053
+ { 1, 2, 4, 9 },
1054
+ { 0, 0, 0, 0 },
1055
+ };
1056
+ HPREF_ELEMENT_TYPE refquad_2e_1vb_newelstypes[] =
1057
+ {
1058
+ // HP_TRIG_SINGEDGECORNER1,
1059
+ // HP_TRIG_SINGEDGECORNER2,
1060
+ // SZ QUAD_2E
1061
+ HP_QUAD_2E,
1062
+ HP_QUAD_SINGEDGE,
1063
+ HP_QUAD_SINGEDGE,
1064
+ HP_TRIG,
1065
+ HP_QUAD,
1066
+ HP_TRIG_SINGCORNER,
1067
+ HP_NONE,
1068
+ };
1069
+ int refquad_2e_1vb_newels[][8] =
1070
+ {
1071
+ //{ 1, 5, 9 },
1072
+ //{ 6, 1, 9 },
1073
+ { 1, 5, 9, 6 },
1074
+ { 5, 2, 7, 9 },
1075
+ { 4, 6, 9, 8 },
1076
+ { 7, 8, 9 },
1077
+ { 8, 7, 10, 11 },
1078
+ { 3, 11, 10 }
1079
+ };
1080
+ HPRef_Struct refquad_2e_1vb =
1081
+ {
1082
+ HP_QUAD,
1083
+ refquad_2e_1vb_splitedges,
1084
+ refquad_2e_1vb_splitfaces,
1085
+ 0,
1086
+ refquad_2e_1vb_newelstypes,
1087
+ refquad_2e_1vb_newels
1088
+ }
1089
+ ;
1090
+
1091
+ // HP_QUAD_2E_1VC
1092
+ int refquad_2e_1vc_splitedges[][3] =
1093
+ {
1094
+ { 1, 2, 5 },
1095
+ { 1, 4, 6 },
1096
+ { 2, 3, 7 },
1097
+ { 4, 1, 8 },
1098
+ { 4, 3, 9 },
1099
+ { 0, 0, 0 }
1100
+ };
1101
+ int refquad_2e_1vc_splitfaces[][4] =
1102
+ {
1103
+ { 1, 2, 4, 10 },
1104
+ { 0, 0, 0, 0 },
1105
+ };
1106
+ HPREF_ELEMENT_TYPE refquad_2e_1vc_newelstypes[] =
1107
+ {
1108
+ // HP_TRIG_SINGEDGECORNER1,
1109
+ // HP_TRIG_SINGEDGECORNER2,
1110
+ HP_QUAD_2E,
1111
+ HP_TRIG_SINGEDGECORNER1,
1112
+ HP_QUAD_SINGEDGE,
1113
+ HP_QUAD_SINGEDGE,
1114
+ HP_QUAD,
1115
+ HP_NONE,
1116
+ };
1117
+ int refquad_2e_1vc_newels[][8] =
1118
+ {
1119
+ //{ 1, 5, 10 },
1120
+ //{ 6, 1, 10 },
1121
+ { 1, 5, 10, 6},
1122
+ { 4, 8, 9 },
1123
+ { 5, 2, 7, 10 },
1124
+ { 8, 6, 10, 9 },
1125
+ { 10, 7, 3, 9 },
1126
+ };
1127
+ HPRef_Struct refquad_2e_1vc =
1128
+ {
1129
+ HP_QUAD,
1130
+ refquad_2e_1vc_splitedges,
1131
+ refquad_2e_1vc_splitfaces,
1132
+ 0,
1133
+ refquad_2e_1vc_newelstypes,
1134
+ refquad_2e_1vc_newels
1135
+ };
1136
+
1137
+ // HP_QUAD_2E_2VA
1138
+ int refquad_2e_2va_splitedges[][3] =
1139
+ {
1140
+ { 1, 2, 5 },
1141
+ { 1, 4, 6 },
1142
+ { 2, 3, 7 },
1143
+ { 4, 3, 8 },
1144
+ { 3, 2, 10 },
1145
+ { 3, 4, 11 },
1146
+ { 2, 1, 12 },
1147
+ { 0, 0, 0 }
1148
+ };
1149
+ int refquad_2e_2va_splitfaces[][4] =
1150
+ {
1151
+ { 1, 2, 4, 9 },
1152
+ { 0, 0, 0, 0 },
1153
+ };
1154
+ HPREF_ELEMENT_TYPE refquad_2e_2va_newelstypes[] =
1155
+ {
1156
+ //HP_TRIG_SINGEDGECORNER1,
1157
+ //HP_TRIG_SINGEDGECORNER2,
1158
+ HP_QUAD_2E,
1159
+ HP_QUAD_SINGEDGE,
1160
+ HP_QUAD_SINGEDGE,
1161
+ HP_TRIG,
1162
+ HP_QUAD,
1163
+ HP_TRIG_SINGCORNER,
1164
+ HP_TRIG_SINGEDGECORNER2,
1165
+ HP_NONE,
1166
+ };
1167
+ int refquad_2e_2va_newels[][8] =
1168
+ {
1169
+ // { 1, 5, 9 },
1170
+ // { 6, 1, 9 },
1171
+ { 1, 5, 9, 6 },
1172
+ { 5, 12, 7, 9 },
1173
+ { 4, 6, 9, 8 },
1174
+ { 7, 8, 9 },
1175
+ { 8, 7, 10, 11 },
1176
+ { 3, 11, 10 },
1177
+ { 12, 2, 7 }
1178
+ };
1179
+ HPRef_Struct refquad_2e_2va =
1180
+ {
1181
+ HP_QUAD,
1182
+ refquad_2e_2va_splitedges,
1183
+ refquad_2e_2va_splitfaces,
1184
+ 0,
1185
+ refquad_2e_2va_newelstypes,
1186
+ refquad_2e_2va_newels
1187
+ };
1188
+
1189
+
1190
+
1191
+
1192
+
1193
+
1194
+ // HP_QUAD_2E_2VB
1195
+ int refquad_2e_2vb_splitedges[][3] =
1196
+ {
1197
+ { 1, 2, 5 },
1198
+ { 1, 4, 6 },
1199
+ { 2, 1, 7 },
1200
+ { 2, 3, 8 },
1201
+ { 4, 1, 9 },
1202
+ { 4, 3, 10 },
1203
+ { 0, 0, 0 }
1204
+ };
1205
+ int refquad_2e_2vb_splitfaces[][4] =
1206
+ {
1207
+ { 1, 2, 4, 11 },
1208
+ { 0, 0, 0, 0 },
1209
+ };
1210
+ HPREF_ELEMENT_TYPE refquad_2e_2vb_newelstypes[] =
1211
+ {
1212
+ // HP_TRIG_SINGEDGECORNER1,
1213
+ // HP_TRIG_SINGEDGECORNER2,
1214
+ HP_QUAD_2E,
1215
+ HP_TRIG_SINGEDGECORNER1,
1216
+ HP_TRIG_SINGEDGECORNER2,
1217
+ HP_QUAD_SINGEDGE,
1218
+ HP_QUAD_SINGEDGE,
1219
+ HP_QUAD,
1220
+ HP_NONE,
1221
+ };
1222
+ int refquad_2e_2vb_newels[][8] =
1223
+ {
1224
+ //{ 1, 5, 11 },
1225
+ //{ 6, 1, 11 },
1226
+ { 1, 5, 11, 6 },
1227
+ { 4, 9, 10 },
1228
+ { 7, 2, 8 },
1229
+ { 5, 7, 8, 11 },
1230
+ { 9, 6, 11, 10 },
1231
+ { 3, 10, 11, 8 },
1232
+ };
1233
+ HPRef_Struct refquad_2e_2vb =
1234
+ {
1235
+ HP_QUAD,
1236
+ refquad_2e_2vb_splitedges,
1237
+ refquad_2e_2vb_splitfaces,
1238
+ 0,
1239
+ refquad_2e_2vb_newelstypes,
1240
+ refquad_2e_2vb_newels
1241
+ };
1242
+
1243
+ // HP_QUAD_2E_2VC
1244
+ int refquad_2e_2vc_splitedges[][3] =
1245
+ {
1246
+ { 1, 2, 5 },
1247
+ { 1, 4, 6 },
1248
+ { 2, 3, 7 },
1249
+ { 4, 3, 8 },
1250
+ { 3, 2, 10 },
1251
+ { 3, 4, 11 },
1252
+ { 4, 1, 12 },
1253
+ { 0, 0, 0 }
1254
+ };
1255
+ int refquad_2e_2vc_splitfaces[][4] =
1256
+ {
1257
+ { 1, 2, 4, 9 },
1258
+ { 0, 0, 0, 0 },
1259
+ };
1260
+ HPREF_ELEMENT_TYPE refquad_2e_2vc_newelstypes[] =
1261
+ {
1262
+ // HP_TRIG_SINGEDGECORNER1,
1263
+ // HP_TRIG_SINGEDGECORNER2,
1264
+ HP_QUAD_2E,
1265
+ HP_QUAD_SINGEDGE,
1266
+ HP_QUAD_SINGEDGE,
1267
+ HP_TRIG,
1268
+ HP_QUAD,
1269
+ HP_TRIG_SINGCORNER,
1270
+ HP_TRIG_SINGEDGECORNER1, //SZ (vorher: SINGEDGECORNER2)
1271
+ HP_NONE,
1272
+ };
1273
+ int refquad_2e_2vc_newels[][8] =
1274
+ {
1275
+ { 1, 5, 9 },
1276
+ { 6, 1, 9 },
1277
+ { 5, 2, 7, 9 },
1278
+ { 12, 6, 9, 8 },
1279
+ { 7, 8, 9 },
1280
+ { 8, 7, 10, 11 },
1281
+ { 3, 11, 10 },
1282
+ { 4, 12, 8 }
1283
+ };
1284
+ HPRef_Struct refquad_2e_2vc =
1285
+ {
1286
+ HP_QUAD,
1287
+ refquad_2e_2vc_splitedges,
1288
+ refquad_2e_2vc_splitfaces,
1289
+ 0,
1290
+ refquad_2e_2vc_newelstypes,
1291
+ refquad_2e_2vc_newels
1292
+ };
1293
+
1294
+ // HP_QUAD_2E_3V
1295
+ int refquad_2e_3v_splitedges[][3] =
1296
+ {
1297
+ { 1, 2, 5 },
1298
+ { 1, 4, 6 },
1299
+ { 2, 3, 7 },
1300
+ { 4, 3, 8 },
1301
+ { 3, 2, 10 },
1302
+ { 3, 4, 11 },
1303
+ { 2, 1, 12 },
1304
+ { 4, 1, 13 },
1305
+ { 0, 0, 0 }
1306
+ };
1307
+ int refquad_2e_3v_splitfaces[][4] =
1308
+ {
1309
+ { 1, 2, 4, 9 },
1310
+ { 0, 0, 0, 0 },
1311
+ };
1312
+ HPREF_ELEMENT_TYPE refquad_2e_3v_newelstypes[] =
1313
+ {
1314
+ // HP_TRIG_SINGEDGECORNER1,
1315
+ // HP_TRIG_SINGEDGECORNER2,
1316
+ HP_QUAD_2E,
1317
+ HP_QUAD_SINGEDGE,
1318
+ HP_QUAD_SINGEDGE,
1319
+ HP_TRIG,
1320
+ HP_QUAD,
1321
+ HP_TRIG_SINGCORNER,
1322
+ HP_TRIG_SINGEDGECORNER2,
1323
+ HP_TRIG_SINGEDGECORNER1,
1324
+ HP_NONE,
1325
+ };
1326
+ int refquad_2e_3v_newels[][8] =
1327
+ {
1328
+ //{ 1, 5, 9 },
1329
+ //{ 6, 1, 9 },
1330
+ { 1, 5, 9, 6 },
1331
+ { 5, 12, 7, 9 },
1332
+ { 13, 6, 9, 8 },
1333
+ { 7, 8, 9 },
1334
+ { 8, 7, 10, 11 },
1335
+ { 3, 11, 10 },
1336
+ { 12, 2, 7 },
1337
+ { 4, 13, 8 }
1338
+ };
1339
+ HPRef_Struct refquad_2e_3v =
1340
+ {
1341
+ HP_QUAD,
1342
+ refquad_2e_3v_splitedges,
1343
+ refquad_2e_3v_splitfaces,
1344
+ 0,
1345
+ refquad_2e_3v_newelstypes,
1346
+ refquad_2e_3v_newels
1347
+ };
1348
+
1349
+ // HP_QUAD_2EB_0V
1350
+ int refquad_2eb_0v_splitedges[][3] =
1351
+ {
1352
+ { 1, 4, 5 },
1353
+ { 2, 3, 6 },
1354
+ { 3, 2, 7 },
1355
+ { 4, 1, 8 },
1356
+ { 0, 0, 0 }
1357
+ };
1358
+ int refquad_2eb_0v_splitfaces[][4] =
1359
+ {
1360
+ { 0, 0, 0, 0 },
1361
+ };
1362
+ HPREF_ELEMENT_TYPE refquad_2eb_0v_newelstypes[] =
1363
+ {
1364
+ HP_QUAD_SINGEDGE,
1365
+ HP_QUAD_SINGEDGE,
1366
+ HP_QUAD,
1367
+ HP_NONE,
1368
+ };
1369
+ int refquad_2eb_0v_newels[][8] =
1370
+ {
1371
+ { 1, 2, 6, 5 },
1372
+ { 3, 4, 8, 7 },
1373
+ { 5, 6, 7, 8 }
1374
+ };
1375
+ HPRef_Struct refquad_2eb_0v =
1376
+ {
1377
+ HP_QUAD,
1378
+ refquad_2eb_0v_splitedges,
1379
+ refquad_2eb_0v_splitfaces,
1380
+ 0,
1381
+ refquad_2eb_0v_newelstypes,
1382
+ refquad_2eb_0v_newels
1383
+ };
1384
+
1385
+
1386
+ // HP_QUAD_2EB_1VA
1387
+ int refquad_2eb_1va_splitedges[][3] =
1388
+ {
1389
+ { 1, 4, 5 },
1390
+ { 2, 3, 6 },
1391
+ { 3, 2, 7 },
1392
+ { 4, 1, 8 },
1393
+ { 1, 2, 9 },
1394
+ { 0, 0, 0 }
1395
+ };
1396
+ int refquad_2eb_1va_splitfaces[][4] =
1397
+ {
1398
+ { 0, 0, 0, 0 },
1399
+ };
1400
+ HPREF_ELEMENT_TYPE refquad_2eb_1va_newelstypes[] =
1401
+ {
1402
+ HP_QUAD_SINGEDGE,
1403
+ HP_QUAD_SINGEDGE,
1404
+ HP_TRIG_SINGEDGECORNER1,
1405
+ HP_QUAD,
1406
+ HP_NONE,
1407
+ };
1408
+ int refquad_2eb_1va_newels[][8] =
1409
+ {
1410
+ { 9, 2, 6, 5 },
1411
+ { 3, 4, 8, 7 },
1412
+ { 1, 9, 5 },
1413
+ { 5, 6, 7, 8 }
1414
+ };
1415
+ HPRef_Struct refquad_2eb_1va =
1416
+ {
1417
+ HP_QUAD,
1418
+ refquad_2eb_1va_splitedges,
1419
+ refquad_2eb_1va_splitfaces,
1420
+ 0,
1421
+ refquad_2eb_1va_newelstypes,
1422
+ refquad_2eb_1va_newels
1423
+ };
1424
+
1425
+ // HP_QUAD_2EB_1VB
1426
+ int refquad_2eb_1vb_splitedges[][3] =
1427
+ {
1428
+ { 1, 4, 5 },
1429
+ { 2, 3, 6 },
1430
+ { 3, 2, 7 },
1431
+ { 4, 1, 8 },
1432
+ { 2, 1, 9 },
1433
+ { 0, 0, 0 }
1434
+ };
1435
+ int refquad_2eb_1vb_splitfaces[][4] =
1436
+ {
1437
+ { 0, 0, 0, 0 },
1438
+ };
1439
+ HPREF_ELEMENT_TYPE refquad_2eb_1vb_newelstypes[] =
1440
+ {
1441
+ HP_QUAD_SINGEDGE,
1442
+ HP_QUAD_SINGEDGE,
1443
+ HP_TRIG_SINGEDGECORNER2,
1444
+ HP_QUAD,
1445
+ HP_NONE,
1446
+ };
1447
+ int refquad_2eb_1vb_newels[][8] =
1448
+ {
1449
+ { 1, 9, 6, 5 },
1450
+ { 3, 4, 8, 7 },
1451
+ { 9, 2, 6 },
1452
+ { 5, 6, 7, 8 }
1453
+ };
1454
+ HPRef_Struct refquad_2eb_1vb =
1455
+ {
1456
+ HP_QUAD,
1457
+ refquad_2eb_1vb_splitedges,
1458
+ refquad_2eb_1vb_splitfaces,
1459
+ 0,
1460
+ refquad_2eb_1vb_newelstypes,
1461
+ refquad_2eb_1vb_newels
1462
+ };
1463
+
1464
+ // HP_QUAD_2EB_2VA
1465
+ int refquad_2eb_2va_splitedges[][3] =
1466
+ {
1467
+ { 1, 4, 5 },
1468
+ { 2, 3, 6 },
1469
+ { 3, 2, 7 },
1470
+ { 4, 1, 8 },
1471
+ { 1, 2, 9 },
1472
+ { 2, 1, 10 },
1473
+ { 0, 0, 0 }
1474
+ };
1475
+ HPREF_ELEMENT_TYPE refquad_2eb_2va_newelstypes[] =
1476
+ {
1477
+ HP_QUAD_SINGEDGE,
1478
+ HP_QUAD_SINGEDGE,
1479
+ HP_TRIG_SINGEDGECORNER1,
1480
+ HP_TRIG_SINGEDGECORNER2,
1481
+ HP_QUAD,
1482
+ HP_NONE,
1483
+ };
1484
+ int refquad_2eb_2va_newels[][8] =
1485
+ {
1486
+ { 9, 10, 6, 5 },
1487
+ { 3, 4, 8, 7 },
1488
+ { 1, 9, 5 },
1489
+ { 10, 2, 6 },
1490
+ { 5, 6, 7, 8 }
1491
+ };
1492
+ HPRef_Struct refquad_2eb_2va =
1493
+ {
1494
+ HP_QUAD,
1495
+ refquad_2eb_2va_splitedges,
1496
+ 0, 0,
1497
+ refquad_2eb_2va_newelstypes,
1498
+ refquad_2eb_2va_newels
1499
+ };
1500
+
1501
+
1502
+
1503
+ // HP_QUAD_2EB_2VB
1504
+ int refquad_2eb_2vb_splitedges[][3] =
1505
+ {
1506
+ { 1, 4, 5 },
1507
+ { 2, 3, 6 },
1508
+ { 3, 2, 7 },
1509
+ { 4, 1, 8 },
1510
+ { 1, 2, 9 },
1511
+ { 3, 4, 10 },
1512
+ { 0, 0, 0 }
1513
+ };
1514
+ HPREF_ELEMENT_TYPE refquad_2eb_2vb_newelstypes[] =
1515
+ {
1516
+ HP_QUAD_SINGEDGE,
1517
+ HP_QUAD_SINGEDGE,
1518
+ HP_TRIG_SINGEDGECORNER1,
1519
+ HP_TRIG_SINGEDGECORNER1,
1520
+ HP_QUAD,
1521
+ HP_NONE,
1522
+ };
1523
+ int refquad_2eb_2vb_newels[][8] =
1524
+ {
1525
+ { 9, 2, 6, 5 },
1526
+ { 10, 4, 8, 7 },
1527
+ { 1, 9, 5 },
1528
+ { 3, 10, 7 },
1529
+ { 5, 6, 7, 8 }
1530
+ };
1531
+ HPRef_Struct refquad_2eb_2vb =
1532
+ {
1533
+ HP_QUAD,
1534
+ refquad_2eb_2vb_splitedges,
1535
+ 0, 0,
1536
+ refquad_2eb_2vb_newelstypes,
1537
+ refquad_2eb_2vb_newels
1538
+ };
1539
+
1540
+
1541
+
1542
+ // HP_QUAD_2EB_2VC
1543
+ int refquad_2eb_2vc_splitedges[][3] =
1544
+ {
1545
+ { 1, 4, 5 },
1546
+ { 2, 3, 6 },
1547
+ { 3, 2, 7 },
1548
+ { 4, 1, 8 },
1549
+ { 1, 2, 9 },
1550
+ { 4, 3, 10 },
1551
+ { 0, 0, 0 }
1552
+ };
1553
+ int refquad_2eb_2vc_splitfaces[][4] =
1554
+ {
1555
+ { 0, 0, 0, 0 },
1556
+ };
1557
+ HPREF_ELEMENT_TYPE refquad_2eb_2vc_newelstypes[] =
1558
+ {
1559
+ HP_QUAD_SINGEDGE,
1560
+ HP_QUAD_SINGEDGE,
1561
+ HP_TRIG_SINGEDGECORNER1,
1562
+ HP_TRIG_SINGEDGECORNER2,
1563
+ HP_QUAD,
1564
+ HP_NONE,
1565
+ };
1566
+ int refquad_2eb_2vc_newels[][8] =
1567
+ {
1568
+ { 9, 2, 6, 5 },
1569
+ { 3, 10, 8, 7 },
1570
+ { 1, 9, 5 },
1571
+ { 10, 4, 8 },
1572
+ { 5, 6, 7, 8 }
1573
+ };
1574
+ HPRef_Struct refquad_2eb_2vc =
1575
+ {
1576
+ HP_QUAD,
1577
+ refquad_2eb_2vc_splitedges,
1578
+ refquad_2eb_2vc_splitfaces,
1579
+ 0,
1580
+ refquad_2eb_2vc_newelstypes,
1581
+ refquad_2eb_2vc_newels
1582
+ };
1583
+
1584
+
1585
+ // HP_QUAD_2EB_2VD
1586
+ int refquad_2eb_2vd_splitedges[][3] =
1587
+ {
1588
+ { 1, 4, 5 },
1589
+ { 2, 3, 6 },
1590
+ { 3, 2, 7 },
1591
+ { 4, 1, 8 },
1592
+ { 2, 1, 9 },
1593
+ { 4, 3, 10 },
1594
+ { 0, 0, 0 }
1595
+ };
1596
+ HPREF_ELEMENT_TYPE refquad_2eb_2vd_newelstypes[] =
1597
+ {
1598
+ HP_QUAD_SINGEDGE,
1599
+ HP_QUAD_SINGEDGE,
1600
+ HP_TRIG_SINGEDGECORNER2,
1601
+ HP_TRIG_SINGEDGECORNER2,
1602
+ HP_QUAD,
1603
+ HP_NONE,
1604
+ };
1605
+ int refquad_2eb_2vd_newels[][8] =
1606
+ {
1607
+ { 1, 9, 6, 5 },
1608
+ { 3, 10, 8, 7 },
1609
+ { 9, 2, 6 },
1610
+ { 10, 4, 8 },
1611
+ { 5, 6, 7, 8 }
1612
+ };
1613
+ HPRef_Struct refquad_2eb_2vd =
1614
+ {
1615
+ HP_QUAD,
1616
+ refquad_2eb_2vd_splitedges,
1617
+ 0, 0,
1618
+ refquad_2eb_2vd_newelstypes,
1619
+ refquad_2eb_2vd_newels
1620
+ };
1621
+
1622
+
1623
+ // HP_QUAD_2EB_3VA
1624
+ int refquad_2eb_3va_splitedges[][3] =
1625
+ {
1626
+ { 1, 4, 5 },
1627
+ { 2, 3, 6 },
1628
+ { 1, 2, 7 },
1629
+ { 2, 1, 8 },
1630
+ { 3, 2, 9 },
1631
+ { 4, 1, 10 },
1632
+ { 3, 4, 11 },
1633
+ { 0, 0, 0 }
1634
+ };
1635
+ HPREF_ELEMENT_TYPE refquad_2eb_3va_newelstypes[] =
1636
+ {
1637
+ HP_TRIG_SINGEDGECORNER1,
1638
+ HP_TRIG_SINGEDGECORNER2,
1639
+ HP_TRIG_SINGEDGECORNER1,
1640
+ HP_QUAD_SINGEDGE,
1641
+ HP_QUAD_SINGEDGE,
1642
+ HP_QUAD,
1643
+ HP_NONE,
1644
+ };
1645
+ int refquad_2eb_3va_newels[][8] =
1646
+ {
1647
+ { 1, 7, 5 },
1648
+ { 8, 2, 6 },
1649
+ { 3, 11, 9},
1650
+ { 7, 8, 6, 5 },
1651
+ { 11, 4, 10, 9 },
1652
+ { 5, 6, 9, 10 }
1653
+ };
1654
+ HPRef_Struct refquad_2eb_3va =
1655
+ {
1656
+ HP_QUAD,
1657
+ refquad_2eb_3va_splitedges,
1658
+ 0, 0,
1659
+ refquad_2eb_3va_newelstypes,
1660
+ refquad_2eb_3va_newels
1661
+ };
1662
+
1663
+
1664
+ // HP_QUAD_2EB_3VB
1665
+ int refquad_2eb_3vb_splitedges[][3] =
1666
+ {
1667
+ { 1, 4, 5 },
1668
+ { 2, 3, 6 },
1669
+ { 1, 2, 7 },
1670
+ { 2, 1, 8 },
1671
+ { 3, 2, 9 },
1672
+ { 4, 1, 10 },
1673
+ { 4, 3, 11 },
1674
+ { 0, 0, 0 }
1675
+ };
1676
+ HPREF_ELEMENT_TYPE refquad_2eb_3vb_newelstypes[] =
1677
+ {
1678
+ HP_TRIG_SINGEDGECORNER1,
1679
+ HP_TRIG_SINGEDGECORNER2,
1680
+ HP_TRIG_SINGEDGECORNER2,
1681
+ HP_QUAD_SINGEDGE,
1682
+ HP_QUAD_SINGEDGE,
1683
+ HP_QUAD,
1684
+ HP_NONE,
1685
+ };
1686
+ int refquad_2eb_3vb_newels[][8] =
1687
+ {
1688
+ { 1, 7, 5 },
1689
+ { 8, 2, 6 },
1690
+ { 11, 4, 10 },
1691
+ { 7, 8, 6, 5 },
1692
+ { 3, 11, 10, 9 },
1693
+ { 5, 6, 9, 10 }
1694
+ };
1695
+ HPRef_Struct refquad_2eb_3vb =
1696
+ {
1697
+ HP_QUAD,
1698
+ refquad_2eb_3vb_splitedges,
1699
+ 0, 0,
1700
+ refquad_2eb_3vb_newelstypes,
1701
+ refquad_2eb_3vb_newels
1702
+ };
1703
+
1704
+
1705
+ // HP_QUAD_2EB_4V
1706
+ int refquad_2eb_4v_splitedges[][3] =
1707
+ {
1708
+ { 1, 4, 5 },
1709
+ { 2, 3, 6 },
1710
+ { 3, 2, 7 },
1711
+ { 4, 1, 8 },
1712
+ { 1, 2, 9 },
1713
+ { 2, 1, 10 },
1714
+ { 3, 4, 11 },
1715
+ { 4, 3, 12 },
1716
+ { 0, 0, 0 }
1717
+ };
1718
+ int refquad_2eb_4v_splitfaces[][4] =
1719
+ {
1720
+ { 0, 0, 0, 0 },
1721
+ };
1722
+ HPREF_ELEMENT_TYPE refquad_2eb_4v_newelstypes[] =
1723
+ {
1724
+ HP_QUAD_SINGEDGE,
1725
+ HP_QUAD_SINGEDGE,
1726
+ HP_QUAD,
1727
+ HP_TRIG_SINGEDGECORNER1,
1728
+ HP_TRIG_SINGEDGECORNER2,
1729
+ HP_TRIG_SINGEDGECORNER1,
1730
+ HP_TRIG_SINGEDGECORNER2,
1731
+ HP_NONE,
1732
+ };
1733
+ int refquad_2eb_4v_newels[][8] =
1734
+ {
1735
+ { 9, 10, 6, 5 },
1736
+ { 11, 12, 8, 7 },
1737
+ { 5, 6, 7, 8 },
1738
+ { 1, 9, 5 },
1739
+ { 10, 2, 6 },
1740
+ { 3, 11, 7 },
1741
+ { 12, 4, 8 },
1742
+ };
1743
+ HPRef_Struct refquad_2eb_4v =
1744
+ {
1745
+ HP_QUAD,
1746
+ refquad_2eb_4v_splitedges,
1747
+ refquad_2eb_4v_splitfaces,
1748
+ 0,
1749
+ refquad_2eb_4v_newelstypes,
1750
+ refquad_2eb_4v_newels
1751
+ };
1752
+
1753
+
1754
+
1755
+ // HP_QUAD_3E
1756
+ int refquad_3e_splitedges[][3] =
1757
+ {
1758
+ { 1, 2, 5 },
1759
+ { 1, 4, 6 },
1760
+ { 2, 1, 7 },
1761
+ { 2, 3, 8 },
1762
+ { 3, 4, 10 },
1763
+ { 4, 3, 12 },
1764
+ { 0, 0, 0 }
1765
+ };
1766
+
1767
+ int refquad_3e_splitfaces[][4] =
1768
+ {
1769
+ { 1, 2, 4, 13 },
1770
+ { 2, 3, 1, 14 },
1771
+ { 0, 0, 0, 0 },
1772
+ };
1773
+
1774
+ HPREF_ELEMENT_TYPE refquad_3e_newelstypes[] =
1775
+ {
1776
+ HP_QUAD_2E,
1777
+ HP_QUAD_2E,
1778
+ // HP_TRIG_SINGEDGECORNER1,
1779
+ // HP_TRIG_SINGEDGECORNER2,
1780
+ // HP_TRIG_SINGEDGECORNER2,
1781
+ // HP_TRIG_SINGEDGECORNER1,
1782
+
1783
+ HP_QUAD_SINGEDGE,
1784
+ HP_QUAD_SINGEDGE,
1785
+ HP_QUAD_SINGEDGE,
1786
+
1787
+ HP_QUAD,
1788
+ HP_NONE,
1789
+ };
1790
+ int refquad_3e_newels[][8] =
1791
+ {
1792
+ // { 1, 5, 13 },
1793
+ // { 6, 1, 13 },
1794
+ // { 7, 2, 14 },
1795
+ // { 2, 8, 14 },
1796
+ { 1, 5, 13, 6 },
1797
+ { 2, 8, 14, 7 },
1798
+ { 5, 7, 14, 13 },
1799
+ { 8, 3, 10, 14 },
1800
+ { 4, 6, 13, 12 },
1801
+ { 13, 14, 10, 12 }
1802
+ };
1803
+ HPRef_Struct refquad_3e =
1804
+ {
1805
+ HP_QUAD,
1806
+ refquad_3e_splitedges,
1807
+ refquad_3e_splitfaces,
1808
+ 0,
1809
+ refquad_3e_newelstypes,
1810
+ refquad_3e_newels
1811
+ };
1812
+
1813
+
1814
+
1815
+
1816
+
1817
+
1818
+
1819
+ // HP_QUAD_3E_3VA
1820
+ int refquad_3e_3va_splitedges[][3] =
1821
+ {
1822
+ { 1, 2, 5 },
1823
+ { 1, 4, 6 },
1824
+ { 2, 1, 7 },
1825
+ { 2, 3, 8 },
1826
+ { 3, 4, 10 },
1827
+ { 3, 2, 11 },
1828
+ { 4, 3, 12 },
1829
+ { 0, 0, 0 }
1830
+ };
1831
+
1832
+ int refquad_3e_3va_splitfaces[][4] =
1833
+ {
1834
+ { 1, 2, 4, 13 },
1835
+ { 2, 3, 1, 14 },
1836
+ { 0, 0, 0, 0 },
1837
+ };
1838
+
1839
+ HPREF_ELEMENT_TYPE refquad_3e_3va_newelstypes[] =
1840
+ {
1841
+ HP_QUAD_2E,
1842
+ HP_QUAD_2E,
1843
+
1844
+ // HP_TRIG_SINGEDGECORNER1,
1845
+ // HP_TRIG_SINGEDGECORNER2,
1846
+ // HP_TRIG_SINGEDGECORNER2,
1847
+ // HP_TRIG_SINGEDGECORNER1,
1848
+ HP_TRIG_SINGEDGECORNER2,
1849
+
1850
+ HP_QUAD_SINGEDGE,
1851
+ HP_QUAD_SINGEDGE,
1852
+ HP_QUAD_SINGEDGE,
1853
+
1854
+ HP_QUAD,
1855
+ HP_NONE,
1856
+ };
1857
+ int refquad_3e_3va_newels[][8] =
1858
+ {
1859
+ // { 1, 5, 13 },
1860
+ // { 6, 1, 13 },
1861
+ // { 7, 2, 14 },
1862
+ // { 2, 8, 14 },
1863
+ { 1, 5, 13, 6 },
1864
+ { 2, 8, 14, 7 },
1865
+ { 11, 3, 10 },
1866
+ { 5, 7, 14, 13 },
1867
+ { 8, 11, 10, 14 },
1868
+ { 4, 6, 13, 12 },
1869
+ { 13, 14, 10, 12 }
1870
+ };
1871
+ HPRef_Struct refquad_3e_3va =
1872
+ {
1873
+ HP_QUAD,
1874
+ refquad_3e_3va_splitedges,
1875
+ refquad_3e_3va_splitfaces,
1876
+ 0,
1877
+ refquad_3e_3va_newelstypes,
1878
+ refquad_3e_3va_newels
1879
+ };
1880
+
1881
+ // HP_QUAD_3E_3VB
1882
+ int refquad_3e_3vb_splitedges[][3] =
1883
+ {
1884
+ { 1, 2, 5 },
1885
+ { 1, 4, 6 },
1886
+ { 2, 1, 7 },
1887
+ { 2, 3, 8 },
1888
+ { 3, 4, 10 },
1889
+ { 4, 1, 11 },
1890
+ { 4, 3, 12 },
1891
+ { 0, 0, 0 }
1892
+ };
1893
+
1894
+ int refquad_3e_3vb_splitfaces[][4] =
1895
+ {
1896
+ { 1, 2, 4, 13 },
1897
+ { 2, 3, 1, 14 },
1898
+ { 0, 0, 0, 0 },
1899
+ };
1900
+
1901
+ HPREF_ELEMENT_TYPE refquad_3e_3vb_newelstypes[] =
1902
+ {
1903
+ HP_QUAD_2E,
1904
+ HP_QUAD_2E,
1905
+
1906
+ // HP_TRIG_SINGEDGECORNER1,
1907
+ // HP_TRIG_SINGEDGECORNER2,
1908
+ // HP_TRIG_SINGEDGECORNER2,
1909
+ // HP_TRIG_SINGEDGECORNER1,
1910
+ HP_TRIG_SINGEDGECORNER1,
1911
+
1912
+ HP_QUAD_SINGEDGE,
1913
+ HP_QUAD_SINGEDGE,
1914
+ HP_QUAD_SINGEDGE,
1915
+
1916
+ HP_QUAD,
1917
+ HP_NONE,
1918
+ };
1919
+ int refquad_3e_3vb_newels[][8] =
1920
+ {
1921
+ // { 1, 5, 13 },
1922
+ // { 6, 1, 13 },
1923
+ // { 7, 2, 14 },
1924
+ // { 2, 8, 14 },
1925
+ { 1, 5, 13, 6 },
1926
+ { 2, 8, 14, 7 },
1927
+ { 4, 11, 12 },
1928
+ { 5, 7, 14, 13 },
1929
+ { 8, 3, 10, 14 },
1930
+ { 11, 6, 13, 12 },
1931
+ { 13, 14, 10, 12 }
1932
+ };
1933
+ HPRef_Struct refquad_3e_3vb =
1934
+ {
1935
+ HP_QUAD,
1936
+ refquad_3e_3vb_splitedges,
1937
+ refquad_3e_3vb_splitfaces,
1938
+ 0,
1939
+ refquad_3e_3vb_newelstypes,
1940
+ refquad_3e_3vb_newels
1941
+ };
1942
+
1943
+
1944
+
1945
+
1946
+
1947
+
1948
+
1949
+
1950
+
1951
+ // HP_QUAD_3E_4V
1952
+ int refquad_3e_4v_splitedges[][3] =
1953
+ {
1954
+ { 1, 2, 5 },
1955
+ { 1, 4, 6 },
1956
+ { 2, 1, 7 },
1957
+ { 2, 3, 8 },
1958
+ { 3, 4, 10 },
1959
+ { 3, 2, 11 },
1960
+ { 4, 3, 12 },
1961
+ { 4, 1, 15 },
1962
+ { 0, 0, 0 }
1963
+ };
1964
+
1965
+ int refquad_3e_4v_splitfaces[][4] =
1966
+ {
1967
+ { 1, 2, 4, 13 },
1968
+ { 2, 3, 1, 14 },
1969
+ { 0, 0, 0, 0 },
1970
+ };
1971
+
1972
+ HPREF_ELEMENT_TYPE refquad_3e_4v_newelstypes[] =
1973
+ {
1974
+ HP_QUAD_2E,
1975
+ HP_QUAD_2E,
1976
+
1977
+ // HP_TRIG_SINGEDGECORNER1,
1978
+ // HP_TRIG_SINGEDGECORNER2,
1979
+ // HP_TRIG_SINGEDGECORNER2,
1980
+ // HP_TRIG_SINGEDGECORNER1,
1981
+ HP_TRIG_SINGEDGECORNER2,
1982
+ HP_TRIG_SINGEDGECORNER1,
1983
+
1984
+ HP_QUAD_SINGEDGE,
1985
+ HP_QUAD_SINGEDGE,
1986
+ HP_QUAD_SINGEDGE,
1987
+
1988
+ HP_QUAD,
1989
+ HP_NONE,
1990
+ };
1991
+ int refquad_3e_4v_newels[][8] =
1992
+ {
1993
+ // { 1, 5, 13 },
1994
+ // { 6, 1, 13 },
1995
+ // { 7, 2, 14 },
1996
+ // { 2, 8, 14 },
1997
+ { 1, 5, 13, 6 },
1998
+ { 2, 8, 14, 7 },
1999
+ { 11, 3, 10 },
2000
+ { 4, 15, 12 },
2001
+ { 5, 7, 14, 13 },
2002
+ { 8, 11, 10, 14 },
2003
+ { 15, 6, 13, 12 },
2004
+ { 13, 14, 10, 12 }
2005
+ };
2006
+ HPRef_Struct refquad_3e_4v =
2007
+ {
2008
+ HP_QUAD,
2009
+ refquad_3e_4v_splitedges,
2010
+ refquad_3e_4v_splitfaces,
2011
+ 0,
2012
+ refquad_3e_4v_newelstypes,
2013
+ refquad_3e_4v_newels
2014
+ };
2015
+
2016
+
2017
+
2018
+
2019
+
2020
+
2021
+
2022
+
2023
+
2024
+ // HP_QUAD_4E
2025
+ int refquad_4e_splitedges[][3] =
2026
+ {
2027
+ { 1, 2, 5 },
2028
+ { 1, 4, 6 },
2029
+ { 2, 1, 7 },
2030
+ { 2, 3, 8 },
2031
+ { 3, 2, 9 },
2032
+ { 3, 4, 10 },
2033
+ { 4, 1, 11 },
2034
+ { 4, 3, 12 },
2035
+ { 0, 0, 0 }
2036
+ };
2037
+
2038
+ int refquad_4e_splitfaces[][4] =
2039
+ {
2040
+ { 1, 2, 4, 13 },
2041
+ { 2, 3, 1, 14 },
2042
+ { 3, 4, 2, 15 },
2043
+ { 4, 1, 3, 16 },
2044
+ { 0, 0, 0, 0 },
2045
+ };
2046
+
2047
+ HPREF_ELEMENT_TYPE refquad_4e_newelstypes[] =
2048
+ {
2049
+ HP_QUAD_2E,
2050
+ HP_QUAD_2E,
2051
+ HP_QUAD_2E,
2052
+ HP_QUAD_2E,
2053
+
2054
+ HP_QUAD_SINGEDGE,
2055
+ HP_QUAD_SINGEDGE,
2056
+ HP_QUAD_SINGEDGE,
2057
+ HP_QUAD_SINGEDGE,
2058
+
2059
+ HP_QUAD,
2060
+ HP_NONE,
2061
+ };
2062
+ int refquad_4e_newels[][8] =
2063
+ {
2064
+ { 1, 5, 13, 6 },
2065
+ { 2, 8, 14, 7 },
2066
+ { 3, 10, 15, 9 },
2067
+ { 4, 11, 16, 12 },
2068
+ { 5, 7, 14, 13 },
2069
+ { 8, 9, 15, 14 },
2070
+ { 10, 12, 16, 15 },
2071
+ { 11, 6, 13, 16 },
2072
+ { 13, 14, 15, 16 }
2073
+ };
2074
+ HPRef_Struct refquad_4e =
2075
+ {
2076
+ HP_QUAD,
2077
+ refquad_4e_splitedges,
2078
+ refquad_4e_splitfaces,
2079
+ 0,
2080
+ refquad_4e_newelstypes,
2081
+ refquad_4e_newels
2082
+ };