An object oriented method for tetrahedral mesh refinement

  • Authors:
  • J. M. Gonzalez-Yuste;R. Montenegro;J. M. Escobar;G. Montero;E. Rodriguez

  • Affiliations:
  • University Institute of Intelligent Systems and Numerical Applications in Engineering, University of Las Palmas de Gran Canaria, Spain;University Institute of Intelligent Systems and Numerical Applications in Engineering, University of Las Palmas de Gran Canaria, Spain;University Institute of Intelligent Systems and Numerical Applications in Engineering, University of Las Palmas de Gran Canaria, Spain;University Institute of Intelligent Systems and Numerical Applications in Engineering, University of Las Palmas de Gran Canaria, Spain;University Institute of Intelligent Systems and Numerical Applications in Engineering, University of Las Palmas de Gran Canaria, Spain

  • Venue:
  • ICECT'03 Proceedings of the third international conference on Engineering computational technology
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

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.