[en] The simulation and modelling of complex applications involving the interaction of processes governed by different physical principles is addressed in this thesis. The interaction of a fluid with a deformable body, or the exchange of thermal energy between fluid and solid are examples of these multi-physics applications. In these two cases, the modelling strategy proposed here combines the solution of separated physical systems to account for the interactions taking place through the entire domain. As a consequence, the simulation process resulting from the use of separated systems considers independent codes to find the solution of each system, while the entire system is reconstructed through an iterative approach combining these solutions. One of the main advantages of this partitioned approach is that each parallel code can use the most appropriate model and algorithm which allow achieving an accurate solution for the complete physical system. Nevertheless, several challenges must be considered when using this approach. For instance, from a physical point of view, the most of variables involved in the modelling of a multi-physical application must be continuous across the entire domain. From a computational point of view, efficient data transference between parallel codes is required to model the physical interactions taking place through the entire system. In addition, the simulation of multi-physics applications must be robust and maintain scalability not only for each parallel code, but also for the coupling problem. The present work describes the development, validation and use of a high performance computing coupling tool designed for solving efficiently partitioned multiphysics applications. The emphasis has been placed to the development of strategies to make efficient use of large-scale computing architectures, but always keeping the robustness and accuracy of the solutions. The coupling tool developed controls the data transference between the parallel codes establishing peer-to-peer communication layouts between the processors, the dynamic localization of regions where physical interactions take place, and the possible interpolations required between the different meshes composing large-scale multi-physics application. In this work, these features are applied to solve two multi-physics applications: contact of deformable bodies, and conjugate heat transfer. The contact problem involves the interaction of two or more solids which could deform. In this work, a parallel algorithm to deal with this problem is described. The continuity of the variables involved in the coupling problem is ensured using a domain decomposition method. The regions of the surface for each body where the contact takes place are identified using the localization process implemented in the coupling tool. The results show that the parallel algorithm used here for the solution of contact problems agrees well with those achieved by the elastic contact theory as well as those obtained by commercial codes. The conjugate heat transfer problem referes to the thermal interaction between a fluid and a solid. In this case, the coupled process is similar to the contact problem. The results show the capability of the framework developed in this thesis to deal with practical engineering applications. In order to demonstrate the capability of the coupling tool to deal with large-scale applications, a parallel performance study of the partitioned approach is developed in this thesis. The study leads to a load balance strategy that allows estimating the optimal performance of a parallel multi-physics application. The parallel performance analysis of a conjugate heat transfer problem shows that the optimal efficiency of this application is well represented by the expressions derived in this study.

[es] La simulación y modelado de aplicaciones complejas que implican la interacción de procesos caracterizados por diferentes principios físicos es abordado en esta tesis. La interacción de un fluido con un sólido deformable o el intercambio de energía térmica entre un fluido y un sólido son ejemplos de aplicaciones multi-física. En estos casos, la estrategia propuesta en esta tesis combina la solución de los sistemas físicos que constituyen una aplicación multi-física para modelar el sistema completo. El proceso de simulación resultante del uso de sistemas físicos separados, considera códigos numéricos independientes para encontrar la solución de cada sistema, mientras que el problema completo es reconstruido a través de una aproximación iterativa combinando estas soluciones. Una de las principales ventajas de esta aproximación es que cada código puede usar los modelos y algoritmos paralelos más apropiados que le permitan encontrar la solución más precisa en el sistema físico completo. A pesar de esto, existen varios obstáculos que deben de ser considerados. Por ejemplo, desde un punto de vista físico, las variables implicadas en el modelado debe de ser continuas a través del dominio completo así como su primera derivada. Desde un punto de vista computacional, la transferencia de datos entre códigos paralelos es necesario para modelar las interacciones físicas que tienen lugar en el sistema completo. Adicionalmente, las simulaciones de aplicaciones multi-física deben de ser robustas y mantener la escalabilidad, no solo de cada código paralelo, sino también del problema acoplado. Esta tesis describe el desarrollo, validación y uso de una herramienta de acople diseñada para resolver eficientemente aplicaciones multi-físicas haciendo uso de aproximaciones particionadas. El énfasis ha sido puesto en el desarrollo de estrategias que hacen un eficiente uso de sistemas de cómputo de altas prestaciones, siempre manteniendo la robustez y precisión de las soluciones. La herramienta de acople desarrollada controla la transferencia de datos entre los códigos paralelos usados en la simulación, la localización de las regiones donde las interacciones tienen lugar, y las posibles interpolaciones requeridas entre las diferentes mallas usadas para modelar un sistema multi-físico. Estas características son usadas en la solución de dos sistemas: contacto entre cuerpos deformables, y en trasferencia de calor conjugada entre fluido y sólido. El problema de contacto implica la interacción de dos o más sólidos que pueden deformarse. En este trabajo, un algoritmo paralelo para hacer frente este problema es descrito. La continuidad de las variables involucradas en este problema acoplado es garantizada por medio del uso de un método de descomposición de dominios. Las regiones de la superficie de cada partición en donde el contacto tiene lugar son identificadas por un proceso de localización el cual es parte de esencial de la herramienta de acople presentada. Los resultados muestran que el algoritmo paralelo usado aquí para la solución de problemas de contacto coincide bien con aquellos resultados reportados en la teoría de contacto elástico, así como también con aquellos obtenidos a través de códigos comerciales. El problema de transferencia de calor conjugada implica intercambio de energía térmica. El estado de este sistema requiere determinar la distribución de temperatura y del flujo de calor a través de la interfaz fluido-sólido. En este caso, el proceso de acople es similar al aplicado al problema de contacto. Los resultados muestran la precisión del método desarrollado en esta tesis, así como también la capacidad para hacer frente a problemas relevantes de ingeniería. Finalmente, un estudio relacionado con del rendimiento paralelo de las estrategias de acople mencionadas anteriormente es usado para mostrar la eficiencia del acople desarrollada para resolver aplicaciones representadas por las expresiones derivadas en este estudio.