Soutenance de stage 16 Mai au 5 Août 2011 Une librairie C++ pour résoudre les équations aux dérivées partielles par la méthode des éléments finis Bonjour à tous, Je vais vous présenter toute l’étendue des différents aspects que j’ai pu voir pendant mon stage que j’ai effectué au LJK pendant 12 semaines autour de la librairie Feel++ qui est une librairie C++ qui permet de résoudre les EDP par la méthode des éléments finis. Soutenance de stage 16 Mai au 5 Août 2011 Baptiste Morin - Ricm 4
Plan de la présentation I . Le laboratoire II . Le projet III . La méthode des éléments finis IV . Travail réalisé V . Poursuites Pour ce faire, nous verrons dans un premier temps un bref aperçu du laboratoire dans lequel j’ai effectué mon stage puis le projet sur lequel j’ai eu la chance de travailler. Pour mener à bien ma mission, nous verrons dans un second temps les notions que j’ai du acquérir afin d’avoir toutes les clé en main pour mettre en place tout le travail que j’ai pu faire pendant ce stage Puis nous terminerons par aborder les éventuelles poursuites de ces travaux Baptiste Morin - Ricm 4
Plan de la présentation I . Le laboratoire II . Le projet III . La méthode des éléments finis IV . Travail réalisé V . Poursuites Baptiste Morin - Ricm 4
Le laboratoire Quelques chiffres LJK créé en Janvier 2007 Une unité mixte de recherche de 5 universités 3 départements 250 personnes 4 projets européens Le LJK est un laboratoire expert en mathématiques appliquées … Baptiste Morin - Ricm 4
L’entreprise Les départements Géométrie-Image Modèle et algorithmes déterministes Probabilités/Statistiques 6 équipes autour de la modélisation graphique et vision par ordinateur Recherches innovantes vers une insertion de la géométrie 3D 5 équipes qui développent des outils numériques pour de grosses résolutions Calcul exact et optimisations 6 équipes qui travaillent autour des mathématiques financières, sciences sociales ou encore des phénomènes aléatoires Baptiste Morin - Ricm 4
Le laboratoire Mon équipe : EDP Deux disciplines Trois applications Analyse fonctionnelle et équations aux dérivées partielles Analyse numérique et calcul scientifique Modélisation en biologie Mécanique des fluides Modélisation physique Le projet qui m’a été confié était rattaché à l’équipe EDP qui fait partie du département Modèles et Algorithmes Déterministe du laboratoire. Cette équipe est spécialisée dans deux domaines d’applications que sont l’analyse fonctionnelle et évidemment EDP mais aussi l’analyse numérique et calcul scientifique. Ces deux domaines … Image du haut : interaction d’un solide rigide avec une surface libre Image du bas : orientation des fibre dans un myocarde Baptiste Morin - Ricm 4
Plan de la présentation I . Le laboratoire II . Le projet III . La méthode des éléments finis IV . Travail réalisé V . Poursuites Nous allons maintenant s’intéresser au projet en lui-même et à la librairie sur laquelle j’ai été amené à travailler Baptiste Morin - Ricm 4
Le projet La librairie Feel++ Bibliothèque C++ pour la résolution d’EDP Problèmes en 1D, 2D et 3D Suite du cours de MN (Ricm3) Plusieurs types d’objets géométriques Continue et discontinue La librairie Feel++ est une librairie développée en C++ et permet de résoudre des EDP pour des problèmes dans les 3 dimensions. Elle résout de telles équations par la méthode des éléments finis, cette méthode s’inscrit pleinement dans la suite du cours de Méthodes Numériques dispensé en 1ère année. Cette méthode donne suite à la dernière section consacré aux équations différentielles ?? Puisque les EDP sont des équations différentielles ??. Cette librairie rend possible la manipulation d’objets géométriques complexe mais aussi une discrétization continue et discontinue de l’espace. Image du bas : potentiel électrique à la surface d’un crâne Baptiste Morin - Ricm 4
Le projet La librairie Feel++ Multi plateformes Intégrée à Debian Propre langage intégré Diffusé et stable Documentée Version actuelle : 0.9.23 Feel a l’avantage d’être multi plateformes : on peut s’en servir sur Linux, Windows, Mac ou encore ??, elle est même disponible dans les paquets Debian. Elle dispose de son propre langage intégré. Au niveau de sa diffusion, la version actuelle est 0.9.23 et son état est stable, elle est donc téléchargeable et opérationnelle à travers son site dédié ou sur la forge via subversion. Feel dispose d’un manuel largement documenté, pour l’installation, les premiers pas mais aussi les exemples concrets. Image du bas : maillage d’un cerveau coloré selon les différents quantités physiques Baptiste Morin - Ricm 4
Le projet Contributions Distribution Collaboration entre UJF, EPFL et l’Université de Coimbra (Portugal) 2 projets ANR et un projet FNRAE Distribution Open-Source Licence GNU GPL Feel++ est le fruit d’une collaboration entre 3 université: Joseph Fourier à Grenoble, L’école Polytechnique Fédérale de Lausanne et l’université de Coimbra au Portugal. Elle est également supportée par 2 projets de l’agence nationale de recherche mais aussi par un projet de la fondation nationale de recherche pour l’aéronautique et l’Espace. C’est une librairie open-source donc disponible pour tout le monde et elle est régie sous la licence publique GNU GPL. Baptiste Morin - Ricm 4
Le projet Plusieurs aspects Théorie mathématique Puissances de l’IT Résolution d’équations complexes Méthodes de Garlekin, interpolation … Optimisation Visualisation Analyse Au regard du projet qui m’était proposé, j’ai été particulièrement attiré par la possibilité de combiner plusieurs aspects dans des domaines distincts. Derrière Feel se dissimule d’une part une forte empreinte mathématique notamment parce que l’on y résout des équation complexes en employant des méthodes ?? Blabl qui font appel à des notions forte telles que l’interpolation ou la discrétisation d’espaces. Feel couvre également un large spectre du domaine des sciences de l’informatique avec l’optimisation des calculs pour réduire le temps de calcul grâceaux librairies Boost mais aussi des outils de visualisation performants comme Gmsh ou Paraview qui donnent un aspect esthétique aux résultats. Baptiste Morin - Ricm 4
Le projet Plusieurs aspects Calcul scientifique Mathématiques Informatique Calcul scientifique Au regard du sujet qui m’était proposé, j’ai été particulièrement attiré par la possibilité de combiner plusieurs aspects dans des domaines distincts. Derrière Feel se dissimule d’une part une forte empreinte mathématique notamment parce que l’on y résout des équation complexes en employant des méthodes ?? Blabl qui font appel à des notions fortes telles que l’interpolation ou la discrétisation d’espaces. Feel couvre également un large spectre du domaine des sciences de l’informatique avec l’optimisation des calculs pour réduire le temps de calcul grâceaux librairies Boost mais aussi des outils de visualisation et modélisation performants comme Gmsh ou Paraview qui donnent un aspect esthétique aux résultats. Modélisation Baptiste Morin - Ricm 4
Le projet Méthodologie Projet conséquent Subversion Systèmes de compilations Nombreux outils : Cmake, Gmsh, Boost, … Outre l’aspect technique du projet, sa taille en terme de codes, de contributeurs et de variantes possibles en fait un projet réellement intéressant. Baptiste Morin - Ricm 4
Le projet Mon projet Appropriation de la théorie mathématique Actualisation et fusion de la documentation Refonte du manuel Ajout d’exemple Mise en place de tests journaliers Ma mission au sein de Feel avait plusieurs aspect : je devais dans un premier temps apprendre et être familier avec la méthode des éléments finis mais aussi reprendre le manuel déjà présent avec la librairie en le mettant à jour. Des étudiants de M2 en avait fait un, je devrais donc fusionner avec celui présent tout en apportant des modifications. Le manuel comportait également une partie dédiée au tutoriel avec des exemples basiques mais aussi des exemples d’applications complètes. Je devais alors ré-actualiser cette partie tout en me plongeant dans le code pour lui aussi le mettre à jour et ainsi uniformiser les deux entités. Enfin, au terme de ces différents travaux, je serais capable de mener à terme un exemple complet et concret, dans un domaine que l’on déterminerai plus tard. Finalement, si le temps le permet je devrais mettre en place des tests journaliers ou hebdomadaires en utilisant l’outil Ctest avec CMake. Baptiste Morin - Ricm 4
Le projet Cadre du stage Autonomie Encadrant sur place Messagerie instantanée Vidéoconférence Suivi par le dépôt de subversion Baptiste Morin - Ricm 4
Plan de la présentation I . Le laboratoire II . Le projet III . La méthode des éléments finis IV . Travail réalisé V . Poursuites On va maintenant rentrer un peu plus dans le vif du sujet avec un aperçu de la théorie mathématique nécessaire au bon déroulement de mon stage Baptiste Morin - Ricm 4
La méthode des éléments finis Introduction Résolution numérique d’EDP Solution approchée fiable Notion de maillage Interpolation La méthode des éléments finis offre la possibilité de résoudre numériquement des équations aux dérivées partielles, ces valeurs numériques sont approchées mais fiable. Pour appliquer cette méthode, il est nécessaire de travailler sur des maillage. Ces maillages sont en réalités des discrétisatiosn de l’espace sur lequel on travaille. Cette discrétisation, qu’elle soit continue ou discontinue, fait appel au phénomène d’interpolation qui simplifie les calculs préliminaires et qui permet d’obtenir plutôt rapidement ce qu’on appelle les degrés de libertés, c’est-à-dire ici chaque intersection de la figure. Baptiste Morin - Ricm 4
La méthode des éléments finis Equations Problèmes connus de la Physique Conditions aux limites => unicité On voit ici une équation classique qualifité d’EDP puisqu’elle comprend l’opérateur Laplacien qui correspond à la somme des dérivées partielles d’ordre 2 pour chaque variable de la fonction u. Une équation ainsi écrite possède une infinité de solution car on ne met aucune condition sur des valeurs précises qu’elle doit avoir à tel ou tel endroit de l’espace considéré. C’est pourquoi il est nécessaire d’imposer des conditions aux limites, celles-ci donne un caractère plus singulier à la solution , voir même un caractère unique. Baptiste Morin - Ricm 4
La méthode des éléments finis Domaine d’application Maillage Discrétisation spatiale d’un milieu Modélisation graphique d’un domaine Eléments proportionnés finis et définis Précision Variation de la taille du maillage Zones plus ou moins denses Grand nombre de modèles possibles Le domaine d’application ou maillage sur lequel les calculs sont effectués Baptiste Morin - Ricm 4
La méthode des éléments finis Formulation Forte Fonction test Intégration par partie Contraintes réduites sur l’inconnue Faible Du point de vue des équations, on part très souvent d’une formulation forte. Par exemple ici on a R qui est une relation quelconque faisant intervenir u, notre problème revient donc à trouver u telle que l’on satisfasse cette équation. La méthode des éléments finis fait intervenir une fonction que l’on appelle fonction test. Il suffit de multiplier les 2 membres de cette équation par cette fonction test puis d’intégrer par partie cette équation pour obtenir la formulation faible : avec cette technique on a ainsi diminué l’ordre de dérivabilité exigée initialement pour u. Cela augmente donc le nombre de solutions réalisable puisqu’à ce moment, nos conditions initiales ne sont pas encore appliquées. Baptiste Morin - Ricm 4
La méthode des éléments finis Principe général Equation sur Ω Intégration par partie avec v Formulation faible Discrétisation de l’espace Munition d’un base Problème matriciel Pour terminer avec cette méthode, voici son principe global de fonctionnement : on souhaite résoudre une EDP sur un domaine Omega, on insère notre fonction test puis on intégre par partie. On obtient alors notre formulation faible. En fonction des simplifications choisie pour l’équation, on met en place la discrétisation de l’espace et on le munit d’une base adéquate qui simplifiera nos calculs. Une fois que cela est fait, on se ramène à un problème matriciel que l’on sait résoudre. Plusieurs méthodes puissantes ont été vue en MN l’an passé, notamment la méthode de résolution LU et aussi celle de Gauss. A VERIFIER Baptiste Morin - Ricm 4
Plan de la présentation I . Le laboratoire II . Le projet III . La méthode des éléments finis IV . Travail réalisé V . Poursuites Après avoir assimilé la méthode des éléments finis, j’ai pu passer au travail plus concret qui m’était demandé Baptiste Morin - Ricm 4
Le travail réalisé Documentation Correction Mise à jour Réorganisation Suppression Baptiste Morin - Ricm 4
Le travail réalisé Documentation Installation sur Mac : macports Gestionnaire de paquets libres Dépendances Baptiste Morin - Ricm 4
Le travail réalisé Tutoriel Exemples basiques Restructuration Mots-clés Illustrations Baptiste Morin - Ricm 4
Le travail réalisé Améliorations Nouveaux maillages Format medit Lien avec le standard .msh Modification dans le lecteur Format STL Script avec .geo Baptiste Morin - Ricm 4
Le travail réalisé L’application Dissipateur de chaleur Performances Paramétrage Visualisation Baptiste Morin - Ricm 4
Le travail réalisé L’application Géométrie Baptiste Morin - Ricm 4
Le travail réalisé L’application Maillages Baptiste Morin - Ricm 4
Le travail réalisé L’application Equations Baptiste Morin - Ricm 4
Le travail réalisé L’application Implémentation Résultats Baptiste Morin - Ricm 4
Le travail réalisé L’application Baptiste Morin - Ricm 4
Plan de la présentation I . Le laboratoire II . Le projet III . La méthode des éléments finis IV . Travail réalisé V . Poursuites Baptiste Morin - Ricm 4
Poursuites Quelques améliorations Maillage d’un dissipateur complet Affinage du résultat Plus de paramètres Baptiste Morin - Ricm 4
Poursuites Continuation sur le projet Maillage d’un dissipateur complet Affinage du résultat Plus de paramètres Autres applications ou améliorations Baptiste Morin - Ricm 4
Plan de la présentation I . Le laboratoire II . Le projet III . La méthode des éléments finis IV . Travail réalisé V . Poursuites Baptiste Morin - Ricm 4
Conclusion Première expérience Acquisition de méthodologie Grande autonomie Nouvelles connaissances Nombreux outils Solidification Baptiste Morin - Ricm 4
Merci pour votre attention Merci pour votre attention, si vous avez des questions je serais heureux d’y répondre Baptiste Morin - Ricm 4