Automatic mesh generator with specified boundary
Computer Methods in Applied Mechanics and Engineering
Quality local refinement of tetrahedral meshes based on 8-subtetrahedron subdivision
Mathematics of Computation
Several aspects of three-dimensional Delaunay triangulation
Advances in Engineering Software
Locally Adapted Tetrahedral Meshes Using Bisection
SIAM Journal on Scientific Computing
Tetrahedral Mesh Generation for Environmental Problems over Complex Terrains
ICCS '02 Proceedings of the International Conference on Computational Science-Part I
Object-oriented programming in FEM and BEM: a bibliography (1990-2003)
Advances in Engineering Software
Smoothing and local refinement techniques for improving tetrahedral mesh quality
Computers and Structures
Hi-index | 0.00 |
The data structures used to model meshes for solving problems by finite element methods is based on different arrays. In these arrays information is stored related to, among other components, nodes, edges, faces, tetrahedral and connectivity. These structures provide optimum results which, in many cases, incur additional programming. In adaptively solving problems, the meshes undergo refinement/derefinement processes, to improve the numeric solution with each step. These processes produce new elements and eliminate others, so the arrays should reflect the state of the mesh in each of these steps. Using traditional language, memory should be pre-assigned at the outset of the program, so it is only required to estimate the changes taking place in the mesh. In the same respect, it was necessary to compact the arrays to recover space from erased elements. With the advent of languages such as C, memory can be assigned dynamically, resolving most of the problem. However, arrays are costly to maintain, as they require adapting the mesh treatment to the data model, and not inversely. The object-oriented program suggests a new focus in implementing data structures to work with meshes. The classes create data types that may be adjusted to the needs of each case, allowing each element to be modeled on an independent, exclusive basis. Inheritance and encapsulation enable us to simplify the programming tasks and increase code reuse. We propose a data structure based on objects for treating meshes. Finally, we present an implementation of a local refinement algorithm based on the subdivision of tetrahedra in 8-sub-tetrahedra and some experiments.