Vous êtes sur la page 1sur 29

Khaled Saleh

INTRODUCTION LA MTHODE DES


LMENTS FINIS

Khaled Saleh

Laboratoire Jacques-Louis Lions, Universit Pierre et Marie Curie, Paris VI,


4 place Jussieu, 75005 Paris V, France.
Adresse lectronique : saleh@ann.jussieu.fr
Page web :

http://www.ann.jussieu.fr/~saleh/

EDF R&D, Dpartement Mcanique des Fluides, Energies, Environnement,


6 quai Watier BP 49, 78401 Chatou Cedex, France.

La gure de converture reprsente la dformation d'un solide tridimensionnel, calcule l'aide


du logiciel freeFEM++. Elle est emprunte une prsentation du Pr F. Hecht.

Table des matires


Prambule

1 Equations de la mcanique et formulation variationnelle

1.1

1.2

Equations de la mcanique des milieux continus . . . . . . . . . . . . . . . . . . . . .

1.1.1

Equations gnrales

1.1.2

Cas de la membrane lastique plane

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Formulation intgrale des EDP

. . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2.1

Le problme de la membrane en 1D

. . . . . . . . . . . . . . . . . . . . . . .

1.2.2

Conditions aux limites de Neumann

. . . . . . . . . . . . . . . . . . . . . . .

10

1.2.3

Le problme de la membrane en 2D

. . . . . . . . . . . . . . . . . . . . . . .

12

1.2.4

Formulation intgrale pour les quations gnrales

. . . . . . . . . . . . . . .

2 Calcul de solutions approches par la mthode des lments nis

13

16

2.1

La mthode de Galerkin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16

2.2

La mthode des lments nis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

17

2.2.1

La mthode des lments nis en 1D . . . . . . . . . . . . . . . . . . . . . . .

18

2.2.2

La mthode des lments nis en 2D . . . . . . . . . . . . . . . . . . . . . . .

22

2.3

Erreur d'approximation et convergence de la mthode

Bibliographie

. . . . . . . . . . . . . . . . .

24

27

Prambule
Ce document constitue les notes d'un cours d'introduction la mthode des lments nis dstin
aux tudiants de troisime anne de la Facult d'ingnierie de l'Universit Franaise d'Egypte. Il
s'agit ici d'exposer les bases de la mthode et de l'illustrer sur des exemples trs simples issus de
la mcanique des milieux continus, avec pour objectif une mise en oeuvre l'aide du logiciel libre
freeFEM++ [3] dvelopp l'Universit Paris VI.

Les tudiants n'tant pas familiers avec les notions de base de l'analyse fonctionnelle, j'ai prfr
viter toute sophistication qu'induirait invitablement l'introduction des espaces de Sobolev. Pour
simplier, la formulation variationnelle des EDP est prsente comme une mthode permettant d'affaiblir les hypothses sur la solution en considrant des fonctions continues et
que des fonctions de classe

C 1 par morceaux plutt

. L'inconvnient majeur de cette approche est l'absence de thormes

assurant l'existence et l'unicit des solutions comme le ferait le thorme de Lax-Milgram. Ainsi,
l'existence d'une solution est toujours postule.

Par ailleurs, ce document est imcomplet bien des gards. Le lecteur curieux est invit consulter les excellents ouvrages prsents dans la bibliographie [1, 2].

Paris, le 22 dcembre 2011,


Khaled Saleh.

Chapitre 1

Equations de la mcanique et
formulation variationnelle
1.1 Equations de la mcanique des milieux continus
1.1.1 Equations gnrales
On considre un matriau solide qui occupe un ouvert

RN 1

et qui est soumis des eorts

extrieurs, sous l'action desquels, il va se dformer. La mcanique des milieux continus a pour objet
l'tude de cette dformation et des contraintes internes au matriau qui rsultent de l'application
de ces eorts extrieurs.

Nous pouvons distinguer deux types d'eorts extrieurs : les forces rparties de densit
appliques un solide lmentaire se trouvant au point

intrieur au matriau

f (x)

et les eorts

x de la frontire du solide . L'inconnue que nous


x sous l'eet des eorts extrieurs.
3
Ainsi, f (x) et u(x) sont des fonctions de dans R tandis que T (x) est une fonction de dans
aux extrmits

T (x)

appliqus en chaque point

chercherons calculer est

R3 .

u(x),

le dplacement de chaque point

La modlisation mcanique fait intervenir le tenseur des dformations

(u),

qui mesure la d-

formation locale du matriau (et qui naturellement dpend du champ des dplacements
que le tenseur des contraintes

u)

ainsi

qui reprsente le champ des contraintes internes au matriau.

et

sont tous deux des fonctions valeurs dans l'ensemble des matrices symtriques.

Dans le cadre de l'lasticit linaire, on ne considre que des petits dplacements et donc de
petites dformations. Dans ce cas, le tenseur des dformations est donn par

 1
1
(u) =
u + t ( u) =
2
2

ui
uj
+
xj
xi


,
1i,jN

1. Le solide peut avoir la topologie d'un volume, ou bien d'une surface ou encore d'une courbe.

(1.1.1)

et le tenseur des contraintes

dpend linairement du tenseur des dformations

matriau est homogne et isotrope, alors

est reli

(u)

(u).

Si de plus, le

par la loi linaire dite loi de Hooke :

= 2(u) + tr((u))Id.

et

(1.1.2)

sont deux coecients rels qui caractrisent le matriau et qu'on appelle coecients de

Lam. Ils s'expriment en fonction du module de Young

et du module de Poisson

du matriau

considr, par

E
,
2(1 + )

E
.
(1 + )(1 2)

(1.1.3)

Le bilan des forces dans le solide aboutit l'quation

div = f
o par dnition, la divergence de

dans

(1.1.4)

est le vecteur de composantes

div

N
X
ij

xj

j=1

(1.1.5)

1iN

En utilisant la loi de Hooke, on obtient l'quation vrie par le dplacement

div(2(u) + tr((u))Id) = f

dans

(1.1.6)

