9.5 Chapitre 5
329
Solution 5.8 Le calcul formel des facteurs L et U donne
L =
⎡
⎣
1
0 0
(ε − 2)/2 1 0
0
−1/ε 1
⎤
⎦ , U =
⎡
⎣
2 −2 0
0 ε 0
0 0 3
⎤
⎦ .
Quand ε → 0, l32 → ∞. En choisissant b = (0, ε, 2)
T , on vérifie facilement
que x = (1, 1, 1)
T est la solution exacte de Ax = b. Pour analyser l’erreur
commise par rapport à la solution exacte quand ε → 0, prenons ε = 10
−k ,
pour k = 0, . . . , 9. Les instructions suivantes :
e =1; xex = ones (3 ,1); err =[];
for k =1:10
b =[0; e ;2];
L =[1 0 0; (e -2)*0.5 1 0; 0 -1/ e 1];
U =[2 -2 0; 0 e 0; 0 0 3];
y =L \b ; x= U\ y;
err (k )= norm (x - xex )/ norm ( xex ); e= e *0.1;
end
donnent :
err =
0
0
0
0
0
0
0
0
0
0
La solution n’est donc pas affectée par les erreurs d’arrondi. On peut expliquer
ceci en remarquant que les coefficients de L, U et b sont des nombres flottants
qui ne sont pas affectés par des erreurs d’arrondi, et que, de façon tout à fait
inhabituelle, aucune erreur d’arrondi ne se propage durant les phases de descente et remontée, bien que le conditionnement de A soit proportionnel à 1/ε.
Au contraire, en posant b = (2 log(2.5) − 2, (ε − 2) log(2.5) + 2, 2)
T , qui est associé à la solution exacte x = (log(2.5), 1, 1)
T , et en analysant l’erreur relative
pour ε = 1/3 · 10
−k , k = 0, . . . , 9, les instructions :
e =1/3; xex =[ log (5/2) ,1 ,1] ’; err =[];
for k =1:10
b =[2* log (5/2) -2 ,(e -2)* log (5/2)+2 ,2] ’;
L =[1 0 0; (e -2)*0.5 1 0; 0 -1/ e 1];
U =[2 -2 0; 0 e 0; 0 0 3];
y =L \b ; x= U\ y;
err (k )= norm (x - xex )/ norm ( xex ); e= e *0.1;
end
donnent :
err =
Columns 1 through 5
1.8635e-16
5.5327e-15
2.6995e-14
9.5058e-14
1.3408e-12
Columns 6 through 10
1.2828e-11
4.8726e-11
4.5719e-09
4.2624e-08
2.8673e-07
Dans ce dernier cas, l’erreur dépend du conditionnement de A, qui est de la
forme K(A) = C/ε, et satisfait l’estimation (5.30).
Solution 5.9 Les solutions calculées deviennent de moins en moins précises
quand i augmente. En effet, les normes des erreurs sont égales à 1.10 · 10
−14
pour i = 1, à 9.32 · 10
−10 pour i = 2 et à 2.51 · 10
−7 pour i = 3 (attention,
Précédent

- 339/374

Suivant