Académique Documents
Professionnel Documents
Culture Documents
Directives : Ce projet peut être fait par équipe de deux personnes. Vous avez jusqu’au
22 décembre pour le compléter. Il doit être fait avec le logiciel Matlab et le générateur
de maillages distmesh2d † .
Un embryon de programme est disponible sur le site Internet du cours (MEF6207.m). Ce
programme Matlab vous offre trois options. L’option demo génère une géométrie et un
maillage à l’aide de distmesh2d. L’option conv génère une géométrie de forme carrée
et un maillage structuré. Finalement, l’option util est l’endroit où vous mettrez en place
la géométrie et le maillage pour votre problème. Suivra ensuite le code de votre solveur
éléments-finis. Vous pouvez vous inspirer du programme 1-D, aussi disponible sur le site
Internet du cours (MEF1D.m).
Après avoir vérifié que votre code fonctionne bien (option conv), je vous suggère un
problème générique, à l’option demo, que vous devez réussir à résoudre avec votre pro-
gramme d’éléments finis. Vous devez ensuite l’utiliser dans le cadre d’une application
simple de votre choix, ou bien pour résoudre un problème qui nécessite des algorithmes
numériques plus complexes (problème non linéaire, problème transitoire, équation non
elliptique). À vous de choisir.
Lorsque votre projet sera complété, vous devez me remettre un court rapport qui ex-
plique la structure de votre programme et le problème que vous avez choisi d’étudier.
Vous devez aussi me rendre un CD-ROM qui contiendra votre programme que je pourrai
exécuter sur la version de base de Matlab, afin que je puisse refaire le problème décrit
dans le rapport.
Le problème
Ce projet consiste à discrétiser, à l’aide de la méthode des éléments finis, l’équation
aux dérivées partielles linéaire
~
a(x, ~
y) · ∇u(x, ~ · {b(x, y) ∇u(x,
y) − ∇ ~ y)} + c(x, y) u(x, y) = f (x, y),
†
A Simple Mesh Generator in MATLAB, SIAM Review, Volume 46, Numéro 2, Juin 2004, pages 329-
345.
Ce qui est déjà fait
• Vous ferez ensuite l’appel à distmesh2d. Inspirez-vous de ce qui est fait à l’option
demo. Vous obtiendrez alors les tableaux connec et coor.
~
• Les fonctions a(x, y), b(x, y), c(x, y), f (x, y), g(x, y), h(x, y) doivent se retrou-
ver dans les fonctions Matlab a.m, b.m, c.m, f.m, g.m et h.m. L’usager doit donc
utiliser les fonctions g.m et h.m afin de spécifier les différentes conditions limites
(Dirichlet ou Neumann) sur Γ0 et Γ1 .
• Construire les tableaux adres et numer. Nous allons aussi tenter d’utiliser les
noms de constantes et de variables utilisés dans les notes et dans le code 1-D
MEF1D.m (nG, nC, nT, nel, nddl, Jk, DTk, etc).
• Calculer les fonctions d’interpolation et leurs dérivées aux points de Gauss. Vous
aurez à décider du nombre de points de Gauss nécessaire pour votre problème.
– Résoudre un problème qui a une solution qui peut être représentée exacte-
ment par vos fonctions d’interpolation (linéaires puis quadratiques);
– Faire l’analyse de convergence du chapitre 7, afin de vous assurer que votre
programme vous donne la bonne solution et que vos interpolants quadra-
tiques vous donnent un ordre de convergence quadratique (option conv);
– Résoudre le problème générique (option demo).
– Faire l’étude de votre problème (option util).
Steven Dufour