Design and Implementation of Distributed Meshes in HiFlow3

  • Staffan Ronnås
  • Thomas Gengenbach
  • Eva Ketelaer
  • Vincent Heuveline
Conference paper

Abstract

This paper describes the conception and implementation of the mesh module created as part of the finite element software package HiFlow3 [2]. With the aim of providing a general representation that can be reused in a wide range of applications, the code provides functions to work with meshes with different cell types in different dimensions through a uniform abstract interface. The decisions made during the design process were motivated by requirements coming from several applications. These requirements include the ability to handle large distributed meshes for cluster computing as well as local mesh refinement and coarsening for adaptive methods. A balance has been found between the need of high performance on the one hand and simple, maintainable code on the other.

Keywords

Incidence Relation Mesh Entity Mesh Module Abstract Interface Adaptive Finite Element Method 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

References

  1. 1.
    Abrahams, D., Siek, J., Witt, T.: The Boost.Iterator Library (2003). http://www.boost.org/doc/libs/release/libs/iterator/
  2. 2.
    Anzt, H., Augustin, W., Baumann, M., Bockelmann, H., Gengenbach, T., Hahn, T., Heuveline, V., Ketelaer, E., Lukarski, D., Otzen, A., Ritterbusch, S., Rocker, B., Ronnas, S., Schick, M., Subramanian, C., Weiss, J.P., Wilhelm, F.: HiFlow3 – A Flexible and Hardware-Aware Parallel Finite Element Package. EMCL Preprint Series (2010). URL http://www.emcl.kit.edu/preprints/emcl-preprint-2010-06.pdf
  3. 3.
    Bastian, P., Blatt, M., Dedner, A., Engwer, C., Klöfkorn, R., Ohlberger, M., Sander, O.: A Generic Grid Interface for Parallel and Adaptive Scientific Computing. Part I: Abstract Framework. Computing 82(2-3), 103–119 (2008)MATHGoogle Scholar
  4. 4.
    Bastian, P., Blatt, M., Dedner, A., Engwer, C., Klöfkorn, R., Ohlberger, M., Sander, O.: A Generic Grid Interface for Parallel and Adaptive Scientific Computing. Part II: Implementation and Tests in DUNE. Computing 82(2-3), 121–138 (2008)MATHGoogle Scholar
  5. 5.
    Chevalier, C., Pellegrini, F.: PT-Scotch: A tool for efficient parallel graph ordering. Parallel Computing 34(6-8), 318 (2008)MathSciNetCrossRefGoogle Scholar
  6. 6.
    Gamma, E., Helm, R., Johnson, R.E., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading, MA (1995)Google Scholar
  7. 7.
    Gengenbach, T., Henn, T., Heppt, W., Heuveline, V., Krause, M.J.: United Airways: Numerical Simulation of the Human Respiratory System (2010). http://www.united-airways.eu
  8. 8.
    Gengenbach, T., Heuveline, V., Krause, M.: Numerical Simulation of the Human Lung: A Two-scale Approach. In: BMT 2010 – Reguläre Beiträge (BMT 2010 Reguläre Beiträge). Rostock-Warnemünde, Germany (2010)Google Scholar
  9. 9.
    Goal Oriented Adaptivity for Tropical Cyclones (2010): http://www.emcl.kit.edu/goa_for_tcs.php
  10. 10.
    Hughes, T., Cottrell, J., Bazilevs, Y.: Isogeometric analysis: CAD, finite elements, NURBS, exact geometry and mesh refinement. Computer Methods in Applied Mechanics and Engineering 194(39-41), 4135–4195 (2005)MathSciNetMATHCrossRefGoogle Scholar
  11. 11.
    Karypis, G., Kumar, V.: A parallel algorithm for multilevel graph partitioning and sparse matrix ordering. J. Parallel Distrib. Comput. 48(1), 71–95 (1998)MathSciNetCrossRefGoogle Scholar
  12. 12.
    Karypis, G., Kumar., V.: A Fast and Highly Quality Multilevel Scheme for Partitioning Irregular Graphs. SIAM Journal on Scientific Computing 20(1), 359–392 (1999)Google Scholar
  13. 13.
    Krause, M.J., Gengenbach, T., Heuveline, V.: Hybrid Parallel Simulations of Fluid Flows in Complex Geometries: Application to the Human Lungs. In: Proceedings of Euro-Par 2010 Workshops. Revised Selected Papers Springer-Verlag, Vol. 6586, 209-216 (2010)Google Scholar
  14. 14.
    Logg, A.: Efficient Representation of Computational Meshes. International Journal of Computational Science and Engineering 4(4), 283–295 (2009)CrossRefGoogle Scholar
  15. 15.
    VTK – The Visualization Toolkit: http://www.vtk.org/

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Staffan Ronnås
    • 1
  • Thomas Gengenbach
    • 1
  • Eva Ketelaer
    • 1
  • Vincent Heuveline
    • 1
  1. 1.Engineering Mathematics and Computing Lab (EMCL)Karlsruhe Institute of Technology (KIT)KarlsruheGermany

Personalised recommendations