Sujet de thèse - Maison de la Simulation
Transcription
Sujet de thèse - Maison de la Simulation
Sujet de thèse Titre : (en français et en Anglais) Amélioration de la performance d'un code de de simulation numérique de transfert de chaleur et de masse. Improvement of a numerical simulation of heat and mass transfer : towards more performance. Encadrant : (prénom, nom, grade, mél, laboratoire) Édouard Canot CR1 CNRS [email protected] IRISA (INRIA, Centre de Recherche Bretagne-Atlantique) Mots clés : (en français et en Anglais) Transfert de chaleur et de masse, Changement de phase, Système algébro-différentiel, Solveur linéaire creux parallèle Heat and mass transfer, Phase change, Differential algebraic equations, Parallel linear sparse solver Description du sujet : (~1 page, en français et en Anglais) L'application d'origine concerne l'examen des feux préhistoriques, pour lesquels on étudie le chauffage intensif d'un sol saturé; d'autres applications possibles correspondent à l'évaporation naturelle des sols ou des matériaux poreux. Le modèle physique utilisé, couplant un transfert de chaleur avec changement de phase et l'écoulement des fluides dans un milieu poreux, aboutit, une fois discrétisé par une approche globale, à un système différentiel algébrique. Sa résolution implique l'utilisation d'un solveur DAE spécifique, qui requiert la connaissance de la jacobienne du système différentiel, cette dernière étant obtenue analytiquement par le calcul formel. La résolution de l'intégration en temps conduit à des coûts en mémoire et temps CPU qui augmentent vite avec la finesse de la résolution envisagée. Une première étape a été l'emploi du format de stockage creux pour la jacobienne et à l'emploi de solveurs linéaires creux, comme UMFPack. Dans cette thèse, la prise en compte de nouvelles équations physiques, destinées à obtenir un modèle plus proche de la réalité, va conduire à des systèmes encore plus gros à résoudre. On vise alors l'emploi du parallélisme sur certaines parties du code, notamment la résolution du système linéaire; un profiling sera par ailleurs nécessaire pour améliorer la performance globale du code. L'architecture visée correspond à des machines multi-cœurs, à mémoire partagée. Le code est écrit en Fortran 90 et utilise une bibliothèque numérique (MUESLI) permettant de manipuler les vecteurs et les matrices avec une syntaxe très proche de celle de Matlab. Pré-requis : Unix, Fortran 90, OpenMP, MPI. Object of the Thesis: The original application concerns the strong heating of a saturated porous medium which is related to the study of prehistoric fires. However, other applications can be found in environmental domains, such as the natural evaporation of soils or porous materials. The physical model used couples heat transfer with phase change and fluid flow in porous media. This leads, after discretization by a global approach, to a differential algebraic system of equations. To numerically solve it, the use of a specific DAE solver is necessary which, in turns, requires the knowledge of the jacobian of the system. This latter jacobian is derived via symbolic computation. Numerical time integration leads to costly computation, both in memory and CPU time. A first step already done was the use of sparse storage for the jacobian matrix, associated to dedicated sparse linear solver, as UMFPack. In this thesis, adding new physical equations to the model will lead to bigger jacobian matrices. We aim at using some parallel algorithms or solvers in order to reduce the CPU time, at least concerning the linear resolution of the jacobian. Moreover, some profiling of the code will be necessary to detect other bottlenecks. Target architectures are multicores machines with shared memory. The code is written in Fortran 90 et uses a numerical library (MUESLI) which allow a simplified vector syntax, as in Matlab. Prerequisite : Unix, Fortran 90, OpenMP, MPI.