Sei sulla pagina 1di 1

6

ARITMTICA DEL COMPUTADOR Y ERRORES

Ejemplo 1.8

Por ejemplo, usando aritmtica con diez decimales, si a = 9876 = 9.937806599 101 y b = 9875 = 9.937303457 101 , entonces a b = 0.000503142 101 . Normalizando se obtiene,
9876

9875 = 5.031420000 103

y perdimos dgitos signicativos. Se puede arreglar el problema racionalizando:

b=

esto cambia la resta (de nmeros cercanos) presenta problemas.

9876

ab , a+ b

9875 por la suma

9876 +

9875 y la resta 9876 9875 no

9876

9875 =

9876 9875 = 5.031418679 103 . 9876 + 9875

Es usual usar algunos trucos para minimizar este fenmeno de cancelacin.

(a.) Cambiar

b por

ab a+ b

(b.) Cambiar sen a sen b por 2 cos

a+b ab sen 2 2

(c.) Cambiar log a log b por log( a/b)

(d.) Si f es sucientemente suave y h pequeo, podemos cambiar y = f ( x + h) f ( x ) por la expansin de Taylor

y = f ( x )h + 0.5 f ( x )h2 + ...

Los trminos en esta serie decrecen rpidamente si h es sucientemente pequeo, as que el fenmeno de cancelacin deja de ser un problema. A veces, quince dgitos no bastan. Cuando tratamos con nmeros de mquina, hay un error que se va propagando. Esta propagacin del error es, en algunos casos, muy daina. A veces el dao es producto del fenmeno de cancelacin, al restar nmeros parecidos y muy pequeos y a veces es por problemas de inestabilidad del algoritmo en curso. Algunos clculos podemos mejorarlos aumentando la precisin, como se muestra en los ejemplos que siguen,

Potrebbero piacerti anche