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.

6.3. ALGORITMUL QZ 479<br />

(H,T)←(HZ (2)<br />

1 ,TZ(2)<br />

⎡<br />

1 )=( ⎢<br />

⎣<br />

× ×<br />

× ×<br />

+ ×<br />

+ +<br />

0 0<br />

× × ×<br />

× × ×<br />

× × ×<br />

× × ×<br />

× × ×<br />

0 × ×<br />

⎤ ⎡<br />

,<br />

⎥ ⎢<br />

⎦ ⎣<br />

× ×<br />

∅ ×<br />

0 0<br />

0 0<br />

0 0<br />

× × ×<br />

× × ×<br />

× × ×<br />

0 × ×<br />

0 0 ×<br />

⎤<br />

),<br />

⎥<br />

⎦<br />

(H,T)←(Q (3)<br />

2 H,Q(3)<br />

⎡<br />

2 T)=( ⎢<br />

⎣<br />

× × × × ×<br />

× × × × ×<br />

∅ × × × ×<br />

∅ + × × ×<br />

0 0 0 × ×<br />

⎤ ⎡<br />

,<br />

⎥ ⎢<br />

⎦ ⎣<br />

× × × × ×<br />

0 × × × ×<br />

0 + × × ×<br />

0 + + × ×<br />

0 0 0 0 ×<br />

⎤<br />

),<br />

⎥<br />

⎦<br />

etc. Se observă că s-a obţinut deplasarea cu o poziţie spre dreapta jos a celor două<br />

grupuri de elemente alterante, proces care poate fi continuat până la eliminarea lor.<br />

Aplicarea reflectorului U = U T care a<strong>si</strong>gură prima coloană impusă a matricei<br />

de transformare corespunzătoare pasului QR curent pentru matricea HT −1 şi apoi<br />

refacerea structurii Hessenberg generalizate cu ajutorul variantei adaptate a algoritmului<br />

HTQZ, dată de schema de calcul de mai sus, conduc la obţinerea perechii<br />

succesor<br />

H ← H ′ = Q (2)<br />

n−1 Q(3) n−2···Q(3) 1 UHZ(3) 1 Z(2) 1 ···Z (3)<br />

n−2 Z(2) n−2 Z(2) n−1<br />

T ← T ′ = Q (2)<br />

n−1 Q(3) n−2···Q(3) 1 UTZ(3) 1 Z(2) 1 ···Z (3)<br />

n−2 Z(2) n−2 Z(2) n−1<br />

(6.66)<br />

dinşirulQZ.PrimacoloanăamatriceiU nuesteafectatădemultiplicarealadreapta<br />

cu matricea Q (3)<br />

1 ···Q (3)<br />

n−2 Q(2) n−1 .<br />

Ţinând seama de (6.61), (6.63) calculul economic al vectorului de deplasare<br />

implicită se poate face cu următorul algoritm.<br />

Algoritmul 6.6 (VD2 – <strong>Calculul</strong> vectorului de deplasare implicită<br />

pentru un pas dublu QZ) (Date o pereche (H,T) ∈ IR n×n × IR n×n în<br />

formă Hessenberg generalizată cu T ne<strong>si</strong>ngulară algoritmul calculează<br />

vectorul w ∈ R 3 de deplasare implicită pentru un pas dublu QZ.)<br />

1. Se calculează σ şi π cu relaţia (6.61).<br />

2. α = h 11<br />

, β = h 22<br />

, γ = h 21<br />

, δ = γ , η = α−δt 12 −σ<br />

t 11 t 22 t 11 t 22<br />

⎡<br />

3. w = ⎣ αη +δh ⎤<br />

12 +π<br />

γ(β +η) ⎦<br />

δh 32<br />

Comentarii. Sintaxa de apel a a acestui algoritm va fi<br />

w = VD2(H,T),<br />

iar complexitatea sa rămâne, evident, O(1).<br />

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

Saved successfully!

Ooh no, something went wrong!