Thesis: Estructura de datos basada en nodos para la optimización del proceso de balanceo en mallas geométricas tipo quadtree/octree
Date
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Los métodos numéricos son una técnica matemática utilizada para realizar simulaciones que contribuyen a la resolución de problemas en ingeniería, física, medicina, entre otras disciplinas. Estas técnicas utilizan mallas geométricas para representar los objetos de estudio tanto en 2D como en 3D. Un punto de partida para generar una malla puede ser un quadtree o un octree, dependiendo de la dimensión. Estas estructuras se van dividiendo en subcuadrantes o suboctantes hasta alcanzar el nivel que se requiere. Durante este proceso de refinamiento, es posible que dos celdas vecinas pierdan el balance, vale decir, que la diferencia entre sus niveles de refinamiento sea mayor a uno. El balance es necesario en este tipo de mallas, ya que se han diseñado un conjunto de patrones para gestionar la transición entre regiones más finas y las más gruesas, produciendo así una malla congruente. Este balance se puede mantener mientras se refina, o se puede hacer al terminar el proceso de generación de la malla. En trabajos anteriores se ha demostrado que la primera opción es más rápida para generar la malla. Para lograr esto de forma eficiente, es necesario mantener dinámicamente la información sobre los vecinos de cada celda. Actualmente, los algoritmos de mallado logran esto mediante el uso de un enfoque en donde los arcos mantienen la información sobre los vecinos. En este trabajo se propone una mejora al proceso de almacenamiento dinámico de la información de las celdas vecinas, mediante el diseño de una nueva estructura de datos basada en nodos de la malla, para lograr reducir el tiempo de ejecución y el uso de memoria.
Numerical methods are a mathematical technique used to perform simulations that contribute to solving problems in engineering, physics, medicine, among other disciplines. These techniques use geometric meshes to represent the study objects in both 2D and 3D. A starting point for generating a mesh can be a quadtree or an octree, depending on the dimension. These structures are divided into sub-quadrants or sub-octants until the required level is reached. During this refinement process, it is possible for two neighboring cells to lose balance — that is, the difference between their refinement levels exceeds one. Balance is necessary in this type of mesh, as a set of patterns has been designed to manage the transition between finer and coarser regions, thus producing a consistent mesh. This balance can be maintained during refinement or applied after the mesh generation process is completed. Previous studies have shown that the first option is faster for mesh generation. To achieve this efficiently, it is necessary to dynamically maintain information about each cell's neighbors. Currently, meshing algorithms accomplish this through an approach where arcs store information about neighbors.This work proposes an improvement to the dynamic storage process of neighboring cell information through the design of a new data structure based on mesh nodes, aiming to reduce execution time and memory usage