Generador de mallas de poliedros en tres dimensiones
Professor Advisor
dc.contributor.advisor
Hitschfeld Kahler, Nancy
Author
dc.contributor.author
Cerda Pimentel, Andrés Eduardo
Associate professor
dc.contributor.other
Palma Lizana, Mauricio
Associate professor
dc.contributor.other
Navarro Badino, Gonzalo
Admission date
dc.date.accessioned
2023-01-26T20:45:56Z
Available date
dc.date.available
2023-01-26T20:45:56Z
Publication date
dc.date.issued
2022
Identifier
dc.identifier.uri
https://repositorio.uchile.cl/handle/2250/191821
Abstract
dc.description.abstract
Las mallas de tetraedros actualmente son el estándar, tanto para diseños 3D como para
simulaciones físicas. Existen bastantes herramientas disponibles para crear, modificar y uti-
lizar en diversas aplicaciones las mallas de tetraedros, no así con las mallas de poliedros. No
obstante, la creación de nuevos métodos numéricos (como el método de elementos virtuales),
abre la necesidad de tener herramientas que faciliten la creación de mallas de poliedros. De-
bido a la cantidad reducida de elementos que se utilizan al realizar simulaciones, disminuye
el tiempo requerido respecto a mallas convencionales.
Bajo este contexto, se presenta la oportunidad de crear un mallador de poliedros, pero
como se dijo anteriormente, existen muchas mallas de tetraedros ya creadas, por lo cual se
ve la posibilidad de crear un algoritmo que traspase una malla de tetraedros a una malla de
poliedros. En particular se eligió un mallador que produce mallas de buena calidad con el
método de tetraedralización de Delaunay, este es el caso de TetGen.
Primeramente se parte por tratar de extender un algoritmo para vacíos cosmológicos que
utiliza poliedros para su estructura interna, el cual no resultó ser conveniente puesto que al
estar orientado a la detección de vacíos, los criterios que utiliza para generar poliedros no
llevan a mallas de calidad. Luego se intentó adaptar una versión anterior del mismo, el cual
si tiene criterios de generación que sirven para generar poliedros a partir de una malla de
tetraedros arbitraria, pero al poseer varias fallas de implementación, lo hizo muy difícil de
adaptar.
Es por esto que finalmente se adoptó la decisión de modificar una implementación de otro
mallador en python, el cual es similar en implementación pero no en principio al algoritmo
que se obtuvo en esta memoria, se le hizo una reingeniería, generando nuevas estructuras de
datos, implementando un algoritmo de generación de mallas de poliedros a partir de mallas
de tetraedros construidas por TetGen, y exportando dichas mallas a un formato de lectura
de poliedros.
Este algoritmo funciona de buena manera, pero requiere más refinamiento para generar
mallas de poliedros sin poliedros no simples. El costo de ejecución computacional del al-
goritmo es O(n2) según el número de puntos que contenga la malla de input, el algoritmo
es inherentemente single-threaded. De todas maneras, el algoritmo es tanto fácil de utilizar
como de entender, y su implementación funciona en todos los sistemas operativos actuales
gracias a que está hecha en Python.
es_ES
Lenguage
dc.language.iso
es
es_ES
Publisher
dc.publisher
Universidad de Chile
es_ES
Type of license
dc.rights
Attribution-NonCommercial-NoDerivs 3.0 United States