26.12.2014 Views

metode de calcul numeric matriceal. algoritmi fundamentali

metode de calcul numeric matriceal. algoritmi fundamentali

metode de calcul numeric matriceal. algoritmi fundamentali

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 CAPITOLUL 0. CONCEPTE FUNDAMENTALE<br />

care asociază fiecărui x ∈ [−M, M] o unică reprezentare în virgulă mobilă<br />

ˆx = fl(x)<br />

este numită funcţie <strong>de</strong> rotunjire. Eroarea relativă <strong>de</strong> aproximare<br />

|x − fl(x)|<br />

|x|<br />

<strong>de</strong>finită pentru orice x ∈ [−M, M] nenul este <strong>de</strong>numită eroare <strong>de</strong> reprezentare.<br />

Deoarece intervalul [−M, M] este o mulţime infinită <strong>de</strong> numere reale, fiecare<br />

ˆx ∈ F constituie ”reprezentarea în VM” a unei mulţimi infinite <strong>de</strong> numere din<br />

[−M, M]; suntem interesaţi să găsim o margine superioară a erorii <strong>de</strong> reprezentare<br />

pentru o funcţie <strong>de</strong> rotunjire dată. Există mai multe funcţii <strong>de</strong> rotunjire. O vom<br />

prezenta doar pe cea mai simplă, <strong>de</strong>numită rotunjire prin tăiere. În acest scop, să<br />

scriem numărul x ∈ [−M, M] în forma (0.1) normalizată:<br />

x = f · β e = ±0.f 1 f 2 . . . f t f t+1 . . . · β e =<br />

= ±0.f 1 f 2 . . . f t · β e ± 0.f t+1 f t+2 . . . · β e−t =<br />

= ˆf · β e + ĝ · β e−t ,<br />

un<strong>de</strong> f i ∈ C, f 1 ≠ 0, ˆf = ±0.f 1 f 2 . . . f t , ĝ = ±0.f t+1 f t+2 . . .<br />

În mod evi<strong>de</strong>nt:<br />

1/β ≤ |f| < 1, 1/β ≤ | ˆf| < 1, 0 ≤ |ĝ| < 1. (0.4)<br />

Funcţia <strong>de</strong> rotunjire prin tăiere<br />

este <strong>de</strong>finită prin<br />

ˆx = fl 1 (x) =<br />

fl 1 : [−M, M] → F<br />

{ ˆf · β e , pentru x ≠ 0,<br />

0, pentru x = 0.<br />

Pe scurt, reprezentarea în VM se obţine prin tăierea cifrelor mantisei normalizate a<br />

numărului x care se află în afara formatului (<strong>de</strong> la poziţia t + 1 încolo).<br />

Utilizând inegalităţile (0.4), este uşor <strong>de</strong> stabilit o margine superioară a erorii<br />

<strong>de</strong> reprezentare introduse <strong>de</strong> fl 1 . Într-a<strong>de</strong>văr, pentru orice x ∈ [−M, M] \ {0} avem<br />

ε = |x − fl 1(x)|<br />

|x|<br />

= |fβe − ˆfβ e |<br />

|f|β e<br />

= |ĝ|βe−t<br />

|f|β e<br />

< β−t<br />

β −1 = β−t+1 .<br />

Această formulă arată că, indiferent <strong>de</strong> valoarea numărului x, o margine pentru<br />

mărimea erorii <strong>de</strong> reprezentare este <strong>de</strong>terminată exclusiv <strong>de</strong> numărul <strong>de</strong> cifre ale<br />

mantisei (în baza <strong>de</strong> numeraţie a FVM) şi acesta este motivul pentru care t este<br />

numit precizia reprezentării în virgulă mobilă. Numărul β −t+1 este numit epsilon<br />

maşină şi reprezintă distanţa dintre 1 şi următorul număr cu reprezentare în FVM<br />

(vezi problema 0.5).

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

Saved successfully!

Ooh no, something went wrong!