que l'on doit complter par des conditions aux limites sur la frontire du solide

1.1.2 Cas de la membrane lastique plane


Ox1 x2 et
f (x), x ,
dirige uniquement dans la direction e3 : f = f (x1 , x2 )e3 . On admet que le dplacement u s'eectue
uniquement dans la direction e3 : u = u(x1 , x2 )e3 .
On considre une membrane lastique qui, au repos, occupe un domaine

qui est attache par son bord

du plan

On lui applique une densit surfacique de force

f (x)

e3
e2

e1
u(x)

A l'quilibre, le bilan des forces s'crit

div (u) = f

dans

(1.1.7)

avec

(u) = 2(u) + tr((u))Id,


c'est--dire


ij =
o

ij

ui
uj
+
xj
xi

est le symbole de Kroneker. Comme


+

0
= 0

0
0

u
x1


et par suite

(div (u)).e3 =

2u 2u
+
x21
x22

xk

u3
= 0,
x3
u

u
x2

ij ,

(1.1.9)

on obtient

x1
u
x2 ,

(1.1.10)


. Le bilan des forces s'crit donc

u = f
o l'oprateur Laplacien

3
X
uk
k=1

u1 = u2 =

(1.1.8)

dans

(1.1.11)

est dni pour une fonction scalaire

(u)(x, y) :=

de deux variables relles par

u
u
(x, y) + 2 (x, y).
x2
y

(1.1.12)

L'quation (1.1.11) s'appelle l'quation de Laplace. Il faut la complter avec une condition aux limites sur le bord de

pour que le problme soit bien pos. Or, cette condition aux limites vient

exprimer que la membrane reste attache au bord


ment est nul sur

ce qui se traduit par le fait que le dplace-

Ainsi, rsoudre le problme de la membrane revient rsoudre le problme

suivant appel problme de Poisson :

Trouver une fonction

dnie sur

(P)

Remarque 1.1.1.
sur le bord

telle que

