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.

Indicaţii, răspunsuri, soluţii<br />

Cap. 0. Concepte fundamentale ale calculului numeric<br />

P0.1 Rezultatul depinde de ordinea de calcul; avem y 1 = (x 1 + x 2) + x 3 = 0 şi<br />

y 2 = x 1 +(x 2 +x 3) = 0.001. Rezultatul exact este y 2 (eroare relativă egală cu 0). Pentru<br />

y 1, eroarea relativă este |0−0.001|/0.001 = 1 (adică 100%).<br />

P0.2 Rezultatul calculat este ŷ = fl(fl(x 1 +x 2)+x 3) = fl((x 1+x 2)(1+ρ 1)+x 3) =<br />

= [(x 1+x 2)(1+ρ 1)+x 3](1+ρ 2), cu |ρ 1|,|ρ 2| ≤ µβ −t , şi µ de ordinul unităţii. Rezultă că:<br />

|y −ŷ|<br />

|y|<br />

≤<br />

(<br />

1+<br />

)<br />

|x1 +x2|<br />

µβ −t .<br />

|x 1 +x 2 +x 3|<br />

P0.3 Presupunem că datele de intrare sunt afectate de erori, şi deci (a+∆a,b+∆b)<br />

este utilizat în loc de (a,b). Rezultatul va fi x+∆x. Din (x+∆x)(a+∆a) = (b+∆b),<br />

neglijând ∆a∆x, rezultă că ∆x/x = −∆a/a−∆b/b. Deci, problema este întotdeauna bine<br />

condiţionată (erori relative mici ale intrării implică erori relative mici ale ieşirii).<br />

Deoarece ˆx = fl(−b/a) = (−b/a)(1 + ρ) = −b(1 + ρ)/a = −ˆb/a, cu |ρ| ≤ µβ −t ,<br />

algoritmul este numeric stabil. (ˆb este aproape de b).<br />

P0.4 Problema moşteneşte proasta condiţionare a sumei (de exemplu, când |a 1 +a 2|<br />

e mic şi |a 1|, |a 2| sunt mari). ”Algoritmul” x = −(b 1 +b 2)/(a 1 +a 2) este stabil.<br />

P0.5 Următorul număr în virgulă mobilă este x = 0.100...01·β 1 ; deci, x−1 = β −t+1<br />

(eroarea de reprezentare maximă pentru rotunjirea prin trunchiere).<br />

P0.6 ε r ≤ 0.5β −t+1 .<br />

P0.7 Varianta 1: (x⊗x)⊖(y ⊗y) = [x 2 (1+ρ 1)+y 2 (1+ρ 2)](1+ρ), cu ρ 1,ρ 2,ρ de<br />

ordinul erorii de reprezentare u. Atunci eroarea relativă<br />

ε r1 ≈ ρ+ ρ1x2 −ρ 2y 2<br />

x 2 −y 2<br />

poate fi mare atunci când x 2 şi y 2 au valori apropiate.<br />

Varianta 2: (x⊖y)⊗(x⊕y) = [(x−y)(1+σ 1)][(x+y)(1+σ 2)](1+σ), cu σ 1,σ 2,σ<br />

de ordinul de mărime al lui u. Eroarea relativă este acum (u 2 ≪ u)<br />

ε r2 ≈ σ 1 +σ 2 +σ ≤ 3u.<br />

Varianta 1 reprezintă un algoritm cu potenţiale instabilităţi numerice; varianta 2 este<br />

un algoritm stabil.

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

Saved successfully!

Ooh no, something went wrong!