Affiliation:
1. Department of Mathematics, Faculty of Nuclear Science and Physical Engineering, Czech Technical University in Prague, Trojanova 13, 120 00 Praha 2, Czech Republic
Abstract
This article introduces GTMesh, an open-source C++ library providing data structures and algorithms that facilitate the development of numerical schemes on general polytopal meshes. After discussing the features and limitations of the existing open-source alternatives, we focus on the theoretical description of geometry and the topology of conforming polytopal meshes in an arbitrary-dimensional space, using elements from graph theory. The data structure for mesh representation is explained. The main part of the article focuses on the implementation of data structures and algorithms (computation of measures, centers, normals, cell coloring) by using State-of-the-Art template metaprogramming techniques for maximum performance. The geometrical algorithms are designed to be valid regardless of the dimension of the underlying space. As an integral part of the library, a template implementation of class reflection in C++ has been created, which is sufficiently versatile and suitable for the development of numerical and data I/O algorithms working with generic data types. Finally, the use of GTMesh is demonstrated on a simple example of solving the heat equation by the finite volume method.
Funder
Research Centre for Low-Carbon Energy Technologies
Centre of Advanced Applied Sciences
Grant Agency of the Czech Technical University in Prague
Subject
Fluid Flow and Transfer Processes,Computer Science Applications,Process Chemistry and Technology,General Engineering,Instrumentation,General Materials Science
Reference40 articles.
1. Johnson, C. (1987). Numerical Solution of Partial Differential Equations by the Finite Element Method, Cambridge University Press.
2. Szabó, B., and Babuška, I. (2021). Finite Element Analysis—Method, Verification, and Validation, Wiley. [2nd ed.].
3. Larson, M.G., and Bengzon, F. (2013). The Finite Element Method: Theory, Implementation, and Applications, Springer. [6th ed.]. SI Version.
4. Logan, D.L. (2021). A First Course in the Finite Element Method, CENGAGE.
5. Finite Volume Methods;Ciarlet;Handbook of Numerical Analysis,2000