178
5 Approximation des valeurs propres et des vecteurs propres
Programme 25 - invpower : M´ ethode de la puissance inverse
function [sigma,x,iter,relres]=invpower(A,z0,mu,tol,nmax)
%INVPOWER M´ ethode de la puissance inverse
% [SIGMA,X,ITER,RELRES]=INVPOWER(A,Z0,MU,TOL,NMAX) calcule la
% valeur propre LAMBDA de plus petit module de la matrice A et un vecteur
% propre correspondant X de norme un. TOL est la tol´ erance de la m´ ethode.
% NMAX est le nombre maximum d’it´ erations. X0 est la donn´ ee initiale.
% MU est le shift. ITER est l’it´ eration ` a laquelle la solution X a
% ´ et´ e calcul´ ee.
M=A-mu*eye(size(A)); [L,U,P]=lu(M);
q=z0/norm(z0); q2=q’; sigma=[];
relres=tol+1; iter=0;
while relres(end)>=tol & iter<=nmax
iter=iter+1;
b=P*q;
y=L\b; z=U\y;
q=z/norm(z); z=A*q; sigma=q’*z;
b=q2’; y=U’\b; w=L’\y;
q2=w’*P; q2=q2/norm(q2); costheta=abs(q2*q);
if costheta>=5e-2
temp=norm(z-sigma*q)/costheta; relres=[relres,temp];
else
fprintf(’Valeur propre multiple’); break;
end
x=q;
end
return
Exemple 5.3 On se donne les matrices
A =
⎡
⎢
⎢
⎣
15 −2
2
1 10 −3
−2
1
0
⎤
⎥
⎥
⎦ et V =
⎡
⎢
⎢
⎣
−0.944 0.393 −0.088
−0.312 0.919
0.309
0.112 0.013
0.947
⎤
⎥
⎥
⎦ .
(5.30)
La matrice A a pour valeurs propres : λ1 14.103, λ2 = 10.385 et λ3 0.512, et
les vecteur propres correspondants sont les vecteurs colonnes de la matrice V.
Pour approcher le couple (λ1, x1), nous avons ex´ ecut´ e le Programme 24 avec z
(0) =
[1, 1, 1]
T pour donn´ ee initiale. Apr` es 71 it´ erations de la m´ ethode de la puissance, les
erreurs absolues sont |λ1 − ν
(71) | = 7.91 · 10
−11 et x1 − x
(71)
1
∞ = 1.42 · 10
−11 .
Dans un second cas, nous avons pris z
(0) = x2 + x3 (remarquer qu’avec ce choix
on a α1 = 0). Apr` es 215 it´ erations les erreurs absolues sont |λ1 −ν
(215) | = 4.26·10
−14
et x1 − x
(215)
1
∞ = 1.38 · 10
−14 .
La Figure 5.2 (` a gauche) montre la fiabilit´ e de l’estimation a posteriori (5.26) : on
a repr´ esent´ e les suites |λ1 − ν
(k) | (trait plein) et les estimations a posteriori (5.26)
correspondantes (trait discontinu) en fonction du nombre d’it´ erations (en abscisses).
Noter l’excellente ad´ equation entre les deux courbes.
Précédent

- 189/540

Suivant