Engineering with Computers

, Volume 33, Issue 4, pp 727–744 | Cite as

IBHM: index-based data structures for 2D and 3D hybrid meshes

  • Marcos Lage
  • Luiz Fernando MarthaEmail author
  • J. P. Moitinho de Almeida
  • Hélio Lopes
Original Article


We propose new topological data structures for the representation of 2D and 3D hybrid meshes, i.e., meshes composed of elements of different types. Hybrid meshes are playing an increasingly important role in all fields of modeling, because elements of different types are frequently considered either because such meshes are easier to construct or because they produce better numerical results. The proposed data structures are designed to achieve a balance between their memory requirements and the time complexity necessary to answer topological queries while accepting cells (elements) of different types. Additionally these data structures are easy to implement and to operate, because they are based on integer arrays and on basic arithmetic rules. A comparison with other existing data structures regarding their memory requirements and of the time complexities for the algorithms to answer general topological queries is also presented. The comparison shows that the overhead required to accept arbitrary cell types is small.


Topological data structures Hybrid meshes Compact data structures Index-based data structures Local adjacencies 



Part of the work described in this paper was developed during a sabbatical period of the second author at Instituto Superior Técnico, during the first semester of 2012, which was possible thanks to the support by PUC-Rio (Pontifícia Universidade Católica do Rio de Janeiro), CNPq (Brazilian National Council for Scientific and Technological Development), and the European Union through project NUMSIM—“Numerical simulation in technical sciences” of the Marie Curie Actions (FP7-PEOPLE-2009-IRSES), Project No. 246977. Hélio Lopes would like to thank CNPq and FINEP (Brazilian Funding Authority for Studies and Projects) for supporting his research. Marcos Lage would like to thank FAPERJ (Rio de Janeiro Research Funding Agency) for supporting his research.


  1. 1.
    Almeida JPM, Maunder EAW (2013) A general degree hybrid equilibrium finite element for Kirchhoff plates. Int J Numer Methods Eng 94(4):331–354MathSciNetCrossRefzbMATHGoogle Scholar
  2. 2.
    Austern MH (1999) Generic programming and the STL: using and extending the C++ standard template library. Addison-Wesley, BostonGoogle Scholar
  3. 3.
    Bangerth W, Hartmann R, Kanschat G (2007) Deal.ii a general-purpose object-oriented finite element library. ACM Trans Math Softw (TOMS) 33(4):24MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Baumgart BG (1975) A polyhedron representation for computer vision. AFIPS Natl Comput Conf 44:589–596Google Scholar
  5. 5.
    Beghini LL, Pereira A, Espinha R, Menezes IF, Celes W, Paulino GH (2014) An object-oriented framework for finite element analysis based on a compact topological data structure. Adv Eng Softw 68:40–48CrossRefGoogle Scholar
  6. 6.
    Bern MW, Plassmann PE (1997) Mesh generation. Pennsylvania State University, Department of Computer Science and Engineering, College of Engineering.
  7. 7.
    Braid IC, Hillyard RC, Stroud IA (1980) Stepwise construction of polyhedra in geometric modeling. In: Brodlie KW (ed) Mathematical methods in computer graphics and design. Academic Press, San Diego, pp 123–141Google Scholar
  8. 8.
    Brisson E (1993) Representing geometric structures in d dimensions: topology and order. Discrete Comput Geom 9:387–426MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Cavalcanti PR, Carvalho PCP, Martha LF (1997) Non-manifold modelling: an approach based on spatial subdivision. Comput Aided Des 29(3):209–220CrossRefGoogle Scholar
  10. 10.
    Celles W, Paulino G, Espinha R (2005) A compact adjacency-based topological data structure for finite element mesh representation. Int J Numer Methods Eng 64:1529–1556CrossRefzbMATHGoogle Scholar
  11. 11.
    Dobkin DP, Laszlo MJ (1989) Primitives for the manipulation of threedimensional subdivisions. Algorithmica 4:3–32MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Espinha R, Celes W, Rodriguez N, Paulino GH (2009) Partops: compact topological framework for parallel fragmentation simulations. Eng Comput 25(4):345–365CrossRefGoogle Scholar
  13. 13.
    de Floriani L, Hui A (2003) A scalable data structure for three-dimensional non-manifold objects. In: Symposium on geometry processing. ACM, pp 72–82Google Scholar
  14. 14.
    Guibas LJ, Stolfi J (1985) Primitives for the manipulation of general subdivisions and the computation of voronoi diagrams. Trans Graph 4:74–123CrossRefzbMATHGoogle Scholar
  15. 15.
    Gursoz EL, Choi Y, Prinz FB (1990) Vertex-based representation of non-manifold boundaries. In: Turner JU, Wozny MJ, Preiss K (eds) Geometric modeling for product engineering. Elsevier, North-Holland, pp 107–130Google Scholar
  16. 16.
    Gurung T, Rossignac J (2009) Sot: compact representation for tetrahedral meshes. In: 2009 SIAM/ACM joint conference on geometric and physical modeling. ACM, pp 79–88Google Scholar
  17. 17.
    Ito Y (2013) Challenges in unstructured mesh generation for practical and efficient computational fluid dynamics simulations. Comput Fluids 85:47–52CrossRefzbMATHGoogle Scholar
  18. 18.
    Lage M, Lewiner T, Lopes H, Velho L (2005) CHE: a scalable topological data structure for triangular meshes. Technical report, Pontifical Catholic University of Rio de JaneiroGoogle Scholar
  19. 19.
    Lage M, Lewiner T, Lopes H, Velho L (2005) CHF: a scalable topological data structure for tetrahedral meshes. In: Computer graphics and image processing, 2005. SIBGRAPI 2005. 18th Brazilian symposium. IEEE, pp 349–356Google Scholar
  20. 20.
    Lage M, Lopes H, Carvalho MS (2011) Flows with suspended and floating particles. J Comput Phys 230(20):7736–7754. doi: 10.1016/ MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Lee SH, Lee K (2001) Partial entity structure: a compact non-manifold boundary representation based on partial topological entities. In: Hoffman C, Bronsvort W (eds) Solid modeling and applications. ACM, pp 159–170Google Scholar
  22. 22.
    Lopes H, Pesco S, Tavares G, Maia M, Xavier A (2003) Handlebody representation for surfaces and its applications to terrain modeling. Int J Shape Model 9(1):61–77CrossRefzbMATHGoogle Scholar
  23. 23.
    Lopes H, Tavares G (1997) Structural operators for modeling 3-manifolds. In: Hoffman C, Bronsvort W (eds) Solid modeling and applications. ACM, pp 10–18Google Scholar
  24. 24.
    Mäntylä M (1988) An introduction to solid modeling. Computer Science Press, RockvilleGoogle Scholar
  25. 25.
    Mubarak M, Seol S, Lu Q, Shephard MS (2013) A parallel ghosting algorithm for the flexible distributed mesh database. Sci Program 21(1):17–42Google Scholar
  26. 26.
    Ovcharenko A, Chitale K, Sahni O, Jansen K, Shephard M, Tendulkar S, Beall M (2012) Parallel adaptive boundary layer meshing for cfd analysis. In: Proceedings of the 21st international meshing roundtable. Springer, pp 437–455Google Scholar
  27. 27.
    Paoluzzi A, Bernardini F, Cattani C, Ferrucci V (1993) Dimension-independent modeling with simplicial complexes. Trans Graph 12(1):56–102. doi: 10.1145/169728.169719 CrossRefzbMATHGoogle Scholar
  28. 28.
    Pesco S, Lopes H, Tavares G (2004) A stratification approach for modeling 2-cell complexes. Comput Graph 28(2):235–247CrossRefGoogle Scholar
  29. 29.
    Remacle JF, Shephard MS (2003) An algorithm oriented mesh database. Int J Numer Methods Eng 58(2):349–374. doi: 10.1002/nme.774 CrossRefzbMATHGoogle Scholar
  30. 30.
    Rossignac J, O’Connor MA (1990) SGC : a dimension independent model for pointsets with internal structures and incomplete boundaries. In: Turner JU, Wozny MJ, Preiss K (eds) Geometric modeling for product engineering. Elsevier, North-Holland, pp 145–180Google Scholar
  31. 31.
    Rossignac J, Safonova A, Szymczak, A (2001) 3D compression made simple: edgebreaker on a corner-table. In: Shape modeling international. IEEE, pp 278–283Google Scholar
  32. 32.
    Seol ES, Shephard MS (2006) Efficient distributed mesh data structure for parallel automated adaptive analysis. Eng Comput 22(3–4):197–213CrossRefGoogle Scholar
  33. 33.
    Shephard M, Jansen K, Sahni O, Diachin L (2007) Parallel adaptive simulations on unstructured meshes. In: Journal of physics: conference series, vol 78. IOP Publishing, p 012053Google Scholar
  34. 34.
    Talischi C, Paulino G, Pereira A, Menezes I (2012) Polymesher: a general-purpose mesh generator for polygonal elements written in matlab. Struct Multidiscip Optim 45(3):309–328. doi: 10.1007/s00158-011-0706-z MathSciNetCrossRefzbMATHGoogle Scholar
  35. 35.
    Talischi C, Paulino G, Pereira A, Menezes I (2012) Polytop: a matlab implementation of a general topology optimization framework using unstructured polygonal finite element meshes. Struct Multidiscip Optim 45(3):329–357. doi: 10.1007/s00158-011-0696-x MathSciNetCrossRefzbMATHGoogle Scholar
  36. 36.
    Vieira AW, Lewiner T, Velho L, Lopes H, Tavares G (2004) Stellar mesh simplification using probabilistic optimization. Comput Graph Forum 23(4):825–838. doi: 10.1111/j.1467-8659.2004.00811.x CrossRefGoogle Scholar
  37. 37.
    Weiler KJ (1986) Topological structures for geometric modeling. Ph.D. thesis, Rensselaer Polytechnic Institute, New York, USAGoogle Scholar
  38. 38.
    Wu ST (1989) A new combinatorial model for boundary representation. Comput Graph 13(4):477–486CrossRefGoogle Scholar
  39. 39.
    Wu ST (1992) Non-manifold data models: implementation issue. In: CAD/CAM—MICAD. Computer graphcis and computer aided technologies, pp 37–56Google Scholar
  40. 40.
    Yamaguchi Y, Kimura F (1995) Non-manifold topology based on coupling entities. Comput Graph 15(1):42–50CrossRefGoogle Scholar

Copyright information

© Springer-Verlag London 2015

Authors and Affiliations

  • Marcos Lage
    • 1
  • Luiz Fernando Martha
    • 2
    Email author
  • J. P. Moitinho de Almeida
    • 3
  • Hélio Lopes
    • 2
  1. 1.Universidade Federal FluminenseNiteróiBrazil
  2. 2.Pontifícia Universidade Católica do Rio de JaneiroRio de JaneiroBrazil
  3. 3.Instituto Superior TécnicoUniversidade de LisboaLisbonPortugal

Personalised recommendations