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.

490 CAPITOLUL 6. VALORI ŞI VECTORI PROPRII GENERALIZAŢI<br />

generalizate (S,T) ale fascicolului (A,B) în ordinea impusă de permutarea dată<br />

π = {i 1 ,i 2 ,...,i n } în sensul că perechea diagonală aflată iniţial în poziţia (k,k) va<br />

fi plasată în final în poziţia (i k ,i k ) (vezi şi comentariul la algoritmul ce urmează).<br />

Prin actualizarea matricei unitare de transformare Z se calculează şi baze ortogonale<br />

pentru subspaţiile de deflaţie asociate unor grupuri impuse de valori <strong>proprii</strong><br />

generalizate. Concret, coloanele matricei actualizate Z(:,1 : k) formează o bază<br />

ortogonală a subspaţiului de deflaţie S k asociat setului de valori <strong>proprii</strong> Λ k =<br />

= {λ i = (s ii ,t ii )|i = 1 : k}} (în numerotarea finală). Actualizarea matricei<br />

unitare de transformare Q nu este necesară. Dacă se efectuează totuşi, atunci<br />

coloanele matricei actualizate Q(:,1:k) formează o bază ortogonală a subspaţiului<br />

V k = AS k +BS k în <strong>si</strong>tuaţia în care dimV k = dimS k = k.<br />

Algoritmul 6.11 (FSG ORD – Ordonarea formei Schur generalizate<br />

(complexe)) (Date o pereche (S,T) ∈ IC n×n × IC n×n în formă<br />

Schur generalizată, matricele unitare Q,Z ∈ IC n×n şi permutarea π =<br />

= {i 1 ,i 2 ,...,i n }, algoritmul suprascrie perechea (S,T) cu perechea unitar<br />

echivalentă (S ′ ,T ′ ) = (˜Q H S ˜Z, ˜Q H T ˜Z) care are (s ′ i k ,i k<br />

,t ′ i k ,i k<br />

) =<br />

= (s kk ,t kk ), k = 1 : n şi actualizează matricele de transformare Q<br />

şi Z.)<br />

1. Pentru k = 1 : (n−1)<br />

1. mută =’nu’<br />

2. l = k<br />

3. Pentru j = (k +1) : n<br />

1. Dacă i j < i l atunci<br />

1. l = j<br />

2. mută=’da’<br />

4. Dacă mută =’da’ atunci<br />

1. Pentru j = (l−1) : −1 : k<br />

1. [S,T,Q,Z] = PG11c(S,T,Q,Z,j)<br />

2. i j ↔ i j+1<br />

Comentarii. Sintaxa naturală de apel a algoritmului prezentat este<br />

[S,T,Q,Z] = FSG ORD(S,T,Q,Z,π).<br />

Complexitatea unei ordonări este dictată esenţial de natura permutării. Cazurile<br />

limită sunt permutarea identică pentru care nu se face nici o operaţie aritmetică şi<br />

inver<strong>si</strong>unea pentru care se efectuează 1 2n(n−1) apelări ale procedurii PG11c care<br />

conduc la o complexitate de O(n 3 ).<br />

Algoritmul de mai sus realizează o ordonare totală a perechilor diagonale. Dacă<br />

se urmăreşte exclu<strong>si</strong>v construcţia unei baze unitare pentru un subspaţiu de deflaţie<br />

k-dimen<strong>si</strong>onal (k < n) este suficientă o ordonare parţială constând în aducerea, pe<br />

căile cele mai ”scurte”, a <strong>valorilor</strong> <strong>proprii</strong> generalizate vizate în primele k poziţii diagonale.<br />

De asemenea, se renunţă la actualizarea matricei Q. Propunem cititorului<br />

o astfel de adaptare a algoritmului.

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

Saved successfully!

Ooh no, something went wrong!