Compact Array-Based Mesh Data Structures

In this paper, we present simple and efficient array-based mesh data structures, including a compact representation of the half-edge data structure for surface meshes, and its generalization—a half-face data structure—for volume meshes. These array-based structures provide comprehensive and efficient support for querying incidence, adjacency, and boundary classification, but require substantially less memory than pointer-based mesh representations. In addition, they are easy to implement in traditional programming languages (such as in C or Fortran 90) and convenient to exchange across different software packages or different storage media. In a parallel setting, they also support partitioned meshes and hence are particularly appealing for large-scale scientific and engineering applications. We demonstrate the construction and usage of these data structures for various operations, and compare their space and time complexities with alternative structures.

[1]  J. Bonet,et al.  An alternating digital tree (ADT) algorithm for 3D geometric searching and intersection problems , 1991 .

[2]  Hassan Masum,et al.  Review of Computational Geometry: Algorithms and Applications (2nd ed.) by Mark de Berg, Marc van Kreveld, Mark Overmars, and Otfried Schwarzkopf , 2000, SIGA.

[3]  Lutz Kettner Designing a data structure for polyhedral surfaces , 1997 .

[4]  Jean-François Remacle,et al.  Parallel Algorithm Oriented Mesh Database , 2002, Engineering with Computers.

[5]  Rupak Biswas,et al.  Tetrahedral and hexahedral mesh adaptation for CFD problems , 1998 .

[6]  Graham F. Carey,et al.  A class of data structures for 2‐D and 3‐D adaptive mesh refinement , 1988 .

[7]  Michael T. Heath,et al.  Virtual prototyping of solid propellant rockets , 2000, Comput. Sci. Eng..

[8]  Philippe A. Tanguy,et al.  Efficient data structures for adaptive remeshing with the FEM , 1990 .

[9]  Kevin Weiler,et al.  Edge-Based Data Structures for Solid Modeling in Curved-Surface Environments , 1985, IEEE Computer Graphics and Applications.

[10]  Martti Mäntylä,et al.  Introduction to Solid Modeling , 1988 .

[11]  Ashraf El-Hamalawi,et al.  Mesh Generation – Application to Finite Elements , 2001 .

[12]  D. Holmes,et al.  Three-dimensional unstructured adaptive multigrid scheme for the Euler equations , 1994 .

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

[14]  Leonidas J. Guibas,et al.  Primitives for the manipulation of general subdivisions and the computation of Voronoi diagrams , 1983, STOC.

[15]  Andrew S. Glassner,et al.  MAINTAINING WINGED-EDGE MODELS , 1991 .

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

[17]  Bruce G. Baumgart A polyhedron representation for computer vision , 1975, AFIPS '75.

[18]  Ted Belytschko,et al.  Finite Elements, An Introduction , 1982 .

[19]  Mark H. Overmars Designing the Computational Geometry Algorithms Library CGAL , 1996, WACG.

[20]  Leonidas J. Guibas,et al.  Primitives for the manipulation of general subdivisions and the computation of Voronoi diagrams , 1983, STOC.

[21]  Gary L. Miller,et al.  Geometric mesh partitioning: implementation and experiments , 1995, Proceedings of 9th International Parallel Processing Symposium.

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

[23]  Jean-François Remacle,et al.  An algorithm oriented mesh database , 2003, IMR.

[24]  Bruce G. Baumgart A polyhedron representation for computer vision , 1899 .

[25]  M. F. Webster,et al.  The use of dynamic data structures in finite element applications , 1992 .

[26]  Gary L. Miller,et al.  Geometric Mesh Partitioning: Implementation and Experiments , 1998, SIAM J. Sci. Comput..

[27]  Glaucio H. Paulino,et al.  A compact adjacency‐based topological data structure for finite element mesh representation , 2005 .

[28]  Rainald Löhner,et al.  Some useful data structures for the generation of unstructured grids , 1988 .

[29]  Herbert Edelsbrunner,et al.  Algorithms in Combinatorial Geometry , 1987, EATCS Monographs in Theoretical Computer Science.

[30]  P. George,et al.  Mesh Generation: Application to Finite Elements , 2007 .

[31]  Y. Kallinderis,et al.  Adaptive refinement-coarsening scheme for three-dimensional unstructured meshes , 1993 .

[32]  Michael T. Heath,et al.  WHOLE SYSTEM SIMULATION OF SOLID PROPELLANT ROCKETS , 2002 .

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

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

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

[36]  María Cecilia Rivara,et al.  Design and data structure of fully adaptive, multigrid, finite-element software , 1984, ACM Trans. Math. Softw..

[37]  Bruce G. Baumgart Winged edge polyhedron representation. , 1972 .

[38]  Jiri Blazek,et al.  Comparison of Two Conservative Coupling Algorithms for Structured-Unstructured Grid Interfaces , 2003 .

[39]  Dimitri J. Mavriplis,et al.  Adaptive Meshing Techniques for Viscous Flow Calculations on Mixed Element Unstructured Meshes , 1997 .

[40]  Frédéric Noël,et al.  A data structure dedicated to an integrated free-form surface meshing environment , 1995 .