Modelamiento de un Generador de Mallas Basado en Octrees, Usando Patrones de Diseño.
Tesis
Open/ Download
Publication date
2007Metadata
Show full item record
Cómo citar
Hitschfeld Kahler, Nancy
Cómo citar
Modelamiento de un Generador de Mallas Basado en Octrees, Usando Patrones de Diseño.
Author
Professor Advisor
Abstract
El objetivo del presente trabajo de titulación es mejorar el diseño, robustez, extensibilidad y aplicabilidad de un generador de mallas basado en octrees. Para ello se ha propuesto un nuevo diseño, el cual es orientado a objetos, usando patrones de diseño. Dentro del diseño, el cual incluye varios algoritmos que representan las etapas para generar una malla (generación de una malla inicial, refinamiento y mejoramiento de la malla según requerimientos del usuario, y finalmente, generación de la malla final), se ha implementado uno de partición de elementos 1-irregular, que junto a otro anterior que no abarcaba todas las configuraciones, permite entregar una malla particionada en su totalidad sin elementos 1-irregular en su interior. Un elemento 1-irregular es aquel que contiene a lo más un punto adicional en cada una de sus aristas.
En una primera etapa se ha estudiado el diseño anterior, posteriormente se ha modelado el generador de mallas con un enfoque orientado a objetos entregando un diagrama de clases que permitirá en el futuro modificar el generador anterior y llevarlo a un rumbo más actual en relación a las buenas prácticas de ingeniería de software. Dado que existe una gran cantidad de algoritmos para distintos propósitos, se ha seguido la filosofía del patrón de diseño Strategy, el cual permite definir una familia de algoritmos, encapsular uno de ellos y hacerlos intercambiables.
A continuación se abordó el tema del particionamiento de elementos 1-irregular, en particular, el cuboide 1-irregular. El algoritmo diseñado e implementado pertenece a la familia de algoritmos de generación de una malla final, y se suma a otro que entrega particiones de elementos mixtos para algunas configuraciones 1-irregular. El algoritmo en cuestión, recibe un cuboide 1-irregular, genera una malla inicial, la particiona mediante bisección de tetraedros, y posteriormente mejora su calidad aplicando la condición de Delaunay en 3D mediante un algoritmo que recorre las caras interiores y realiza transformaciones locales cuando un tetraedro no satisface la condición de Delaunay. La idea de agregar este nuevo algoritmo es resolver todas las configuraciones irregulares posibles para un cuboide, entre las que se incluyen aristas y caras con un punto de Steiner en su mitad.
Finalmente se ha revisado la robustez del particionamiento Delaunay, y se han probado todas las configuraciones posibles para cuboides 1-irregulares. La implementación se llevó a cabo en lenguaje C++, y la visualización de los resultados se realizó mediante el programa GeomView en Linux usando el formato vectorial. Como resultado se tiene un diseño extensible para el generador de mallas basado en octrees y un algoritmo robusto de particionamiento final que resuelve el problema completamente.
xmlui.dri2xhtml.METS-1.0.item-notadetesis.item
Memoria para optar al título de Ingeniero Civil en Computación
Identifier
URI: https://repositorio.uchile.cl/handle/2250/104718
Collections