Sie sind auf Seite 1von 6

FSIMACS 2 Elements Finis

Institut Galilée Année 2008-2009

Travaux dirigés - 2 (Correction)

Exercice 4
Soient a ∈ R et b ∈ R tels que a < b. On considère le problème aux limites suivants :
 −u00 + cu dans (a, b),

= f
u0 (a) + αa u(a) = ga (4.1)
 0
u (b) + αb u(b) = gb
avec f et c deux fonctions de ]a, b[ à valeurs réelles.
Q. 1 1. Etablir une formulation variationnelle associée au problème (4.1).
2. Donner les conditions pour avoir existence et unicité de la solution de cette formulation variationnelle.
3. Ecrire la formulation variationnelle discrétisée associée dans le cadre d'une résolution par la méthode
d'éléments nis de Lagrange de degré 1.
4. Montrer qu'il est équivalent à la résolution d'un système linéaire dont on précisera la dimension et que
l'on explicitera.
5. Expliquer comment, à partir des M et R de l'exercice 1, obtenir un système linéaire équivalent de dimen-
sion N + 2.
Q. 2 (Algorithmique) Ecrire un algorithme permettant de résoudre le problème variationnel précédent par
une méthode d'éléments nis de Lagrange de degré 1. On utilisera, entre autres, les fonctions AssembleM,
AssembleR de l'exercice 1 et la fonction x ←Solve(A, b) qui retourne x solution du système linéaire Ax = b,

Correction Q.1-1
Pour obtenir une formulation variationnelle associée au problème (4.1), on multiplie par une fonction test
quelconque v susament régulière et on intègre sur [a; b]. On suppose, bien sûr, que les fonctions u, m, c et f
susament régulières pour que les intégrales soient bien dénies et que l'on puisse utiliser la formule d'intégration
par partie (i.e. formule de Green), c'est à dire u ∈ H 2 (a; b), v ∈ H 1 (a; b), c ∈ L∞ (a; b) et f ∈ L2 (a; b). On
obtient donc Z Z b Z b b
− u00 (x)v(x)dx + c(x)u(x)v(x)dx = f (x)v(x)dx
a a a
On eectue ensuite une intégration par partie entre u00 et v pour obtenir
Z b Z b Z b
u0 (x)v 0 (x)dx − [u0 (x)v(x)]ba + c(x)u(x)v(x)dx = f (x)v(x)dx
a a a

La condition aux limites en a donne u0 (a) = ga − αa u(a) et celle en b, u0 (b) = gb − αb u(b). On a alors
Z b Z b Z b
u0 (x)v 0 (x)dx + c(x)u(x)v(x)dx + αb u(b)v(b) − αa u(a)v(a) = f (x)v(x)dx + gb v(b) − ga v(a)
a a a

On remarque alors que, dans cette dernière équation, il est possible d'abaisser la régularité sur u. En eet, pour
que ces intégrales soient bien dénies, il sut d'avoir u ∈ H 1 (a; b). Une formulation variationnelle s'écrit alors
sous la forme
Trouver u ∈ V, tel que

(4.2)
A(u, v) = L(v), ∀v ∈ V.
avec V = H (a; b),1

Z b Z b
A(u, v) = 0 0
u (x)v (x)dx + c(x)u(x)v(x)dx + αb u(b)v(b) − αa u(a)v(a) (4.3)
a a

1
et Z b
L(v) = f (x)v(x)dx + gb v(b) − ga v(a). (4.4)
a
Correction Q.1-2
Pour démontrer l'existence et l'unicité de la solution de la formulation variationnelle 4.2, nous allons utiliser
le théorème de Lax-Milgram. Pour celà vérions ses hypothèses :
1. V = H 1 (a; b) est un espace de Hilbert !
2. L'application L : H 1 (a; b) → R est linéaire par linéarité de l'intégrale et des applications traces γa et γb
dénies de H 1 (a; b) à valeurs dans R (voir TD 1).
3. Pour montrer que l'application linéaire L est continue il sut de montrer qu'il existe C > 0 telle que
|L(v)| ≤ C kvkH 1 (a;b) , ∀v ∈ H 1 (a; b).
En eet, nous avons Z
b
|L(v)| ≤ f (x)v(x)dx + |gb γb (v)| + |ga γa (v)|.

a
Par hypothèse, f ∈ L2 (a; b) et v ∈ H 1 (a; b) ⊂ L2 (a; b), nous pouvons donc utiliser l'inégalité de Cauchy-
Schwarz dans L2 (a; b) pour obtenir
Z
b
f (x)v(x)dx ≤ kf kL2 (a;b) kvkL2 (a;b) ≤ kf kL2 (a;b) kvkH 1 (a;b) .


a

Comme |γb (v)| ≤ Cb kvkH 1 (a;b) et |γa (v)| ≤ Ca kvkH 1 (a;b) (Ca et Cb sont les constantes de continuité des
applications linéaires γa et γb ), on a alors
|L(v)| ≤ C kvkH 1 (a;b) , ∀v ∈ H 1 (a; b)

avec C = kf kL2 (a;b) + Ca |ga | + Cb |gb | > 0.


4. L'application A : H 1 (a; b) × H 1 (a; b) → R est bilinéaire. En eet, par linéarité de l'intégrale, des applica-
tions traces et de l'opérateur de dérivation, nous avons ∀(λ, µ) ∈ R2 , ∀(u, v, w) ∈ (H 1 (a; b))3
A(λu + µw, v) = λA(u, v) + µA(w, v) et A(u, λv + µw) = λA(u, v) + µA(u, w).

5. Pour montrer que l'application bilinéaire A est continue il sut de montrer qu'il existe CA > 0 telle que
|A(u, v)| ≤ CA kukH 1 (a;b) kvkH 1 (a;b) , ∀(u, v) ∈ (H 1 (a; b))2 .
En eet, nous avons
Z Z
b b
|A(u, v)| ≤ u0 (x)v 0 (x)dx + c(x)u(x)v(x)dx + |αb ||γb (u)||γb (v)| + |αa ||γa (u)||γa (v)|.

a a

Or u0 ∈ L2 (a; b) et v 0 ∈ L2 (a; b), on peut donc appliquer l'inégalité de Cauchy-Schwarz dans L2 (a; b) pour
obtenir Z
b
u0 (x)v 0 (x)dx ≤ ku0 kL2 (a;b) kv 0 kL2 (a;b) ≤ kukH 1 (a;b) kvkH 1 (a;b) .


a
De plus, c ∈ L (a; b), u ∈ L2 (a; b) et v ∈ L2 (a; b). Le théorème de Holder, avec u et v , nous donne alors

uv ∈ L1 (a; b) et
kuvkL1 (a;b) ≤ kukL2 (a;b) kvkL2 (a;b) .
Une nouvelle application du théorème de Holder avec uv ∈ L1 (a; b) et c ∈ L∞ (a; b) permet d'obtenir
cuv ∈ L1 (a; b) et
Z Z
b b
c(x)u(x)v(x)dx ≤ |c(x)u(x)v(x)|dx = kcuvkL1 (a;b) = kckL∞ (a;b) kuvkL1 (a;b)


a a

2
Nous avons donc
Z
b
c(x)u(x)v(x)dx ≤ kckL∞ (a;b) kukL2 (a;b) kvkL2 (a;b) ≤ kckL∞ (a;b) kukH 1 (a;b) kvkH 1 (a;b) .


a

En utilisant la continuité des applications linéaires γa et γb nous obtenons


|A(u, v)| ≤ CA kukH 1 (a;b) kvkH 1 (a;b) .

avec CA = 1 + kckL∞ (a;b) + |αa |Ca2 + |αb |Cb2 > 0.


6. Dernier point à vérier : la coercivité. Il faut montrer qu'il existe une constante ν > 0 telle que
2
A(u, u) ≥ ν kukH 1 (a;b) , ∀u ∈ H 1 (a; b).

Nous avons Z b Z b
0 2
A(u, u) = (u (x)) dx + c(x)u2 (x)dx + αb u2 (b) − αa u2 (a).
a a

Il faut noter qu'ici l'inégalité de Poincarré n'est pas utilisable ! Nous travaillons sur H 1 (a; b). Pour faire
apparaitre la norme H 1 (a; b) de u, il va falloir conserver un bout de ab c(x)u2 (x)dx : on ne doit pas
R

supposer brutalement c(x) ≥ 0 et supprimer le terme en minorant ! On prend donc comme hypothèse qu'il
existe une constante µ > 0 telle que c(x) ≥ µ > 0. Ensuite, il sut de prendre αb ≥ 0 et αa ≤ 0 pour
obtenir
2 2 2 2 2
A(u, u) ≥ ku0 kL2 (a;b) + µ kukL2 (a;b) ≥ min(1, µ)(ku0 kL2 (a;b) + kukL2 (a;b) ) ≥ ν kukH 1 (a;b)

avec ν = min(1, µ) > 0.


Sous les hypothèses f ∈ L2 (a; b), c ∈ L∞ (a; b) strictement positive (i.e. ∃µ > 0, ∀x ∈ [a; b], c(x) ≥ µ > 0 ),
αb ≥ 0 et αa ≤ 0 alors la formulation variationnelle admet une unique solution !
Correction Q.1-3 On introduit un maillage τh de l'intervalle [a; b] en N + 1 sous-intervalles Ik = [xk ; xk+1 ]
de longueur hk = xk+1 − xk , pour k ∈ {0, . . . , N }, avec a = x0 < x1 < . . . < xN < xN +1 = b.
L'espace des éléments de Lagrange de degré r ≥ 1, noté Xhr , est déni par
Xhr = {vh ∈ C 0 ([a; b]) telles que vh|[xj ;xj+1 ] ∈ Pr , j = 0, . . . , N } (4.5)
où Pr est l'ensemble des polynômes à coecients réels de degré inférieur ou égal à r.
On note Vh = Xh1 ∩ H 1 (a; b). Nous avons vu que, muni du produit scalaire de H 1 (a; b) et de la norme induite,
Vh est un espace de Hilbert. Il est de dimension N + 2 et les fonctions (ϕi )i∈{0,...,N +1} de Xh1 dénies par

ϕi (xj ) = δij , ∀i, j ∈ {0, . . . , N + 1}

forment une base de Xh1 . On a alors


N
X +1
∀vh ∈ Xh1 , ∀x ∈ [a; b], vh (x) = vh (xi )ϕi (x)
j=0

La formulation variationnelle discrétisée est donnée par


Trouver uh ∈ Vh , tel que

(4.6)
A(uh , vh ) = L(vh ), ∀vh ∈ Vh .

Nous pouvons montrer (mais ce n'est pas demandé) que cette formulation variationnelle admet une unique
solution.
Correction Q.1-4 Nous nous ramenons tout d'abord à un nombre ni d'équations La formulation varia-
tionnelle (4.6) est équivalente à
Trouver uh ∈ Vh , tel que

(4.7)
A(uh , ϕi ) = L(ϕi ), ∀i ∈ {0, . . . , N + 1}

3
En eet (4.6) ⇒ (4.7) est évident puisque ϕi ∈ Vh .
N +1
Montrons que (4.7) ⇒ (4.6). Soit vh ∈ Vh quelconque, alors vh (x) = vh (xi )ϕi (x). En multipliant les N + 2
X

j=0
équations de (4.6) par vh (xi ) ∈ R et en les sommant nous obtenons
N
X +1 N
X +1
vh (xi )A(uh , ϕi ) = vh (xi )L(ϕi ).
i=0 i=0

En utilisant la bilinéarité de A (linéarité par rapport à la deuxième variable) et la linéarité de L, nous avons
N
X +1 N
X +1
A(uh , vh (xi )ϕi ) = L( vh (xi )ϕi )
i=0 i=0

c'est à dire A(uh , vh ) = L(vh ) et ceci pour tout vh ∈ Vh .


N +1
Nous pouvons maintenant décomposer uh ∈ Vh : uh = uh (xj )ϕj . et nous notons U ∈ RN +2 le vecteur
X

j=0
dénie par U j = uh (xj−1 ), ∀j ∈ {1, . . . , N + 2} Nous avons donc
N
X +1
uh = U j+1 ϕj
j=0

et, avec ces notations, la formulation (4.7) est équivalente à

 Trouver U ∈ RN +2 , tel que




N +1
A(
X
U j+1 ϕj , ϕi ) = L(ϕi ), ∀i ∈ {0, . . . , N + 1}
(4.8)


j=0

En utilisant la bilinéarité de A (linéarité par rapport à la première variable), nous obtenons l'écriture équivalente

 Trouver U ∈ RN +2 , tel que




N +1
X
U j+1 A(ϕj , ϕi ) = L(ϕi ), ∀i ∈ {0, . . . , N + 1}
(4.9)


j=0

Nous aboutissons donc à la résolution du système linéaire d'ordre N + 2


Trouver U ∈ RN +2 , tel que

U =b
(4.10)
AU

avec ∀(i, j) ∈ {0, . . . , N + 1}2


Ai+1,j+1 = A(ϕj , ϕi ) et b i+1 = L(ϕi ).
Correction Q.1-5 En supposant c constante, nous avons
Z b Z b
A(ϕj , ϕi ) = ϕ0j (x)ϕ0i (x)dx +c ϕj (x)ϕi (x)dx + αb ϕj (b)ϕi (b) − αa ϕj (a)ϕi (a), ∀(i, j) ∈ {0, . . . , N + 1}2
a a

c'est à dire matriciellement


A = R + cM + C
avec C matrice d'ordre N + 2 dénie par

 C1,1 = −αa
CN +2,N +2 = αb
= 0, sinon .

Ci,j

4
Pour le vecteur second membre b , nous avons ∀i ∈ {0, . . . , N + 1}
Z b
b i+1 = L(ϕi ) = f (x)ϕi (x)dx + gb ϕi (b) − ga ϕi (a).
a

On peut, par exemple, approcher f par la fonction de Vh :


N
X +1
f ≈ fh = f (xj )ϕj .
j=0

Dans ce cas, nous obtenons en utilisant la linéarité de l'intégrale


Z b N
X +1 Z b
f (x)ϕi (x)dx ≈ f (xj ) ϕj (x)ϕi (x)dx.
a j=0 a

En notant F ∈ RN +2 le vecteur déni par F i+1 = f (xi ), ∀i ∈ {0, . . . , N + 1}, nous en déduisons l'écriture
matricielle suivante  
−ga
 0 
F +  ...  .
 
b = MF
 
 
 0 
gb

5
Correction Q.2 On suppose ici c constante.

Données : (a, b) ∈ R2 : bornes de l'intervalle a < b


f ∈ L2 (a; b) : fonction second membre
c∈R : constante de l'EDP
ga , αa réels : condition de Robin en a
gb , αb réels : condition de Robin en b
N ∈ N∗ : nombre de discrétisation de l'intervalle [a; b]
Résultat : U ∈ RN +2 : vecteur solution, tel que
N
X +1
uh (x) = U i+1 ϕi .
i=0

1: X ← M aillage(a, b, N, eps) . Génération du maillage


2: H ← Longueurs(X) . Longueurs des intervalles
3: F ← CalculF onction(f, X) . Evalue la fonction au noeud du maillage
4: M ← AssembleM (H)
5: R ← AssembleR(H)
6: A←R+c∗M
7: b ← M∗F
8: A(1, 1) ← A(1, 1) − αa . Prise en compte des conditions de Robin en a
9: b (1) ← b (1) − ga
10: A(N + 2, N + 2) ← A(N + 2, N + 2) + αb . Prise en compte des conditions de Robin en b
11: b (N + 2) ← b (N + 2) + gb
12: U ← Solve(A, b ) . Resolution du système linéaire

Das könnte Ihnen auch gefallen