MA261 Introduction au calcul scientifiqueMA261 Introduction au calcul scientifiqueaoût 2007août 2007 @Eric Lunéville
École Nationale Supérieure de Techniques Avancées
Discrétisation Discrétisation
par différences finiespar différences finies
du du laplacienlaplacien
Différences finiesDifférences finies
1
u(x+ h) = u(x) + hu′
(x) +h2
2u′′
(x) +O(h3)
u : R −→ R fonction C3
u(x− h) = u(x)− hu′
(x) +h2
2u′′
(x) +O(h3)
u′
(x) =u(x)− u(x− h)
h+O(h)
u′
(x) =u(x+ h)− u(x)
h+O(h) ordre 1, décentré avant
ordre 1, décentré arrière
u′
(x) =u(x+ h)− u(x− h)
2h+O(h2)
ordre 2, centré
2
x x+ h
u′(x)
u(x+h)−u(x)h
x x+ h
u′(x)
u(x+h)−u(x)h
bonne approximation si h petit et supξ∈[x,x+h]
∣∣∣u′′
(ξ)∣∣∣ petit
u′
(x) =u(x+ h)− u(x)
h+h
2u′′
(ξx) ξx ∈ [x, x+ h]
3
EqEq. de Laplace 1D. de Laplace 1D
−u
′′
(x) = f(x) x ∈ ]0, 1[u(0) = u(1) = 0
(f = 1→ u(x) = x(x− 1))
si u est C4
−u′′(x) =2u(x)− u(x+ h)− u(x− h)
h2+h2
12u(4)(x+ θh) θ ∈ ]−1, 1[
(dms : developpement de Taylor-MacLaurin + th. des valeurs intermediaires)
si f est C2 alors la solution u est C4 avec −u(4) = f′′
et∣∣u(4)(x+ θh)
∣∣ ≤ supx∈[0,1]
∣∣∣f′′
(x)∣∣∣
Rmq :
4
Discrétisation de l’équation
x0 = 0 xN+1 = 1
xi = ih
decoupage de l’intervalle [0, 1] (xi)i=1,N+1 avec xi = ih et h = 1N+1
(découpage régulier pour simplifier)
ui approximation de u(xi) et on note fi = f(xi)
2ui − ui+1 − ui−1h2
= fi pour i = 1, N
u0 = uN+1 = 0
schema a 3 points (ui−1, ui, ui+1)
5
Forme matricielle
∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣
1
h2(2u1 − u2) = f1 i = 1
1
h2(2u2 − u1 − u3) = f2 i = 2
...1
h2(2ui − ui+1 − ui−1) = fi i
...1
h2(2uN−1 − uN − uN−2) = fN−1 i = N − 1
1
h2(2uN − uN−1) = fN= i = N
elimination deu0 et uN+1
A−→U =
−→F
A =1
h2
2 −1
−1 2. . .
. . .. . .
. . .
. . . 2 −1−1 2
−→U =
u1u2...
uN−1uN
−→F =
f1f2...
fN−1fN
systeme lineaire d’ordre N
tridiagonale symétrique
6
Propriété fondamentale
h2(A−→V ,−→V)
= h2N∑
i=1
vi
(A−→V)
i
= v1(2v1 − v2) +i=N−1∑
i=2
vi (2vi − vi+1 − vi−1) + vN (2vN − vN−1)
v21 + v2N +
i=N−1∑
i=2
(vi − vi−1)2 ≥ 0
dms :
(A−→V ,−→V)= 0 −→ v1 = vN = 0 et vi − vi−1 = 0 −→ vi = 0 ∀i = 1, N
−→W k =
(sin
ikπ
N + 1
)
i=1,N
λk = 2
(1− cos
kπ
N + 1
)> 0
elements propres de A
k = 1, N
(2 sin ikhπ − sin(i+ 1)khπ − sin(i− 1)khπ = 2 sin ikhπ (1− cos khπ))
(−→W k
)
k=1,Nbase orthogonale.
A est une matrice tridiagonale symetrique definie positive (donc inversible)
7
Estimation d’erreur
erreur ei = ui − u(xi)
: si f ∈ C2 alorsTTTThhhh´eeeeoooorrrr`eeeemmmmeeee
∥∥∥−→E∥∥∥∞
= supi=1,N
|ei| ≤h2
96sup
x∈[O,1]
|f ′′(x)|
dms : voir polycopie
convergence ponctuelle a l’ordre 2
la qualite de l’approximation depend de la regularite des solutions
RRRReeeemmmmaaaarrrrqqqquuuueeee :::: si f ∈ C0 alors u ∈ C2 et on peut seulement montrer que :
limh−→0
∥∥∥−→E∥∥∥∞
= 0
convergence pouvant etre tres lente !
8
Généralisation en dimension 2Généralisation en dimension 2
0 1
1Eq. de Laplace sur le carre Ω = ]0, 1[× ]0, 1[
−u = f dans Ωu = 0 sur ∂Ω
−−−−uuuu ==== ffff
u = 0
u = 0
u=0
u=0
−u(x) =4u(x, y)− u(x+ h, y)− u(x− h, y)− u(x, y + h)− u(x, y − h)
h2+O(h2)
(u ∈ C4(Ω))
meme variation (h) suivant x et y
obtenu en approchant independamment ∂2xu et ∂2yu par DF d’ordre 2
AAAApppppppprrrrooooxxxxiiiimmmmaaaattttiiiioooonnnn `aaaa llll’’’’oooorrrrddddrrrreeee 2222 dddduuuu llllaaaappppllllaaaacccciiiieeeennnn
9
Discrétisation du problème de Laplace
grille de discretisation de pas h (identique dans les 2 directions)
yj = jh j = 0, n+ 1
xi = ih i = 0, n+ 1
Mij = (xi, yj)i,j=1,n+1
xi = ih
Mijyj = jh
1
h2(4uij − ui+1,j − ui−1,j − ui,j+1 − ui,j−1) = fij 1 ≤ i, j ≤ n
uij = 0 i = 0 ou i = n+ 1 ou j = 0 ou j = n+ 1
uij approximation de u(xi, yj)
fij = f(xi, yj)
schema a 5 pointsi, j
i+ 1, ji− 1, j
i, j + 1
i, j − 1
10
FFFFoooorrrrmmmmeeee mmmmaaaattttrrrriiiicccciiiieeeelllllllleeee On elimine les termes de bord !
Systeme lineaire d’ordre N = n2 : A−→U =
−→F
U•j =
u1j...unj
F•j =
f1j...fnj
vecteurs de dimension n
−→U =
U•1...U•n
−→F =
F•1...F•n
vecteurs de dimension n2
B =
4 −1
−1 4. . .
. . .. . .
. . .
. . . 4 −1−1 4
tridiagonale symetrique par bloc tridiagonale symetrique
A =1
h2
B −I
−I B. . .
. . .. . .
. . .
. . . B −I−I B
11
44--11
--11
44--11
--1144
--11
--11
--11
44--11
--11
44--11
--1144
--11
--11
--11
44--11
--11
44--11
--1144
--11
--11
--11
--11
--11
--11
44--11
--11
44--11
--1144
h2A =
matrice symetrique pentadiagonale
00
00
00
00
12
PPPPrrrroooopppprrrriiii´eeeetttt´eeeessss ddddeeee llll’’’’aaaapppppppprrrrooooxxxxiiiimmmmaaaattttiiiioooonnnn
A est une matrice symetrique definie positive (donc inversible)
dms :
h2(A−→V ,−→V)
= ‖V•1‖2 + ‖V•n‖
2 +∑
j=1,n−1
‖V•j − V•j+1‖2
+h2∑
j=1,n
(BV•j , V•j)
Nb de termes non nuls : 5n2 − 4nsoit un taux de remplissage de l’ordre de 5/n2
Si u ∈ C4(Ω) on a l’estimation d’erreur :
supi,j
|uij − u(xi, yj)| ≤ C0h2 (C0 cte ind. de u)
dms complexe
moins bonne convergence si u est moins regulier
13
ExtensionsExtensions
aaaauuuuttttrrrreeee sssscccchhhh´eeeemmmmaaaa
j + 1
j − 1
j
ii− 1 i+ 1
−u(x) =1
2h2
4u(x, y)−u(x+ h, y + h)− u(x+ h, y − h)−u(x− h, y + h)− u(x− h, y − h)
+O(h2)
schema a 5 points en croix
ii− 1 i+ 1 i+ 2i− 2
schema a 5 points en 1D j + 1
j − 1
j
ii− 1 i+ 1 i+ 2i− 2
j + 2
j − 2
schema a 9 points en 2DIdem en dimension 3
14
ccccoooonnnnddddiiiittttiiiioooonnnn ddddeeee DDDDiiiirrrriiiicccchhhhlllleeeetttt nnnnoooonnnn hhhhoooommmmoooogggg`eeeennnneeee
en 1D−u
′′
(x) = f(x) x ∈ ]0, 1[u(0) = g0 u(1) = g1
equation i = 1 :2u2 − u2 − u0
h2= f1 −→
2u2 − u2h2
= f1 +g0h2
equation i = n :2un − un−1 − un+1
h2= fn −→
2un − un−1h2
= f1 +g1h2
modification du systeme lineaire :
A−→U =
−→F +
1
h2
g0...g1
meme principe en dimension superieure
ccccoooonnnnddddiiiittttiiiioooonnnn ddddeeee NNNNeeeeuuuummmmaaaannnnnnnn
15
en 1D
−u
′′
(x) + αu(x) = f(x) x ∈ ]0, 1[u′(0) = u′(1) = 0
α = 0 probleme mal pose !
2ui − ui+1 − ui−1h2
= fi pour i = 1, Nschema d’ordre 2
manque 2 equationsapproximation d’ordre 1 :
0 = u′(0) =u(h)− u(0)
h+O(h)→ u1 = u0
0 = u′(1) =u(1)− u(1− h)
h+O(h)→ uN+1 = uN
approximation d’ordre 2 (en utilisant l’equation)
u(h) = u(0) + hu′(0) + 12h
2u′′(0) +O(h3)= u(0) + hu′(0) + 1
2h2 (αu(0)− f(0)) +O(h3)
u1 = u0 +12h
2 (αu0 − f0)uN = uN+1 +
12h
2 (αuN+1 − fN+1)
16
en dimension 2
Eq. de Laplace sur le carre Ω = ]0, 1[× ]0, 1[
−u+ αu = f dans Ω∂nu = 0 sur ∂Ω
−→n normale sortante
∂nu =(−→∇u,−→n
)0 1
1
∂n = ∂x∂n = −∂x
∂n = ∂y
∂n = −∂y
ccccoooonnnnddddiiiittttiiiioooonnnn ddddeeee NNNNeeeeuuuummmmaaaannnnnnnn eeeennnn yyyy ==== 0000
u(h, y) = u(0, y) + h∂xu(0, y) +12h
2∂2xu(0, y) +O(h3) (∂xu(0, y) = 0)
= u(0, y) + 12h2(αu− f − ∂2yu(0, y)
)+O(h3) (en utilisant l’eq.)
u1j = u0j +12h
2(αu0j − f0j) +12 (2u0j − u0,j−1 − u0,j+1)
en approchant ∂2yu(0, y) par une DF d’ordre 2
idem pour les autres bords
non valable pour les coins !!!
17
ConclusionsConclusions
• méthode des différences finies simple à mettre en œuvre (dvp Taylor)
• donne des systèmes linéaires sym. def. pos. creux sur les pbs elliptiques
• convergence quadratique si les solutions sont régulières
• permet de traiter la plupart des conditions limites
• mais limitée à des géométries rectangulaires !
méthode alternative : éléments finis