(
u = f
u=0

,
.

dans
sur

(1.1.13)

Lorsque la condition aux limites consite imposer une valeur l'inconnue

on parle de conditions de Dirichlet. Lorsque de plus la valeur impose est nulle, on

parle de conditions de Dirichlet homognes.

1.2 Formulation intgrale des EDP


1.2.1 Le problme de la membrane en 1D
Considrons le problme de Poisson en une dimension d'espace avec conditions aux limites de
Dirichlet homognes :

Trouver une fonction

dnie sur

(P)

[0, 1] telle que


(
u00 (x) = f (x), x (0, 1),
u(0) = u(1) = 0.

(1.2.1)

Pour qu'une telle quation ait un sens, la solution est rechercher dans l'ensemble

admissibles qui sont les fonctions de classe

C2

sur

[0, 1]

V02

des fonctions

et qui sont nulles sur le bord de



V02 = u C 2 [0, 1], u(0) = u(1) = 0 .

[0, 1]

(1.2.2)

f reprsente une force ponctuelle applique en un point x d'un l lastique, alors le


u solution du problme de Poisson (P) est une fonction ane par morceaux qui a
00
00
un minimum en x. Mais alors quel sens peut-on donner l'expression u (x) = f (x) alors que u
n'est manifestement pas dnie en x ?
Si la fonction
dplacement

f (x)
x

u(x)

La rponse cette question est fournie par la formulation intgrale (ou encore la formulation vari-

ationnelle ) du problme

(P).

La technique consiste reformuler le problme

que les contraintes de rgularit imposes la solution

(P)

On part du problme

et on remarque que si

l'quation par n'importe quelle fonction rgulire

u00 (x)v(x)dx =

(P)

de manire ce

soient aaiblies.

est solution de

puis en intgrant sur

(P), alors en multipliant


[0, 1], on obtient

f (x)v(x)dx.

0
La fonction

(1.2.3)

est appele fonction test. Si on fait une intgration par parties dans le membre de

gauche de cette galit, on obtient

h
i1 Z
u0 (x)v 0 (x)dx u0 (x)v(x) =
0

0
et si

f (x)v(x)dx,

(1.2.4)

v(0) = v(1) = 0 alors


Z 1
Z 1
0
0
u (x)v (x)dx =
f (x)v(x)dx.

est une fonction telle que

telle que

(1.2.5)

u est une solution du problme de Poisson (P), alors


v(0) = v(1) = 0, on a
Z 1
Z 1
0
0
u (x)v (x)dx =
f (x)v(x)dx.

En rsum, si

0
9

pour toute fonction rgulire

(1.2.6)

Pour que l'expression (1.2.6) soit bien dnie, il sut que la fonction

u soit continue et de classe C 1

2
par morceaux (comme c'est bien le cas dans l'exemple ci-dessus ) et non pas forcment de classe

C2

comme l'exige la formulation

de classe
et

C2

qui vrie

(P),

(P).

continue et

et qui vrie (1.2.6). Comme l'expression (1.2.6) est symtrique

les mmes conditions sur les fonctions


V01 = u

continue et

u
C 1 par morceaux, nulle en 0
en u et v , on peut demander

Ainsi, on peut dcider qu'au lieu de chercher une fonction

on va chercher une fonction

C1

et

v.

Considrons, l'espace

par morceaux sur


[0, 1], u(0) = u(1) = 0 .

(1.2.7)

On a la dnition suivante :

Dnition 1.2.1.
Poisson

(P),

On appelle formulation intgrale ou formulation variationnelle du problme de

le problme qui consiste

Trouver une fonction

appartenant l'espace

(F V )

f (x)v(x)dx,

pour toute fonction

de

V01 .

(1.2.8)

Comme nous l'avons vu plus haut, si


alors

telle que

u0 (x)v 0 (x)dx =

V01

est une solution de la formulation direntielle

est aussi une solution de la formulation variationnelle

solution de la formulation variationnelle


du problme direntiel

(P).

(F V ).

Rciproquement, si

(P),

est une

(F V ) et si u est de classe au moins C 2 , alors u est solution

Pour le voir, on part de la formulation variationnelle (1.2.8) et on

refait l'intgration par parties l'envers. On obtient alors que

u00 (x)v(x)dx =

f (x)v(x)dx

pour toute fonction

de

V01 .

(1.2.9)

v bien choisies, il est alors possible de vrier que cela implique que
u00 (x) = f (x) pour tout x dans (0, 1). De plus, comme u est dans V01 , on obtient automatiquement
que u vrie bien les conditions aux limites u(0) = u(1) = 0. Ainsi, la condition aux limites
En prenant des fonctions

de Dirichlet homogne est inscrite dans le choix de l'espace vectoriel dans lequel la solution est
recherche.

1.2.2 Conditions aux limites de Neumann


On considre maintenant le problme suivant (qui n'a rien voir avec la membrane) o les
conditions aux limites sont donnes par la valeur de la drive de l'inconnue

Trouver une fonction

dnie sur

(
(N )

[0, 1]

telle que

u00 (x) + u(x) = f (x),


u0 (0) = , u0 (1) = .

x (0, 1),

(1.2.10)

2. En fait il y a une petite arnaque ici. Dans l'exemple considr d'une force ponctuelle exerce en

x (on parle de distribution ). Pour


qv(x) o q est la masse du Dirac.

pas une fonction au sens usuel mais plutt un pic de Dirac en


il faudrait remplacer l'intgrale du membre de droite par

10

x, f

n'est

tre plus rigoureux,

On parle de conditions aux limites de Neumann. Si de plus

= = 0,

on parle de conditions

de Neumann homognes. La formulation intgrale pour ce type de problme dire par la prise en
compte des conditions aux limites. Nous reprenons la dmarche qui permet d'crire une formulation

u est
[0, 1] :

variationnelle. On suppose que


rgulire

puis on intgre sur

une solution et on multiple l'quation par une fontion test

00

u (x)v(x)dx +
0

Z
u(x)v(x)dx =

f (x)v(x)dx.

(1.2.11)

Aprs intgration par parties, on obtient

h
i1 Z
u0 (x)v 0 (x)dx u0 (x)v(x) +
0

u(x)v(x)dx =

f (x)v(x)dx,

(1.2.12)

c'est--dire

u0 (x)v 0 (x)dx +

0
puisque

u0 (0) =

et

f (x)v(x)dx + v(1) v(0),

u(x)v(x)dx =

u0 (1) = .

(1.2.13)

0
Ainsi, la condition aux limites de Neumann est directement prise

en compte dans la formulation variationnelle, et il n'est pas ncessaire de l'inclure dans le choix de
l'espace vectoriel de rsolution. Pour que (1.2.13) soit dnie, il sut que

C1

par morceaux sur

[0, 1].

et

soient continues et

On introduit donc l'espace :


V1 = u

continue et

C1

par morceaux sur


[0, 1] .

(1.2.14)

On a la dnition suivante :

Dnition 1.2.2.

On appelle formulation intgrale ou formulation variationnelle du problme

(N ),

le problme qui consiste


Trouver une fonction

(F V )

appartenant l'espace

u0 (x)v 0 (x)dx +

pour toute fonction

V1

de

f (x)v(x)dx + v(1) v(0),

u(x)v(x)dx =
0

telle que

V 1.

De la mme manire que pour le problme de Poisson, on peut montrer que si


de classe

C2

(1.2.15)

de la formulation variationnelle

(F V ),

alors

est solution de

u est une solution

(N ).

Exercice 1 Conditions aux limites mles Dirichlet-Neumann. Ecrire la formulation variationnelle


pour le problme suivant :

Trouver une fonction

[0, 1] telle que


(
x (0, 1),
u00 (x) = f (x),
0
u (0) = , u(1) = 0.

dnie sur

11

(1.2.16)

1.2.3 Le problme de la membrane en 2D


On souhaite maintenant crire la formulation variationnelle du problme de Poisson en 2D :

Trouver une fonction

dnie sur

(
(P)

telle que

u(x, y) = f (x, y), (x, y)


u(x, y) = 0,
(x, y)

dans
dans

,
.

(1.2.17)

Pour ce faire, nous avons besoin d'introduire la formule de Green, qui gnralise la notion d'intgration par parties des dimensions suprieures. Prcisons d'abord quelques notations :

est un ouvert born de R2 . On note n(x, y) le vecteur unitaire normal au


point (x, y) et dirig vers l'extrieur de . On notera nx et ny les composantes de n. Enn,
on notera dxdy l'lment de "volume" sur et ds l'lment de "surface" sur la frontire .
Dans la suite

ny

n
nx

ds

Soient

et

deux fonctions de classe

Intgration par partie suivant


Z
(x, y)

(x, y)dxdy =
x

(x, y)

(x, y)dxdy =
y

sur

alors :

(x, y)(x, y)dxdy +


x

Intgration par partie suivant


Z

C1

Z
(x, y)(x, y)nx (x, y)ds.

(1.2.18)

(x, y)(x, y)ny (x, y)ds.

(1.2.19)

(x, y)(x, y)dxdy +


y

On en dduit facilement le thorme suivant :

Thorme 1.2.1.

Soit

une fonction de classe

C2

sur

et

une fonction de classe

C1

sur

Alors elles vrient la formule d'intgration par patie

Z
u(x, y)v(x, y)dxdy =

u =

vecteurs

Z
u(x, y).v(x, y)dxdy +

u u
x , y

et

de


R

est le gradient de
2

v(x, y)u(x, y).n(x, y)ds,

(1.2.20)

u,

et o

a.b

12

dsigne le produit scalaire canonique de deux

Dmonstration.
(1.2.19) avec

Il sut d'appliquer la formule (1.2.18) avec

=v

et

= v

u
x , et la formule

et

u
y puis de sommer.

Nous sommes maintenant en mesure d'crire la formulation variationnelle pour le problme de


Poisson en dimension 2. En eet, soit

multipliant par une fonction test rgulire

C2

une solution de classe

v(x, y)

et en intgrant sur

du problme de Poisson, en

on obtient :

u(x, y)v(x, y)dxdy =

f (x, y)v(x, y)dxdy.

(1.2.21)

On utilise le thorme 1.2.1 pour faire une intgration par partie ce qui donne

Z
u(x, y).v(x, y)dxdy

v(x, y)u(x, y).n(x, y)ds =

Si de plus la fonction

f (x, y)v(x, y)dxdy.

(1.2.22)

est nulle sur le bord

on a

Z
u(x, y).v(x, y)dxdy =

f (x, y)v(x, y)dxdy.

(1.2.23)

Cette quation est une gnralisation de la formule obtenue en dimension un d'espace, la drive
ayant simplement t remplace par le vecteur gradient. De mme qu'en dimension un, il sut
pour que l'expression ci-dessus ait un sens que

et

soient continues et

C1

par morceaux sur

Considrons, l'espace


V01 = u

continue et

C1

par morceaux sur

, u = 0

sur

(1.2.24)

La formulation variationnelle du problme de Poisson en 2D s'crit alors

Trouver une fonction

appartenant l'espace

V01

telle que

Z
u(x, y).v(x, y)dxdy =

f (x, y)v(x, y)dxdy,

pour toute fonction

de

V01 .

(1.2.25)

1.2.4 Formulation intgrale pour les quations gnrales


R3 . Nous supposons
T (x) appliqus
note D , nous supposons

On considre maintenant un matriau solide qui occupe un ouvert born


que le solide est soumis des forces rparties de densit
sur une partie de sa frontire
que le dplacement

u(x)

N .

f (x)

ainsi qu' des eorts

Sur l'autre partie de sa fontire,

est nul. Le bilan des forces s'crit

div = f

dans

(1.2.26)

Nous voulons crire une formulation variationnelle pour cette quation. On crit (1.2.26) composante
par composante :

3
X
ij
j=1

xj

= fi ,

dans

13

i = 1, 2, 3.

(1.2.27)

vi

On multiplie chaque quation par une fonction test

Z X
n
ij

j=1

puis on intgre sur

Z
vi d =

xj

fi vi d

i = 1, 2, 3.

(1.2.28)

On permute les signes somme et intgrale et on fait une intgration par partie :

3 Z
X

j=1
soit encore

ij

vi
d
xj

Z X
3

vi
d
ij
xj
j=1

En sommant sur

i,

 Z
vi ij nj ds =
fi vi d

3
X

(1.2.29)

i = 1, 2, 3.

(1.2.30)

Z
vi ij nj ds =

fi vi d

j=1

on obtient

: v d

v.(.n) ds =


o

i = 1, 2, 3,

v=

v = (vi )1i3 ,

vi
xj


A:B=

et

f .v d,

(1.2.31)

1i,j3

3
X

Aij Bij

pour toutes matrices

et

de

i,j=1

3 3. Le vecteur .n est l'image du vecteur normal sortant n = (nj )1j3 par la matrice ,
(.n)(x)ds est la force exerce par l'extrieur sur l'lment de frontire situ au point x. Ainsi,
pour tout x N , (.n)(x) = T (x). Cette condition de type Neumann est donc prise en compte
taille

et

dans la formulation variationnelle :

: v d

soit nulle sur

D .

v.(.n) ds =

D ,

Quant la condition de Dirichlet homogne sur


l'espace vectoriel

Les fonctions tests

V = u = (u1 , u2 , u3 )
V

f .v d.

elle est prise en compte dans le choix de

appartiennent aussi

continue et

C1

D .

(1.2.32)

o l'on va chercher la solution : on impose que pour toute fonction

ce qui fait disparatre l'intgrale de bord sur

En mcanique,

v.T ds

dans

V, u

et sont donc galement nulles sur

Au nal, on introduit l'espace vectoriel

par morceaux sur

, u = 0

sur


D .

(1.2.33)

est appel l'espace des dplacements cinmatiquement admissibles. La formulation

variationnelle s'crit alors :

Trouver une fonction

Z
(u) : v d =

Remarque 1.2.1.

telle que

Z
f .v d +

v.T ds,

pour tout

dans

V.

(1.2.34)

En mcanique, la formulation variationnelle (1.2.34) n'est autre que le

des travaux virtuels


R.
Rvirtuel admissible v
v.T ds.
N

appartenant l'espace

thorme

Il exprime que le travail de dformation lastique dans le dplacement

(u) : v d,

est gal au travail virtuel des forces extrieures

14

f .v d +

Exercice 2

On se place dans le cadre de l'lasticit linaire homogne et isotrope o le tenseur

des contraintes

est reli au dplacement

travers la loi de Hooke. Montrer que la formulation

variationnelle (1.2.34) se rcrit sous la forme symtrique suivante :

Z 
Z
Z

2(u) : (v) + (divu)(divv) d =
f .v d +

15

v.T ds.

(1.2.35)

Chapitre 2

Calcul de solutions approches par la


mthode des lments nis
2.1 La mthode de Galerkin
On souhaite maintenant trouver une mthode pour calculer des solutions approches d'un problme tel que le problme de Poisson. Comme nous souhaitons galement pouvoir traiter des cas
o la solution est peu rgulire, nous allons en fait rsoudre de faon approche la formulation
variationnelle. Les formulations variationelles que nous avons vues peuvent toutes tres mises sous
la forme :

Trouver une fonction

dans

(F V )

V,

telle que

a(u, v) = hf, vi ,

pour toute fonction

de

V,

(2.1.1)

o




V est un espace vectoriel de fonctions,


(u, v) 7 a(u, v) est une forme bilinaire
v 7 hf, vi est une forme linaire sur V .

sur

V V,

Dans le cas du problme de Poisson avec conditions aux limites de Dirichlet homognes, l'espace vectoriel o l'on cherche la solution est
et les formes

et

hf, .i


V = u

continue et

par morceaux sur


[0, 1], u(0) = u(1) = 0

sont dnies par

a(u, v) =

u (x)v (x)dx,
0

L'espace de rsolution

C1

(F V )h

f (x)v(x)dx.

(2.1.2)

tant de dimension innie, le principe de la mthode de Galerkin consiste

le remplacer par un espace vectoriel

Trouver une fonction

hf, vi =

uh

dans

Vh

Vh

de dimension nie et rsoudre le problme approch :

telle que

a(uh , vh ) = hf, vh i ,
16

pour toute fonction

vh

de

Vh .

(2.1.3)

Dans le cadre de ce cours, nous prendrons toujours des espaces


mation conforme. Comme

Vh

Vh V , on
(F V )h

est de dimension nie, la rsolution de

parle alors d'approxise ramne en fait la

rsolution d'un systme linaire (i.e. l'inversion d'une matrice). En eet, si on se donne une base

(1 , ..., N )

de

Vh ,

la solution recherche

uh

peut se dcomposer sur cette base selon

uh (x) =

N
X

uj j (x).

(2.1.4)

j=1
Rsoudre

(F V )h

est alors quivalent trouver un vecteur

U = (u1 , ..., uN ) RN

N
X

a
uj j , vh = hf, vh i ,

tel que

vh V h ,

j=1

N
X

a (j , vh ) uj = hf, vh i ,

vh Vh ,

a (j , i ) uj = hf, i i ,

i {1, ..., N },

j=1

N
X
j=1

puisque

(1 , ..., N )

est une base de

Vh .

En posant la matrice

A = (Aij )1i,jN RN N ,

Aij = a(j , i ),

(2.1.5)

et le vecteur

F = (Fi )1iN RN ,

Fi = hf, i i ,

(2.1.6)

nous obtenons le systme linaire

AU = F.

(2.1.7)

A est inversible (ce qui sera toujours le cas pour nous), le vecteur U recherch est
U = A1 F et il est unique, ce qui prouve que le problme (F V )h admet une solution
matrice A est appele matrice de rigidit en rfrence aux problmes de mcanique o

Ainsi, si la matrice
donc gal
unique. La

elle fut introduite pour la premire fois.

2.2 La mthode des lments nis


La mthode des lments nis est un cas particulier de la mthode de Galerkin pour laquelle
les espaces

Vh

sont faciles construire et pour laquelle la matrice

contient beaucoup de zros

(on parle de matrice creuse ) ce qui rend possible l'utilisation de mthodes numriques performantes
pour son inversion. La mthode des lments nis est avant tout une mthode d'interpolation. Ainsi,
pour approcher une fonction, on dcoupe son domaine de dnition en petits lments et sur chaque
lment, le comportement local de la fonction est reprsent par une fonction simple, comme une
fonction polynmiale par exemple. Dans la suite, nous illustrons la mthode sur l'exemple simple
du problme de Poisson :

(P)

(
u = f,
u=0

17

,
.

dans
sur

(2.2.1)

Remarque 2.2.1.

En dimension un, le problme de Poisson est tellement simple qu'il admet une

solution explicite. En eet si la fontion f est continue sur [0, 1], alors le problme de Poisson admet
2
une solution unique dans C ([0, 1]) donne par (on pourra le vrier en exercice)

Z
f (t)(1 t)dt

u(x) = x
0

f (t)(x t)dt,

x [0, 1].

(2.2.2)

Cependant, pour des problmes plus compliqus que le problme de Poisson en 1D, de telles formules
explicites n'existent pas, d'o la ncessit de dvelopper des mthodes numriques pour calculer des
solutions approches.

2.2.1 La mthode des lments nis en 1D


L'espace que nous cherchons approcher est


V = u

continue et

C1

par morceaux sur

et on veut construire des espaces d'approximation


construire un maillage de l'intervalle

[0, 1]


[0, 1], u(0) = u(1) = 0 ,

Vh V

(2.2.3)

de dimension nie. On commence par

0 = x0 < x1 < x2 < ... < xN < xN +1 = 1,

(2.2.4)

[0, 1] en petits sous-intervalles [xi , xi+1 ], i = 0...N . Les inter[xi , xi+1 ] sont appels les cellules ou les mailles ou encore les lments du maillage. On notera
hi = xi+1 xi la taille de la maille i et on dnit
c'est--dire qu'on divise l'intervalle
valles

h = max xi+1 xi

(2.2.5)

0iN

le pas du maillage. Dans la suite, et pour des raisons de simplicit, nous serons souvent amens

xi

considrer des maillages o les points

sont rgulirement espacs si bien que

xi = ih,

avec

h=

1
.
N +1

(2.2.6)

De tels maillages sont dits uniformes.

Nous dnissons aussi

Pk

l'espace des polynmes de degr infrieur ou gal

Pk =

p(x) =

C'est un espace vectoriel de dimension

k + 1.

Approximation par lments nis

P1

k
X

aj xj , aj R

(2.2.7)

j=0

On introduit l'espace fonctionnel de dimension nie compos des fonctions continues sur
anes sur chaque maille

[xi , xi+1 ]

du maillage et nulles en

et en



Vh1 = v C 0 ([0, 1]), v|[xi ,xi+1 ] P1 , 0 i N, v(0) = v(1) = 0 .
18

[0, 1],

:
(2.2.8)

Vh1 est un espace vectoriel de dimension


1
N puisqu'une fonction de Vh est entirement dtermine par les valeurs qu'elle prend en les points
1
intrieurs du maillage v(xi ), 1 i N . Une base de Vh est donne par les fonctions (1 , ..., N )
L'indice

h de Vh1

fait rfrence au pas du maillage. L'espace

continues, anes sur chaque lment

[xi , xi+1 ]

et telles que

i {1..N } , j {0..N + 1} ,
o

ij

i (xj ) = ij ,

(2.2.9)

est le symbole de Kronecker. Introduisons la fonction

(
1 |x|
(x) =
0

si
si

|x| 1,
|x| > 1.

(2.2.10)


i

Si le maillage est uniforme, alors chaque fonction


la base

(1 , ..., N ),

une fonction

appartenant

v(x) =

N
X

a pour expression

Vh1

i (x) =

x xi
h


. Dans

a pour expression

v(xi )i (x).

(2.2.11)

i=1
Tout l'intrt de la mthode des lments nis rside dans le fait que chaque fonction de base
a un support trs rduit, c'est--dire que l'ensemble des
domaine de rsolution

tels que

i (x) 6= 0

est petit devant le

[0, 1].
1
i

x0 = 0 x1

xi1

xi

xi+1

xN +1 = 1

Ceci a pour consquence que la plupart des coecients de la matrice de rigidit


A = a(j , i ) 1i,jN

sont nuls. En eet, pour le problme de Poisson 1D, on a

0j (x)0i (x)dx,

Aij = a(j , i ) =

(2.2.12)

0
et si

n'est pas gal

i 1, i

ou

i + 1,

alors les fonctions

et

ont des supports disjoints et

l'intgrale dans (2.2.12) est nulle. Les coecients non nuls se calculent facilement :

Z
Ai1,i = a(i1 , i ) =

0i1 (x)0i (x)dx =

xi

xi1

19

xi

1
1 1
dx = ,
h h
h

Z xi+1
1
1
2
Ai,i = a(i , i ) =
0i (x)2 dx =
dx
+
dx = ,
2
2
(h)
h
0
xi1 h
xi
Z 1
Z xi+1
1 1
1
Ai+1,i = a(i+1 , i ) =
0i+1 (x)0i (x)dx =
dx = .
h
h
h
0
xi
Z

Finalement, la matrice de rigidit est une matrice tridiagonale

1
1

A= 0
h
.
..
0
hX, Y i =

En notant

Y = (y1 , .., yN )

0
.
.
.

..

..

..

..

..

..

2
1

.
0

1
2

(2.2.13)

N
X

xi yi le produit scalaire canonique de deux vecteurs X


i=1
N
de R , la proposition suivante permet de montrer que la matrice

Proposition 2.2.1.

La matrice

= (x1 , .., xN )
A

et

est inversible :

est dnie positive c'est--dire qu'elle vrie la proprit suiv-

ante :

U RN {0},

hAU, U i > 0.

(2.2.14)

Avant de donner la dmonstration de cette proposition, expliquons pourquoi elle implique l'in-

A.

versibilit de la matrice

RN

tel que

fait que

AU = 0.

En eet, si

n'est pas inversible, alors il existe un vecteur

hAU, U i = 0

Ceci implique en particulier que

avec

U 6= 0,

U 6= 0

dans

ce qui contredit le

est dnie positive.

Dmonstration.

Soit

N
X

U = (u1 , .., uN ) 6= 0

A1j uj , ...,

N
X

dans

Le vecteur

AU

a pour coordonnes

N
N

 X
X
a(j , N )uj .
AN j uj =
a(j , 1 )uj , ...,

j=1

j=1

Rn .

j=1

j=1

On a donc

hAU, U i =

N X
N
X

a(j , i )uj ui = a(

i=1 j=1
o

N
X

uj j ,

j=1

u
(x) est la fonction de Vh1

nuls, on vrie aisment que

dnie par

N
X

Z
ui i ) = a(
u, u
) =

|
u0 (x)|2 dx,

(2.2.15)

i=1

u
(x) =

PN

ui i (x). Comme les (u1 , .., uN ) sont non tous


Z 1
implique que
|
u0 (x)|2 dx > 0.

i=1

est non nulle ce qui

0
Pour obtenir le second membre

Z
hf, i i =

F = (hf, i i)1iN ,

xi

f (x)i (x)dx =
0

il faut calculer les intgrales

xi+1

f (x)i (x)dx +
xi1

f (x)i (x)dx.

(2.2.16)

xi

En gnral, cette intgrale ne peut tre calcule de faon exacte car la fonction

peut tre com-

plique. Dans la pratique, on utilise des techniques d'intgration numrique o, sur chaque intervalle

[xi , xi+1 ],

on approche l'intgrale par une formule de quadrature. En voici quelques exemples :

20

Formule du point milieu :

xi+1


(x)dx (xi+1 xi )

xi+1

(x)dx (xi+1 xi )
xi


.

(2.2.17)

(xi ) + (xi+1 )
.
2

(2.2.18)

xi
Formule des trapzes :

xi + xi+1
2

Formule de Simpson :

(xi ) + 4

xi+1

(x)dx (xi+1 xi )

xi +xi+1
2

+ (xi+1 )
.

xi

(2.2.19)

Ainsi, si on utilise la formule des trapzes, le systme rsoudre s'crit

1
1

h2 0
.
..
0
d'inconnues

(u1 , ..., uN )

0
..

..

..

..

2
1

2
..
..


u1
f (x1 )
u f (x )
.
.

2
2
.


.
.

.
.
. =
.
0

.
.
.
.
.
.
1
f
(x
u
N)
N
2

(2.2.20)

et la solution approche est alors donne par

uh (x) =

N
X

ui i (x).

(2.2.21)

i=1

Approximation par lments nis

P2

Dans certaines applications, on peut considrer que l'approximation par des droites sur chaque
lment du maillage

[xi , xi+1 ]

est trop grossire, c'est--dire qu'elle fournit une fonction approche

trop loigne de la fonction exacte

u.

On peut alors chercher approcher

des polynmes de plus haut degr. L'approximation par lments nis


solution

P2

sur chaque maille par

consiste approcher la

u par une fonction continue sur [a, b], et polynomiale de degr 2 sur chaque maille [xi , xi+1 ].

L'espace d'approximation est alors dni par



Vh2 = v C 0 ([a, b]), v|[xi ,xi+1 ] P2 , 0 i N, v(0) = v(1) = 0 .
En notant

xi+ 21 =

xi + xi+1
,
2

les centres des mailles, on voit que toute fonction de

(2.2.22)

i {0...N } ,
Vh2

est entirement dtermine par la donne

xi , i {1, .., N } ainsi qu'aux points


xi+ 21 , i {0...N }. L'espace vectoriel Vh2 est donc de dimension 2N + 1. Une base de Vh2 est donne
par les fonctions i (x), 1 i N telles que
des valeurs qu'elle prend en les points intrieurs du maillage

i Vh2 ,

i (xj ) = ij ,
21

i (xj+ 12 ) = 0,

j,

(2.2.23)

et par les fonctions

i+ 12 (x), 0 i N
i+ 12 Vh2 ,

telles que

i+ 12 (xj ) = 0,

i+ 21 (xj+ 21 ) = ij ,

j.

(2.2.24)

On dnit aussi deux fonctions qui permettent de donner les expressions des fonctions de base :

(1 + x)(1 + 2x)
(x) = (1 x)(1 2x)

si
si
si

1 x 0,
0 x 1,
|x| > 1,


Si le maillage est uniforme, alors

i (x) =

(
(x) =

et

x xi
h

1 4x2
0


et

i+ 12 (x) =

si
si

x 1/2,
x > 1/2.

x xi+ 21

(2.2.25)

i+ 12
i

xi1

xi

xi+ 21

xi+1

Exercice 3 Ecrire la matrice de rigidit obtenue pour l'approximation par lments nis P2 . On
(x0 , x 12 , x1 , ..., xN + 21 , xN +1 ) en les notant (x k )0k2N +2 ,
2
( 21 , 1 , ..., N + 12 ) en les notant ( k )1k2N +1 .

pourra changer l'indexation des points


celle des fonctions de base

et

2.2.2 La mthode des lments nis en 2D


En deux dimensions, nous illustrons toujours la mthode des lments nis sur le cas du problme
de Poisson :

(
u = f
u=0

(P)
o cette fois-ci

est un ouvert born de

problme admet une solution


V = u

R2 .

Dnition 2.2.1.
Th

de triangles

(2.2.26)

On suppose que la formulation variationnelle de ce

continue et

C1

par morceaux sur

uh

, u = 0

sur

(2.2.27)

solution du mme problme variationnel mais o

est remplac par un espace d'approximation

maillage du domaine

sur

dans l'espace

et on cherche l'approcher par une fonction


l'espace

,
.

dans

Vh .

On commence par dnir ce qu'est un

en dimension deux.

Un maillage triangulaire (ou une triangulation) du domaine

(Ki )1iN

non aplatis qui subdivisent le domaine

22

est un ensemble

Par convention, le paramtre

dsigne la longueur de la plus grande arrte du maillage. On suppose que les triangles ne se

Ki et Kj est soit vide, soit gale un


sommet commun aux deux triangles, ou une arrte commune aux deux triangles. Par ailleurs, on

recouvrent pas et que l'intersection entre deux triangles


appelle

sommets

ou

noeuds

du maillage les sommets des triangles composant le maillage.

Un exemple de maillage triangulaire.

Remarque 2.2.2.

On considre ici une subdivisison du domaine

en triangles, mais on pourrait

aussi construire des maillages composs de quadrilatres ou de faon gnrale par des polygones.

De mme qu'en dimension un, nous dnissons


degr infrieur ou gal

Pk

l'espace des polynmes de deux variables de

(
Pk =

p(x, y) =

aij xi y j , aij R .

(2.2.28)

i,j0
i+jk

p(x, y) = a + bx + cy ,
p(x, y) = a + bx + cy + dxy + ex2 + f y 2 .

Par exemple, un polynme de degr un s'crit de manire gnrique


qu'un polynme de degr deux s'crit

tandis

Vh sont dnis de la mme faon qu'en dimension un, en choisissant


et qui sont polynmiales sur chaque triangle Ki
l'approximation P1 par exemple, on a

Les espaces d'approximations

des fonctions qui sont globalement continues sur


du maillage. Pour

Vh1 = {u

continue sur

, u|Ki P1

pour tout

Ki Th ,

(xi , yi )

du maillage et la valeur

aux autres noeuds

23

u=0

sur

i qui prennent
(xj , yj ) du maillage.

Cet espace admet pour fonctions de base, les fonctions chapeau


noeud

et

}.
la valeur

en un

Fonction de base chapeau.

Support de la fonction de base.

La matrice de rigidit se calcule tout comme pour la dimension un par la formule

Z
Aij = a(j , i ) =

j (x, y).i (x, y)dxdy,

(2.2.29)

et le second membre

Z
hf, i i =

f (x, y)i (x, y)dxdy

(2.2.30)

se calcule de faon approche par des formules de quadrature.

2.3 Erreur d'approximation et convergence de la mthode


La mthode des lments nis consiste calculer une solution approche
variationnel en remplaant l'espace
espace vectoriel

Vh

et

uh ?

de

par un sous-

par

Vh ,

c'est--dire quelle est l'erreur entre les fonctions

Pour rpondre cette question, on doit se doter d'un outil permettant de mesurer la

distance entre deux fonctions. Pour une fonction

L2

d'un problme

de dimension nie. Une question lgitime qui doit tre pose est : quelle est

l'erreur commise lorque l'on remplace

uh

dans lequel est recherche la vraie solution

dnie sur l'intervalle

[0, 1],

on appelle norme

le rl positif

Z
||v||L2 (0,1) :=

 21
|v(x)| dx
,
2

0
et la distance entre deux fonctions

v1

et

v2

est alors dnie par

||v1 v2 ||L2 (0,1) .

On peut aussi

dnir une norme qui permet de mesurer la fois la distance entre deux fonctions mais aussi la
distance entre leurs drives. C'est le cas de la norme

||v||

H 1 (0,1)

:=

||v||2L2 (0,1)

||v 0 ||2L2 (0,1)

 21

H1

dnit par

Z

|v(x)| dx +

=
0

Exercice 4 Soit V

 21
|v (x)| dx
.
0



= u continue et C 1 par morceaux sur [0, 1], u(0) = u(1) = 0 . Montrer que les
applications u 7 ||u||L2 (0,1) et u 7 ||u||H 1 (0,1) dnissent bien des normes sur V . Montrer aussi
0
que l'application u 7 ||u ||L2 (0,1) dnit galement une norme sur V .

24

Il s'agit donc d'valuer la quantit

||u uh ||H 1 (0,1)

pour savoir si elle est raisonnablement petite.

On ne considre ici que le cas du problme de Poisson en une dimension, mais les rsultats peuvent
tre gnraliss au cas d'autres problmes et des dimensions suprieures. Le lemme suivant, d au
mathmaticien franais Jean Ca, et dont nous admettrons la dmonstration, permet de majorer
l'erreur

||u uh ||H 1 (0,1)

Lemme
2.3.1.


entre la solution exacte et la solution approche :

u V au problme de Poisson 1D o V =
[0, 1], u(0) = u(1) = 0 . Soit Vh V un sous-espace d'approximation de dimension nie quelconque et soit uh Vh la solution approche. Alors il existe une
constante C 1 indpendante de Vh telle que
u

continue et

On suppose qu'il existe une solution

C1

par morceaux sur

||u uh ||H 1 (0,1) C dist(u, Vh )


o dist(u, Vh )

= inf vh Vh ||u vh ||H 1 (0,1)

est la distance de

(2.3.1)

l'espace d'approximation

Vh .

Ainsi, l'erreur commise est, une constante multiplicative prs, majore par la distance entre

Vh .

la solution et l'espace d'approximation

L'tape naturelle suivante est d'estimer la quantit

dist(u, Vh ) en fonction de la taille de l'espace d'approximation


du paramtre

la dimension de

1/h 1),
u.

Vh

ou plus prcisemment en fonction

par exemple, on a dim

h est petit, plus


Vh = N o N =

et de la solution

qui xe la taille des lments du maillage. Intuitivement, plus

Vh

est grande (pour l'approximation

i.e. plus l'espace

Vh

P1

est gros et plus il s'approche de l'espace total

exacte

V
u
Vh3

u h3
u h2

Vh2

u h1

Vh1

Plus

Vh

est gros, plus

uh

s'approche de

u.

dist(u, Vh ) =
h0
vers la solution exacte lorsque le pas du maillage tend

En fait, dans le cadre de l'approximation par lments nis

Pk , on peut armer que lim

0 si bien que la solution approche converge


vers 0 :
lim ||u uh ||H 1 (0,1) = 0.
h0

(2.3.2)

lim dist(u, Vh ) = 0, il sut de trouver une fonction vh Vh telle que ||u


h0
vh ||H 1 (0,1) tende vers 0 lorsque h tend vers 0. Considrons le cas de l'approximation par lments
1
nis P1 et introduisons l'unique fonction Ih u(x) de Vh qui prend les mmes valeurs que u aux points
Pour prouver que

xi

du maillage :

25

u
Ih u

x0 = a

La fonction approche

xi

Ih u s'appelle l'interpole

suit

Ih u(x) =

de

xi+1

xN +1 = b

u. Elle s'exprime dans la base (0 , ..., N ) comme

N
X

u(xi )i (x).

(2.3.3)

i=1
La proposition suivante permet de mesurer la qualit de l'approximation d'une fonction
quelconque par son interpole

Proposition 2.3.2.

Soit

Ih v

une fonction de

V,

et soit

Ih v

son interpole dans

Vh1 .

Alors on a

lim ||v Ih v||H 1 (0,1) = 0.

(2.3.4)

h0

Si de plus la fonction

v V

est de classe

C2,

alors il existe une constante

K>0

indpendante de

telle

que

||v Ih v||H 1 (0,1) Kh||v 00 ||L2 (0,1) .

Dmonstration.

Admise

Finalement, pour dmontrer la convergence de la solution approche

u,

(2.3.5)

uh

vers la solution exacte

il sut d'invoquer la fois le lemme de Ca 2.3.1 et la proposition ci-dessus 2.3.2 :

||u uh ||H 1 (0,1) C inf ||u vh ||H 1 (0,1) C||u Ih u||H 1 (0,1) 0,
vh Vh

et dans le cas o la solution

est de classe

C2,

on a en plus que

||u uh ||H 1 (0,1) CKh||u00 ||L2 (0,1) 0.

Remarque 2.3.1.

(2.3.6)

(2.3.7)

Dans l'ingalit (2.3.7), le pas du maillage h apparat avec un exposant 1. On


H 1 , et on peut montrer que cette vitesse de

dit alors que la convergence est linaire pour la norme

convergence est optimale. En utilisant l'ingalit triviale ||u||L2 (0,1) ||u||H 1 (0,1) , on voit que pour
L2 , la convergence est elle aussi au moins linaire. Mais cette vitesse n'est pas optimale.

la norme

En eet, une mthode plus complique, dite mthode de dualit d'Aubin-Nitsche, permet de montrer
2
que pour la norme L , la convergence est quadratique au sens o

||u uh ||L2 (0,1) Ch2 ||u00 ||L2 (0,1) ,


pour une certaine constante

indpendante de

h.

26

(2.3.8)

Remarque 2.3.2.

Le lecteur un peu endormi pourrait se demander pourquoi l'on ne se contente

u par son interpole Ih u. La rponse est toute simple : comme u


est inconnue, on ne connat pas les valeurs qu'elle prend aux points du maillage u(xi ), et on ne peut
pas d'approcher la solution exacte

donc pas calculer


pour montrer que

Ih u
lim

h0

Ih u n'est donc qu'un intermdiaire thorique


et on mesure l tout l'intrt du lemme de Ca...

en pratique. L'introduction de
dist(u, Vh )

= 0,

27

Bibliographie
[1] G. Allaire.

Analyse numrique et optimisation.

ditions de l'cole Polytechnique.

blanche.polytechnique.fr/~allaire/livre2.html,

http://

2005.

[2] G. Dhatt, G. Touzot, and E. Lefrancois. Mthode des lments nis. ditions Lavoisier, 2005.
[3] F. Hecht, O. Pironneau, J. Morice, A. Le Hyaric, and K. Ohtsuka. Freefem++.

freefem.org/ff++/index.htm.

28

http://www.