AHF: array-based half-facet data structure for mixed-dimensional and non-manifold meshes

We present an Array-basedHalf-Facet mesh data structure, or AHF, for efficient mesh query and modification operations. The AHF extends the compact array-based half-edge and half-face data structures (T. J. Alumbaugh and X. Jiao, Compact array-based mesh data structures, IMR, 2005) to support mixed-dimensional and non-manifold meshes. The design goals of our data structure include generality to support such meshes, efficiency of neighborhood queries and mesh modification, compactness of memory footprint, and facilitation of interoperability of mesh-based application codes. To accomplish these goals, our data structure uses sibling half-facets as a core abstraction, coupled with other explicit and implicit representations of entities. A unique feature of our data structure is a comprehensive implementation in MATLAB, which allows rapid prototyping, debugging, testing, and deployment of meshing algorithms and other mesh-based numerical methods. We have also developed a C++ implementation built on top of MOAB (T.J. Tautges, R. Meyers, and K. Merkley, MOAB: A Mesh-Oriented Database, Sandia National Laboratories, 2004). We present some comparisons of the memory requirements and computational costs, and also demonstrate its effectiveness with a few sample applications.

[1]  Leif Kobbelt,et al.  OpenMesh: A Generic and Efficient Polygon Mesh Data Structure , 2002 .

[2]  Timothy J. Tautges,et al.  MOAB : a mesh-oriented database. , 2004 .

[3]  Xiangmin Jiao,et al.  Compact Array-Based Mesh Data Structures , 2005, IMR.

[4]  Mark de Berg,et al.  Computational geometry: algorithms and applications, 3rd Edition , 1997 .

[5]  Geert-Jan Giezeman,et al.  On the design of CGAL a computational geometry algorithms library , 2000 .

[6]  Mario Botsch,et al.  Design, Implementation, and Evaluation of the Surface_mesh Data Structure , 2011, IMR.

[7]  A. D. Gosman,et al.  Error Analysis of the Finite-Volume Method with Respect to Mesh Type , 2010 .

[8]  Geert-Jan Giezeman,et al.  On the design of CGAL a computational geometry algorithms library , 2000, Softw. Pract. Exp..

[9]  Lutz Kettner,et al.  Using generic programming for designing a data structure for polyhedral surfaces , 1999, Comput. Geom..

[10]  Hang Si,et al.  TetGen: A quality tetrahedral mesh generator and a 3D Delaunay triangulator (Version 1.5 --- User's Manual) , 2013 .

[11]  William Roshan Quadros,et al.  Proceedings of the 20th International Meshing Roundtable , 2012 .

[12]  Xiangmin Jiao,et al.  Variational generation of prismatic boundary‐layer meshes for biomedical computing , 2009, International journal for numerical methods in engineering.

[13]  Carlo Cattani,et al.  Dimension-independent modeling with simplicial complexes , 1993, TOGS.

[14]  Guy E. Blelloch,et al.  Compact representations of simplicial meshes in two and three dimensions , 2005, Int. J. Comput. Geom. Appl..

[15]  Mark S. Shephard,et al.  a General Topology-Based Mesh Data Structure , 1997 .

[16]  Andrew Vince,et al.  Combinatorial maps , 1983, J. Comb. Theory, Ser. B.

[17]  Leila De Floriani,et al.  IA*: An adjacency-based representation for non-manifold simplicial shapes in arbitrary dimensions , 2011, Comput. Graph..

[18]  Francis Y. Enomoto,et al.  THE CGNS SYSTEM , 1998 .

[19]  Mark de Berg,et al.  Computational geometry: algorithms and applications , 1997 .

[20]  Benjamin S. Kirk,et al.  Library for Parallel Adaptive Mesh Refinement / Coarsening Simulations , 2006 .

[21]  David P. Dobkin,et al.  Primitives for the manipulation of three-dimensional subdivisions , 1987, SCG '87.

[22]  David R. Musser,et al.  Fmdb: flexible distributed mesh database for parallel automated adaptive analysis , 2005 .

[23]  David Bommes,et al.  OpenVolumeMesh - A Versatile Index-Based Data Structure for 3D Polytopal Complexes , 2012, IMR.

[24]  Rao V. Garimella,et al.  MSTK - A Flexible Infrastructure Library for Developing Mesh Based Applications , 2004, IMR.