12.01.2015 Views

Calculul valorilor si vectorilor proprii

Calculul valorilor si vectorilor proprii

Calculul valorilor si vectorilor proprii

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

4.4. ALGORITMUL QR 271<br />

4. % Triangularizareablocurilor diagonale 2×2 cu valori <strong>proprii</strong> reale<br />

1. k = 1<br />

2. C^at timp k < n<br />

1. Dacă a k+1,k = 0 atunci k = k +1,<br />

altfel<br />

1. [A,c,s] =TRID2(A,k)<br />

2. Dacă opt =’da’ şi c ≠ 1 atunci<br />

1. Q(:,k:k+1) = Grd(Q(:,k:k+1),c,s)<br />

3. k = k +2<br />

Comentarii. În aspectele sale esenţiale, algoritmul de mai sus stă la baza tuturor<br />

programelor profe<strong>si</strong>onale de calcul al <strong>valorilor</strong> <strong>proprii</strong> ale unei matrice reale.<br />

Precizările referitoare la aspectele de organizare a algoritmului făcute la varianta<br />

complexă rămân valabile. Sintaxa de utilizare a algoritmului de mai sus va fi<br />

[A,Q] = QR2(A,Q,tol,opt).<br />

Acceptând evaluarea conform căreia sunt suficiente, în medie, două iteraţii<br />

pentru a pune în evidenţă o valoare proprie, algoritmul nece<strong>si</strong>tă un număr de<br />

Nop A = 30n3 flopi fără acumularea transformărilor, Nop Q = 16n3 flopi suplimentari<br />

pentru calculul <strong>vectorilor</strong> Schur, i.e. al matricei ortogonale Q. Putem, deci,<br />

con<strong>si</strong>dera că pentru matrice de ordin superior (e.g. n > 100) algoritmul QR2 are o<br />

complexitate O(n 3 ).<br />

Şi aici, utilizarea exclu<strong>si</strong>vă a transformărilor ortogonale conferă algoritmului<br />

QR2 o foarte bună stabilitate numerică. Pentru aspecte suplimentare, referitoare<br />

la condiţionarea <strong>valorilor</strong> <strong>proprii</strong> şi stabilitatea numerică a algoritmului de mai sus,<br />

vezi secţiunile §4.10 şi §4.11.<br />

✸<br />

H. Permutare şi echilibrare<br />

Implementările profe<strong>si</strong>onale ale algoritmului QR conţin o fază de prelucrări preliminare<br />

efectuate asupra matricei A care urmăresc două obiective:<br />

– a) creşterea eficienţei prin evidenţierea eventualelor valori <strong>proprii</strong> ”izolate”<br />

utilizând exclu<strong>si</strong>v transformări de asemănaredefinite de matrice de permutare (deci<br />

fără efectuarea de operaţii aritmetice);<br />

– b) îmbunătăţirea condiţionării spectrului de valori <strong>proprii</strong> prin transformări<br />

de asemănare diagonale şi, în acest mod, a<strong>si</strong>gurarea unei acurateţi superioare a<br />

rezultatelor.<br />

Permutare<br />

Dacă matricea A ∈ IC n×n are toate elementele extradiagonale ale liniei sau coloanei<br />

i nule, atunci elementul diagonal (i,i) este o valoare proprie a matricelor A T şi A<br />

şi, fapt esenţial, e i este un vector propriu al matricei A T , respectiv A, asociat ei.<br />

De aceea, elementul diagonal (i,i) poate fi adus în poziţia (1,1) sau (n,n) printr-o

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!