Présentation des deux implémentations
Implémentation sur FreeFem++
FreeFem++ [HPLHO98] est un logiciel permettant de résoudre des équations aux dérivées partielles en utilisant des éléments finis. Ce logiciel permet de mettre en place assez facilement la méthode multi-échelle présentée au chapitre 8. Les différentes équations aux dérivées partielles peuvent en effet être résolus par une méthode aux éléments finis de Lagrange en utilisant une fonction déjà programmée. Ce logiciel permet également de calculer numériquement des intégrales de fonctions sur maillage en utilisant des points de quadrature par maille. Cela permet, une fois les fonctions de base calculées, de construire assez facilement le système linéaire à résoudre à chaque pas de temps. 9.1.2 Implémentation sur le prototype Arcane Nous avons également pu implémenter notre nouvelle méthode aux éléments finis multi-échelles sur le prototype présenté au chapitre 6. Cette méthode résout une équation différente de celles traitées dans les chapitres 2, 4 et 5. Elle utilise donc un module différent appelé Tracer. Cette implémentation a été plus compliquée car les éléments finis de type Lagrange ont dû être implémentés spécifiquement pour cette méthode. De plus, la notion de degré de liberté n’existe pas encore dans la plate-forme Arcane, l’implémentation est donc ici réduite à celle faite dans le cas où l’espace aux éléments finis initial (VH dans le chapitre 8) est un espace aux éléments finis de Lagrange d’ordre 1. En effet, dans ce cas, les degrés de liberté correspondent aux nœuds du maillage ce qui simplifie la construction des systèmes linéaires.
Difficultés dans l’implémentation de la méthode Résolution des problèmes de cellule
Lors de la définition de la méthode multi-échelle au chapitre 8, nous avons supposé que les différents problèmes de cellules (8.5) étaient résolus de manière exacte. Nous rappelons que ces problèmes consiste, pour une maille K ∈ KH et une direction i, à trouver we ε,K i vérifiant En pratique, ces problèmes doivent être résolus numériquement en utilisant un maillage fin local KK h de taille h petite par rapport à ε. Dans la suite, on note w ε,K les solutions numériques des problèmes de cellules (8.5). On définit, de plus, w ε,H la fonction telle que pour toute maille K ∈ KH,
Résolution sur FreeFem++
La solution du problème de cellule (8.5) n’est pas facilement calculable avec FreeFem++. En effet, le terme d’advection 1 ε b ε (x) · ∇w˜ ε,K i peut créer des instabilités numériques lors d’une résolution par éléments finis classiques. La figure 9.1 montre la solution obtenue après résolution de l’équation (8.5) sur la cellule unité avec des éléments finis P1. Cette solution est clairement instable.