Cn.computer.arithmetic
-
Upload
gabriela-ivan -
Category
Documents
-
view
214 -
download
1
description
Transcript of Cn.computer.arithmetic
-
Erori de reprezentare (round-off errors).
Reprezentarea numerelor reale n calculator. Erori de trunchiere.Propagarea erorilor.
1. Notam prin valoarea lui epsilon-machine. Mai precis daca x este unnumar real oarecare, iar fl(x) noteaza aproximarea lui x n virgula flotanta(floating point), atunci eroarea relativa n aproximarea lu x satisface
|fl(x) x||x| .
(a) Folositi scriptul eps_machine.m si verificati operatiile prezentate aici.
(b) Schimband doar ordinea termenilor (fara operatii de asociere saunmultire) calculati
E1() := 1 +
4+
4+
4+
4 1.
Explicati urmatorul aspect: de ce enumerarea de mai sus a terme-nilor nu va conduce la raspunsul corect E1() = si de ce o anumitareordonare a termenilor va conduce la raspunsul corect?
(c) Folositi codul de mai jos pentru a determina valoarea lui n dublaprecizie.
deps = double(1.0);
while (1
-
(a) Sa se calculeze exact valoarea lui In. Indicatie: prin schimbarea devariabila t := x+ 16 se obtine:
In =
n1k=0
(n
k
)(1)k16k 17
nk 16nkn k + (1)
n16n ln
(17
16
).
(b) Folositi scriptul integrala_recurenta.m pentru a calcula I16. Poatefi crezut rezultatul obtinut? Continuati prin a calcula I20 si I32.
3. Incercati urmatoarele evaluari. Explicati neconcordantele ce apar.
(a) Loss of significance 1.
>> my4 = sqrt(4)^2-4
>> my5 = sqrt(5)^2-5
(b) Loss of significance 2.
i. Calculati cu exactitate diferenta
dif1 = 1 0.9999987654321.
ii. Folositi Octave/Matlab pentru a calcula
ansexact = 1234567 dif1.
iii. Folositi Octave pentru a calcula ntreaga expresie. Mai precis,utilizati urmatoarea linie de cod pentru a obtine octaveAns, i.e.,
>> octaveAns = 1234567*(1-.9999987654321)
iv. Explicati diferenta ntre ansexact si octaveAns.
4. Cu o cautare Google folosind cuvintele cheie disasters caused by numer-ical errors se ajunge la paginahttp://ta.twi.tudelft.nl/users/vuik/wi211/disasters.html.Cititi una sau mai multe din situatiile descrise acolo.
References
[1] L. N. Trefethen, D. Bau III, Numerical Linear Algebra, SIAM, 1997.
[2] K. E. Atkinson, An Introduction to Numerical Analysis, 2nd edition, Wiley,1989.
[3] T. Young, M. J. Mohlenkamp, Introduction to Numeri-cal Methods and Matlab Programming for Engineers, 2014,https://www.math.ohiou.edu/courses/math3600/book.pdf.
2