12.01.2015 Views

Calculul valorilor si vectorilor proprii

Calculul valorilor si vectorilor proprii

Calculul valorilor si vectorilor proprii

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4.3. METODA PUTERII. METODA PUTERII INVERSE 237<br />

2. Stop<br />

2. µ = y H Ay<br />

3. Se rezolvă <strong>si</strong>stemul liniar (µI n −A)z = y<br />

4. z ← z/‖z‖<br />

5. e = |1−|z H y||<br />

6. y ← z<br />

7. i ← i+1<br />

Comentarii. Metoda puterii inverse cu deplasare variabilă dată de câtul Rayleigh<br />

reprezintă cea mai bună cale de calcul al unui vector propriu al unei matrice. Convergenţa<br />

pătratică este foarte rapidă (după cum se poate vedea şi din exemplul<br />

4.3). Astfel, e.g. dacă ‖y (0) − γx 1 ‖ ≤ ε şi τ = 1, atunci ‖y (k) − γx 1 ‖ ≤ ε 2k .<br />

Simultan cu calculul vectorului propriu, algoritmul calculează şi valoarea proprie<br />

asociată, dată de valoarea finală a deplasării µ. În vederea obţinerii unei eficienţe<br />

sporite, este utilă transformarea prealabilă a matricei date la o formă (e.g., forma<br />

superior Hessenberg) care să aibă ca efect reducerea efortului de calcul necesar<br />

pentru rezolvarea <strong>si</strong>stemului liniar de la instrucţiunea 4.3. ✸<br />

Metoda puterii Metoda puterii inverse<br />

k e k λ (k)<br />

1 e k µ k = λ (k)<br />

1<br />

0 1.0000000000000 2.0000000000000 1.0000000000000 2.0000000000000<br />

1 0.1055728090001 3.2000000000000 0.1322781687254 2.9411764705882<br />

2 0.0262710088797 3.1481481481482 0.2003991735561 3.0045159755566<br />

3 0.0026194296043 2.8921933085502 0.0000155353785 3.0000169808688<br />

4 0.0006379322733 3.0572569906791 0.0000000000709 3.0000000001717<br />

5 0.0002519147863 2.9922635151170 0.0000000000000 3.0000000000000<br />

6 0.0000549638856 2.9945140858135<br />

7 0.0000060060669 3.0060698628267<br />

8 0.0000014882055 2.9974207755674<br />

9 0.0000006272018 3.0004545082285<br />

.<br />

.<br />

.<br />

23 0.00000000000000 3.0000000351815<br />

Tabelul 4.1: Rezultate numerice privind evoluţia erorii de pas e k şi aproximaţiei<br />

curente λ (k)<br />

1 = (y (k) ) H Ay (k) a valorii <strong>proprii</strong> dominante din exemplul 4.3.<br />

Exemplul 4.3 Se con<strong>si</strong>deră matricea companion<br />

⎡ ⎤<br />

2 3 2 −6<br />

A = ⎢ 1 0 0 0<br />

⎥<br />

⎣ 0 1 0 0 ⎦ ,<br />

0 0 1 0

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

Saved successfully!

Ooh no, something went wrong!