Download - Cn.computer.arithmetic

Transcript
  • 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