Advanced techniques in scientific computingapplication to electromagnetics
- Amor Martín, Adrián
- Luis E. García Castillo Zuzendaria
Defentsa unibertsitatea: Universidad Carlos III de Madrid
Fecha de defensa: 2018(e)ko abendua-(a)k 05
- Daniel Segovia Vargas Presidentea
- David Pardo Zubiaur Idazkaria
- Romanus Dyczij-Edlinger Kidea
Mota: Tesia
Laburpena
ENGLISH: In the last years, more and more accurate and demanding simulations of radiofrequency components in a system of communications are requested by the community. To address this need, some techniques have been introduced in finite element methods (FEM), such as hp adaptivity (which estimates the error in the problem and generates tailored meshes to achieve more accuracy with less unknowns than in the case of uniformly refined meshes) or domain decomposition methods (DDM, consisting of dividing the whole problem into more manageable subdomains which can be solved in parallel). Adaptivity techniques perform good up to two dimensions, whereas for three dimensions the generation time of the adapted meshes may be prohibitive. On the other hand, large scale simulations have been reported with DDM being a hot topic in the computational electromagnetics community. The main objective of this dissertation is to study the viability of scalable (in terms of parallel performance) algorithms combining nonconformal DDM and automatic adaptivity in three dimensions. Specifically, the adaptivity algorithms might be run in each subdomain independently. This combination has not been detailed in the literature and a proof of concept is discussed in this work. Thus, three building blocks have to be introduced: i) basis functions for the finite elements which support non-uniform approximation orders p; ii) non-conformal and non-overlapping DDM; and iii) adaptivity algorithms in 3D. In this work, these three building blocks have been successfully introduced in a FEM code with a systematic procedure based on the method of manufactured solutions (MMS). Moreover, a three-level parallelization (at the algorithm level, with DDM; at the process level, with message passing interface (MPI), and at the thread level, with OpenMP) has been developed using the paradigm of modular programming which eases the software maintenance and the introduction of new features. Regarding first building block, a family of basis functions which follows a sound mathematical approach to expand the correct space of functions is developed and particularized for triangular prisms. Also, to ease the introduction of different approximation orders in the same mesh, hierarchical basis functions from other authors are used as a black box. With respect to DDM, a thorough study of the error introduced by the non-conformal interfaces between subdomains is required for the adaptivity algorithm. Thus, a quantitative analysis is detailed including non-conformalities generated by independent refinements in neighbor subdomains. This error has not been assessed with detail in the literature and it is a key factor for the adaptivity algorithm to perform properly. An adaptivity algorithm with triangular prisms is also developed and special considerations for the implementation are explained. Finally, on top of these three building blocks, the proof of concept of adaptivity with DDM is discussed. ESPAÑOL: Durante los últimos años, los componentes de radiofrecuencia que forman parte de un sistema de comunicaciones necesitan simulaciones cada vez más exigentes desde el punto de vista de recursos computacionales. Para ello, se han desarrollado diferentes técnicas con el método de los elementos finitos (FEM) como la conocida como adaptatividad hp, que consiste en estimar el error en el problema electromagnético para generar mallas de elementos adecuadas al problema que obtienen una aproximación de forma más efectiva que las mallas estándar; o métodos de descomposición de dominios (DDM), basado en la división del problema original en problemas más pequeños que se pueden resolver en paralelo. El principal problema de las técnicas de adaptatividad es que ofrecen buenas prestaciones para problemas bidimensionales, mientras que en tres dimensiones el tiempo de generación de las mallas adaptadas es prohibitivo. Por otra parte, DDM se ha utilizado satisfactoriamente para la simulación de problemas eléctricamente muy grandes y de gran complejidad, convirtiéndose en uno de los temas más actuales en la comunidad de electromagnetismo computacional. El principal objetivo de este trabajo es estudiar la viabilidad de algoritmos escalables (en términos de paralelización) combinando DDM no conformes y adaptatividad automática en tres dimensiones. Esto permitiría la ejecución de algoritmos de adaptatividad independiente en cada subdominio de DDM. En este trabajo se presenta y discute un prototipo que combina técnicas de adaptatividad y DDM, que aún no se han tratado en detalle en la comunidad científica. Para ello, se implementan tres bloques fundamentales: i) funciones de base para los elements finitos que permitan órdenes variables dentro de la misma malla; ii) DDM no conforme y sin solapamiento; y iii) algoritmos de adaptatividad en tres dimensiones. Estos tres bloques se han implementado satisfactoriamente en un código FEM mediante un método sistemático basado en el método de las soluciones manufacturadas (MMS). Además, se ha llevado a cabo una paralelización a tres niveles: a nivel de algoritmo, con DDM; a nivel de proceso, con MPI (Message Passing Interface); y a nivel de hebra, con OpenMP; todo en un código modular que facilita el mantenimiento y la introducción de nuevas características. Con respecto al primer bloque fundamental, se ha desarollado una familia de funciones base con un enfoque sistemático que permite la expansión correcta del espacio de funciones. Por otra parte, se han introducido funciones de base jerárquicas de otros autores (con los que el grupo al que pertenece el autor de la tesis ha colaborado estrechamente en los últimos años) para facilitar la introducción de diferentes órdenes de aproximación en el mismo mallado. En lo relativo a DDM, se ha realizado un estudio cuantitativo del error generado por las disconformidades en la interfaz entre subdominios, incluidas las discontinuidades generadas por un algoritmo de adaptatividad. Este estudio es fundamental para el correcto funcionamiento de la adaptatividad, y no ha sido evaluado con detalle en la comunidad científica. Además, se ha desarrollado un algoritmo de adaptatividad con prismas triangulares, haciendo especial énfasis en las peculiaridades debidas a la elección de este elemento. Finalmente, estos tres bloques básicos se han utilizado para desarrollar, y discutir, un prototipo que une las técnicas de adaptatividad y DDM.