Вы находитесь на странице: 1из 15

9

1.3.2

P
erdida de dgitos significativos

Para comenzar consideremos el problema de la evaluacion de la funci


on


f (x) = x x + 1 x



100 , ahora
para
crecientes de x . Por ejemplo, tenemos f (100) = 100 101
como
valores

101 100 = 0.0498752 . . . , evaluando f (100) tiene que f (100) = 100 101 100 =
4.987562 . . . .Ahorasi trabajamos con aritmetica de 6 dgitos y redondeo, obtenemos
los siguien
tes valores: 101 100 = 10.049910 = 0.049900 luego f (100) = 100 101 100 = 4.99
en nuestra aritmetica.

El c
alculo de 101 100 = 0.049900 cuyo valor aproximado es 0.0498756
tiene perdida del

signicado del error. Note que tres dgitos de precisionen x + 1 = 101 fueron cancelados

en la resta con los correspondientes dgitos de x = 100 . La perdida de precision fue un


subproducto de la forma de f (x) y la precision de la aritmetica nita usada. Observe que
f (x) puede ser reescrita de la siguiente manera


x
f (x) = x x + 1 x =
,
x+1+ x
esta ultima forma no tiene perdida de signicado de error en su evaluaci
on, pues
100
100
=
= 4.98756.
10.0499 + 10
20.0499


x
Observaci
on. Es importante notar que las expresiones x x + 1 x y x+1+
para
x
la misma funci
on, son matematicamente equivalentes, pero numericamente no lo son, pues la
evaluaci
on de ellas en nuestra aritmetica nos arrojan resultados distintos.
f (100) =

Observaci
on. Los programadores deben tener en cuenta esta posibilidad de este error y evitar
este fenomeno de perdida de dgitos signicativos.
La perdida de dgitos signicativos es un subproducto de la resta de n
umeros parecidos. Esto
redunda en inestabilidad en los c
alculos numericos.
Ejemplo 4 La ecuacion de segundo grado
x2 18x + 1 = 0

tiene soluciones x1 = 9 + 80 y x2 = 9 80 . Si consideramos 80 con 4 dgitos decimales


correctos, obtenemos
x1

= 69 + 8.9443 0.5 104 = 17.9443 0.5 104

y
x2

9 8.9443 0.5 104 = 0.0557 0.5 104 .

Luego, la aproximaci
on de x1 tiene 6 dgitos signicativos y x2 tiene solo 3. La cancelaci
on
es evitada reescribiendo

1
1
(9 80)(9 + 80)

=
x2 =
=
17.9443 0.5 104
9 + 80
9 + 80
y entonces x
2 =

1
17.9443

= 0.055728002 . . . .

10

Ejemplo 5 Consideremos la funci


on f (x) =
Taylor, obtenemos

f (x)

=
=

de donde f (0) =

1
2

1cos(x)
x2

. Si usamos desarrollos en series de




x4
x6
x2
1
+

+
R
1

(x)
6
x2
2!
4!
6!
2
4
6
x
x
x
1

cos (x) ,
2!
4!
6!
8!

, y para |x| < 0.1 , tenemos que

cos (x)
< 10 = 2.5 1011

8!

8!

1
Luego la aproximaci
on f (x) = 2!
x4! + x6! , para |x| < 0.1 posee la precision dada arriba.
Esto nos brinda una manera mucho mas facil para evaluar f (x) .
2

Teorema 1.1 (Perdida de Precision) Si x e y son n


umeros representados en la base > 1
en su forma normalizada de punto otante, tales que x > y , con
y
q  1  p .
x
Entonces en la resta x y se pierden a lo m
as q y al menos p dgitos signicativos.
Ejemplo 6 Sea y = x sen(x) . Como sen(x) x para valores peque
nos de x , este calculo
tendr
a una perdida de dgitos signicativos C
omo puede evitarse?
Una forma alternativa para la funci
on y = x sen(x) resulta del desarrollo en serie de Taylor
alrededor de x = 0 . Luego,


x3
x5
x7
x3
x5
x7
y = x sen(x) = x x
+

+ =

+
+
3!
5!
7!
3!
5!
7!
como x es proximo de cero, podemos truncar la serie, obteniendo, por ejemplo
y

x3
x5
x7
x9

.
3!
5!
7!
9!

Consideremos el caso sen(x) > 0 , como x > sen(x) = y , utilizando el teorema de Perdida de
Precisi
on, obtenemos que la perdida de dgitos signicativos en la resta dada por y = x sen(x)
1
puede limitarse a un dgito signicativo si restringuimos x de tal modo que 1 sen(x)
 10
,
x
sen(x)
sen(x)
9
9
esto es, 10  x , de donde tenemos que

si
|x|

1.9
.
Para
|x|
<
1.9
usamos
x
10
la representacion en serie de Taylor truncada tomando R10 (x) =
|R10 (x)| =

x10 sen(x)
10!

, luego

1.910
x10 |sen (x) |
<
0.00017 1.7 104 .
10!
10!

Ejemplo 7 Cuantos dgitos signicativos se pierden en la sustracci


on 1 cos(x) cuando
x = 14 ?


Consideremos f (x) = 1 cos(x) , por lo tanto f 14 = 1 cos 14 = 0.0310875 . Como
cos(x) < 1 , podemos utilizar el teorema de Perdida de Precisi
on y tenemos que 2q  1
1
p
as 6 y a lo menos 5 dgitos
cos 4  2 , con q = 6 y p = 5 . Por lo tanto se pierden a lo m
signicativos.

11

Ejemplo 8 Cuantos dgitos signicativos se pierden en una computadora cuando efectuamos


la sustraccion x sen(x) para x = 12 ?


Consideremos f (x) = x sen(x) . Para x = 12 obtenemos f 12 = 12 sen 12 = 0.020574
como x > sen(x) para sen(x) > 0 , tenemos que 2q  1 sen(0.5)
= 0.020574  2p , de
0.5
donde podemos deducir que q = 5 y p = 4 , es decir, se peirden a lo mas 5 y al menos 4 dgitos
signicativos en la resta x sen(x) para x = 1/2 .

1.3.3

Propagaci
on de error

Sea una operaci


on aritmetica + , , , / y sea la correspondiente version computaumeros usados en los
cional, la cual incluye, usualmente, redondeo o corte. Sean xA y yA n
calculos y suponga que ellos ya tienen errores, siendo sus valores verdaderos xT = xA + y
yT = yA + , dicho de otra forma = E(xA ) = xT xA y = E(yA ) = yT yA . Entonces
umero calculado, para el cual el error es dado por
xA yA es el n
xT yT xA yA = xT yT xA yA + xA yA xA yA


 


Error Propagado

(1.15)

Error de redondeo o corte

La cantidad xT yT xA yA es llamada error propagado y la cantidad xA yA xA yA


es llamada error de redondeo o corte.
Usualmente para el error de redondeo o corte tenemos que
xA yA = f l (xA yA )
lo cual signica que xA yA es calculado correctamente y luego redondeado o cortado. Por lo
tanto tenemos que
1
|xA yA | k+1
| xA yA xA yA | 
2
si usamos redondeo, y
| xA yA xA yA |  |xA yA | k+1
si usamos corte.
Lo anterior nos da el redondeo o corte verdadero usado.
Para el error propagado examinaremos algunos casos particulares.
Caso a. Multiplicaci
on. Para el error en xA yA , tenemos xT = xA + y yT = yA + , es
decir, = E(xA ) = xT xA y = E(yA ) = yT yA , por lo tanto

E(xA yA )

= xT yT xA yA
= xT yT (xT ) (yT )
= xT + yT

de donde,

12

E(xA yA ) = xT E(yA ) + yT E(xA ) E(xA )E(yA )

(1.16)

En particular, E(x2A ) = 2xT E(xA ) E(xA )2 .


Para el error relativo, tenemos

ER (xA yA )

=
=

xT yT xA yA
xT yT

,
yT
xT
xT yT

es decir,
ER (xA yA ) = ER (xA ) + ER (yA ) ER (xA ) ER (xA )

(1.17)

Observemos que si |ER (yA )| , | ER (xA )| << 1 ( << signica mucho menor que) entonces
ER (xA yA ) ER (xA ) + ER (yA ) .
Caso b. Divisi
on.

ER

xA
yA

Si | ER (yA )| << 1 se tiene que ER


=


xA
yA

ER (xA ) ER (yA )
1 ER (yA )

(1.18)

ER (xA ) ER (yA ) .

Observaci
on. Para las operaciones de multiplicaci
on y divisi
on, los errores relativos no se
propagan r
apidamente.
Caso c. Adici
on y sustracci
on.

E(xA yA ) =
=

(xT yT ) (xA yA )
(xT xA ) (yT yA ) = ,

por lo tanto
E (xA yA ) = E (xA ) E (yA )

(1.19)

Esto parece ser bastante bueno y razonable, pero puede ser enga
noso. El error relativo en
xA yA puede ser bastante pobre cuando es comparado con ER (xA ) y ER (yA ) .

Ejemplo 9 Consideremos xT = , xA = 3.1416 , yT =

22
7

, e yA = 3.1429 . Tenemos

13

E(xA ) =

xT xA 7.35 106 , ER (xA ) = 2.34 106

E(yA ) =

yT yA 4.29 105 , ER (yA ) = 1.36 105

E(xA yA ) =

(xT yT ) (xA yA ) 0.0012645 (0.0013) 3.55 105

Aunque el error en xA yA es peque


no, el error relativo en xA yA es mucho mayor que
en xA e yA .
umero de dgitos
Ejemplo 10 Sea xA = 3.0015 = 0.30015101 correctamente redondeado al n
2
se
nalados. Considere las expresiones matematicamente equivalentes u(x) = (3 x) , v(x) =
(3 x) (3 x) y w(x) = (x 6) x + 9 .
Si utilizamos en la evaluaci
on de cada una de las expresiones anteriores un computador con
aritmetica decimal de redondeo a 4 dgitos que valores numericos se obtendran?
Es f
acil realizar los calculos numericos con una maquina, por lo tanto se dejan a cargo del
lector.
Estudiemos la propagaci
on del error absoluto en cada una de las expresiones correspondientes,
determinando cotas para los valores absolutos de cada uno de los errores respectivos.
k+1

k+1

k+1

A
Sabemos que 2
 xTxx
 2 , de donde |xT xA |  2 |xT | . Ahora, si
T
escribimos xT en su forma normalizada, es decir, xT = xT 10e , donde 0.1  xT < 1 ,
k+1
obtenemos que E (xA ) = |xT xA |  10 2 | xT | 10e , aqu k = 5 y e = 1 , por lo tanto
3
3
3
E (xA ) = |xT xA |  102 , de donde 102 +xA  xT  102 +xA luego 3.001  xT  3.002 ,
por lo tanto

|E (uA )| =
E (3 xA )2
= |E ((3 xA ) (3 xA ))| =
2 (3 xT ) E (3 xA ) (E (3 xA ))2

 2 |3 xT | |E (3 xA )| +
E (3 xA )2
 2 0.002 |E (xA )| + |E (xA )|2
 2 0.002

103
2


+

103
2

2

= 0.225 105 .

Observaci
on. Desde la denici
on del error se tiene que E (xA + c) = E (xA ) .
Falta analizar para vA . Este se deja a cargo del lector.
Tenemos nalmente que
|E (wA )| = |E ((xA 6) xA + 9)| = |E ((xA 6) xA )|
= |(xT 6) E (xA ) + xT E (xA 6) E (xA ) E (xA 6)|
2

 |xT 6| |E (xA )| + |xT | |E (xA )| + |E (xA )|


 2.999

1
2

103 + 3.002 21 103 +

1
2

103

= 0.00300075.

14

1.4

Propagaci
on de error en evaluaci
on de funciones

Sea f (x) una funci


on, la cual suponemos derivable, con derivada continua. Sea xA un valor
omo aproxima f (xA ) a f (xT ) ?
aproximado de xT C
Usando el Teorema del Valor Medio, tenemos
f (xT ) f (xA ) = f  (c) (xT xA )
donde c entre xA y xT . Como en general, xA y xT son bastante pr
oximos, tenemos que

f (xT ) f (xA )

f  (xT ) (xT xA )
f  (xA ) (xT xA ) ,

luego,
E(f (xA )) f  (xA )E(xA )

(1.20)

|E(f (xA ))|  |E(xA )| max{ |f  (x)| : x entre xT y xA }

(1.21)

Tenemos ademas que

Para el error relativo tenemos la f


ormula

ER (f (xA ))

f  (xT )
f  (xT )
(xT xA )
xT ER (xA )
f (xT )
f (xT )

(1.22)

(x)
El n
umero (x) = ff (x)
x es llamado el n
umero de condici
on de f (x) . Si | limxxT (x)| =
+ , decimos que la evaluacion de f para x xT es numericamente inestable. Caso contrario,
decimos que la evaluacion de f para x xT es estable.

Notemos que si min{f (x) : x entre xT y xA } = 0 , entonces


|ER (xA )| 

max{ |f  (x)| : x entre xT y xA }


max{|x| : x entre xT y xA } |ER (xA )| .
min{ |f (x)| : x entre xT y xA }

Como antes podemos escribir,


f (xT ) f(xA ) = (f (xT ) f (xA )) + (f (xA ) f(xA )),
donde f (xT ) f (xA ) es el error propagado y f (xA ) f(xA ) es el error de la evaluacion de
f (x) en el computador.
Ejemplo 11 Consideremos f (x) = tan(x) . Para x0 = /2 tomamos aproximaciones x1 =

2 0.00001 y x2 = 2 0.000001 . Evaluando, nos queda y1 = tan(x1 ) = 100.000 e y2 =


tan(x2 ) = 1.000.000 , luego y2 y1 = 900.000 mientras que x2 x1 = 9 106 .

15

Ejemplo 12 Considere la funci


on f (x) =

sen(
3 +x)sen( 3 x)
2x

Veamos si esta funcion es numericamente estable la evaluacion de f (x) para x 0 .


Primero un argumento teorico de resta de n
umeros parecidos nos muestra que f (x) es
numericamente inestable en su evaluacion para x 0 . Vemos si hay perdida de dgitos
signicativos evaluando f (x) para x = 10n con n = 1, 2, . . . , 13 . Tenemos la siguiente
tabla
xn
x1 =
x2 =
x3 =
x4 =
x5 =
x6 =
x7 =
x8 =
x9 =

f (x)
0.017450368
0.017450377
0.017450377
0.017450377
0.01745038
0.0174504
0.0174505
0.01745
0.0174

1
10
1
102
1
103
1
104
1
105
1
106 0
1
107
1
108
1
109

Observe que el error entre las cantidades x8 y x9 , lo cual denotamos por E (x8 , x9 ) , es
E (x8 , x9 ) = |0.01745 0.0174| = 0.00005 , como el error es un valor grande tenemos inestabilidad numerica. Recuerde que en n
umeros de partida pr
oximos se debe tener imagenes pr
oximas.
Determinemos ahora un polinomio de grado mayor o igual a uno, que aproxime a f (x) y
que sea numericamente estable para x 0 . Desarrollando, obtenemos la expresion siguiente
para f ,

sen( 3 ) cos(x) + sen(x) cos( 3 ) sen( 3 ) cos(x) + sen(x) cos


f (x) =
2x

3 sen(x)
=
.
2
x
3

x
x
x
Ahora, desarrollando sen(x) en
serie de Taylor tenemos
 que sen(x) = x 3! + 5! 7! + ,


3 sen(x)
3
x2
x4
x6
= 2 1 3! + 5! 7! + . Consideramos la siguiente aproxiluego f (x) = 2
x



3
x2
1

para f , y vemos que en ella no existe


macion polinomial p(x) = 23 sen(x)

x
2
6
resta de n
umeros parecidos luego es estable. Por otra parte, si calculamos el n
umero condici
on
obtenemos para nuestra aproximaci
on polinomial, tenemos


x x3
p (x)
2x2
(x) = x
=
=

2
p (x)
6 x2
1 x6


(x)
y para valores x 0 se tiene que x pp(x)
0 , de donde concluimos que nuestra aproximacion
es numericamente estable.

16

1.5

Errores en sumas

Veamos como se propaga el error en sumas repetidas. Sea S = a1 + a2 + + an =

n


aj ,

j=1

donde cada aj es un n
umero punto otante, para sumar estos valores en la maquina se necesitan
n 1 sumas, cada una de las cuales, envuelve errores de redondeo o corte. Mas precisamente,
denimos
S2 = f l (a1 + a2 )
la version punto otante de a1 + a2 . Enseguida, denimos
S3 = f l (a3 + S2 )
S4 = f l (a4 + S3 )
..
.
Sn = f l (an + Sn1 )
Sn es la version punto otante de S . Tenemos
S2 = (a1 + a2 ) (1 + 2 )
S3 = (a3 + S2 ) (1 + 3 )
..
.
Sn = (an + Sn1 ) (1 + n ) .
Los termino en la expresion anterior pueden ser combinados, manipulados y estimados, obteniendo lo siguiente

S Sn

= a1 (2 + + n )
a2 (2 + + n )
a3 (3 + + n )
..
.
an n

observando esta f
ormula y tratando de minimizar el error total de S Sn , la siguiente puede
ser una estrategia razonable: ordenar los terminos a1 , a2 , . . . , an antes de sumarlos de tal
modo que 0  |a1 |  |a2 |  |a3 |   |an | . De esa manera los terminos del lado derecho
de la expresion arriba con el mayor n
umero de j son multiplicados por los menores valores de
aj . Luego esto minimiza S Sn sin costos adicionales en la mayora de los casos.

1.6

Estabilidad en m
etodos num
ericos

Muchos problemas matematicos tienen soluciones que son bastante sensitivas a peque
nos errores
computacionales, por ejemplo errores de redondeo. Para tratar con este fen
omeno, introduciremos los conceptos de estabilidad y n
umero condici
on. El n
umero condici
on de un problema
esta relacionado al maximo de precision que puede ser obtenido en su soluci
on cuando usamos

17

n
umeros de longitud nita y aritmetica de computador. Estos conceptos son entonces extendidos a metodos numericos usados para calcular la soluci
on. En general, queremos que los
metodos numericos usados no tengan sensibilidad a peque
nos errores mas all
a de los originados
en el problema matematico mismo.
Para simplicar, supongamos que nuestro problema viene dado por
F (x, y) = 0.

(1.23)

La variable x es la inc
ognita buscada y la variable y son los datos de los cuales depende
la soluci
on. Por ejemplo F puede ser una funcion real de dos variables, o x puede ser una
variable real e y puede ser un vector, puede ser una ecuacion diferencial o integral o funcional,
etc.
Diremos que el problema (1.23) es estable si la solucion x depende continuamente de la variable y , esto signica que si (yn )nN es una sucesion de valores aproxim
andose a y , entonces
los valores solucion asociados (xn )nN deben aproximarse a x de la misma forma. Equivalentemente si hacemos peque
nos cambios en y esos deben corresponder a peque
nos cambios en
x . El sentido en el cual los cambios son peque
nos depende de la norma que se este usando en
x e y , respectivamente, existen varias elecciones posibles, variando de problema en problema.
Problemas estables son tambien llamados well-posed problems. Si un problema no es estable,
este es llamado inestable o ill-posed problem.
Ejemplo 13 Considere el sistema de ecuaciones lineales

x + 2y

0.5x + 1.000001y =

3
1.5

Multiplicando la primera ecuaci


on por 0.5 y restando las ecuaciones, obtenemos y = 0 , de
donde x = 3 .
Consideremos ahora el sistema proximo

x + 2y
0.4999999x + 1.000001y

= 3
= 1.5

Multiplicando la primera ecuaci


on por 0.4999999 y restando las ecuaciones, obtenemos
1.2 106 y = 3 107 , de donde y = 0.25 y x = 3 2y = 2.5 , soluciones que no
son pr
oximas, a
un cuando los coecientes de las ecuaciones en ambos problemas son proximos,
de hecho, 0.5 0.4999999 = 107 y las soluciones varian del orden de 0.25.
Ejemplo 14 Consideremos la soluci
on de
ax2 + bx + c = 0, a = 0
cualquier soluci
on es un n
umero complejo, los datos de este caso son y = (a, b, c) vector de los
coecientes y la solucion esta dado por

b b2 4ac
x=
2a

18

la cual vara continuamente con y = (a, b, c) .


Si el problema es inestable, entonces existen serias dicultades al tratar de resolverlo. Usualmente no es posible resolver tales problemas sin primero tratar de entender mas acerca de las
propiedades de la solucion, usualmente retornando al contexto en el cual el problema matematico
fue formulado. Esto nos lleva a otras areas de investigacion en Matem
atica Aplicada y An
alisis
Numerico.
Para prop
ositos pr
acticos existen muchos problemas que son estables en el sentido anterior,
pero que contin
uan fastidiosos con respecto de los c
alculos numericos. Para tratar esta dicultad
introducimos una medida de la estabilidad, llamada n
umero condici
on.
El n
umero condici
on trata de medir los posibles malos efectos sobre la soluci
on x del problema
on de
cuando la variable y es perturbada en una cantidad peque
na. Sea y + y una perturbaci
on de la ecuaci
on perturbada
y , y sea x + x la soluci
F (x + x , y + y ) = 0.
Denimos

(x) = sup
y

x 
x
y 
y

(1.24)

donde   es una norma en el espacio adecuado.


Problemas que son inestables nos llevan a lim (x) = . El n
umero (x) es llamado
x0

n
umero de condici
on del problema F (x, y) = 0 . Este es una medida de la sensibilidad de la
soluci
on a peque
nos cambios de la data y .
Si (x) es bastante grande entonces existen cambios peque
nos y relativos a y que llevan
a grandes cambios relativos a x . Pero si (x) es peque
no, digamos (x)  C , con C
una constante razonable dependiendo del problema, por ejemplo, entonces cambios relativos
en y siempre llevan cambios peque
nos relativos en x . Como calculos numericos casi siempre
envuelven una variedad de peque
nos errores computacionales, no deseamos problemas con un
n
umero condici
on grande. Tales problemas son llamados ill-condicioned problem.
Ejemplo 15 Considere el problema xay = 0 , donde a > 0 . Perturbando y por y tenemos
x
ay+y ay
= ay 1 . Por lo tanto
x =
ay

a y 1

.
(x) = sup

= sup
y
y

y
y

y
y
Restringiendo y a valores peque
no, obtenemos que (x) |y log (a)| .

1.7

Inestabilidad num
erica de m
etodos

Definici
on 1.5 Decimos que un proceso numerico es inestable si peque
nos errores que se producen en alguna etapa se agrandan en etapas posteriores degradando seriamente la exactitud
del c
alculo en su conjunto.

19

Ejemplo 16 Consideremos la siguiente sucesion

x0 = 1, x1 = 3

xn+1 = 13 xn 4 xn1 , n  1.
3
3
n+1
y que xn > 0 para todo
Observe que la sucesion es equivalente a la sucesi
on xn+1 = 13
n N . Es claro de esta u
ltima expresion que lim xn = 0 , mientras que en la evaluacion
n

numerica de xn aparecen valores negativos, (que los alumnos hagan la tabla para la primera
n+1
ormula dada inicialmente). La prueba de xn+1 = 13
, es f
acil
expresion de xn , es decir, la f
y se hace por inducci
on.

1.8

Ejemplos resueltos

Ejemplo 17 Considere la funci


on denida por f (x) =

1x2 3 1x2
x2

1. Se produce inestabilidad numerica al evaluar f (x) en valores de x 0 ?


2. Determine una expresion algebraica, matem
aticamente equivalente a f (x) , la cual sea
estable numericamente para valores de x 0 .
3. Determine una aproximaci
on polinomial de grado mayor o igual a tres para f (x) en el
intervalo |x| < 0.5 , la cual sea numericamente estable.
Soluci
on. Para ver si existe inestabilidad numerica en la evaluaci
on de f (x) para x 0
puede usarse una tabla de valores o argumentar la existencia de resta de n
umeros parecidos.
Para la segunda parte, tenemos

f (x) =
=

1x2 3 1x2
2
x

2
1 x1x
2

= 1

1+1x2
1+ 1x2

1
1+ 1x2

1+

1x2
x2
1

3
1x2
x2

1x2
x2

1+
1+

1x2 +
1x2 +

3
(1x2 )2

3
2
(1x2 )

1
1x2 + 3 (1x2 )2

Finalmente, para encontrar una paroximaci


on que sea numericamente estable para f (x) ,
sean


3
F (x) = 1 x2 , G(x) = 1 x2
por lo tanto se tiene si desarrollamos va Taylor que
F (x) 1

x2
2

x4
8

x6
16

G (x) 1

x2
3

x4
9

2x6
9

x4
9

2x6
9

por lo tanto
f (x)

x2
2

x4
8

x6
16

1+
x2

x2
3

1
1
49 4
x
= x2
6 72
1296

20

Ejemplo 18 Considere xA = 1.00011 redondeado al n


umero de dgitos que se se
nala. Considere
las expresiones matematicamente equivalentes u = (x 1) (x 2) y v = x (x 3) + 2.
1. Usando el Teorema del Valor Medio, estudie la propagacion del error para u y v.
2. Determine buenas cotas para ER (uA ) y para ER (vA ) .
Soluci
on. Sea xT el valor exacto y xA una aproximacion de xT .
Denamos f (x) = (x 1) (x 2), as f  (x) = 2x 3, luego
|f (xT ) f (xA )| = |f  (c)| |xT xA | , con c entre xT y xA . Si xA xT entonces
|f (xT ) f (xA )| |f  (xA )| |xT xA | = 0.099978 |E (xA )|  4.9989 105
ya que xA = 1.00011 est
a redondeado a 6 dgitos, entonces se tiene que |E (xA )|  0.5
6+1+1
4
= 0.5 10 .
10
Denamos g (x) = x (x 3) + 2, de donde se tiene que g  (x) = 2x 3. Luego
|g (xT ) g (xA )|
=

|g  (xA )| |xT xA |
0.99978 |EA (xA )|  0.99978 0.5 104 = 4.9989 105

Para el error relativo, tenemos


ER (uA ) =

4.9989 105
|uT uA |

|uT |
|xT 1| |xT 2|

Por otro lado sabemos que |E (xA )|  0.5 106+1+1 = 0.5 104 por lo tanto
0.5 104 + 1.00011  xT  0.5 104 + 1.00011
0.00006  xT 1  0.00016

0.99994  xT 2  0.99984

de donde se deduce que


1
1

 16666.67
|xT 1|
0.00006

1
1

 1.0001600256 .
|xT 2|
0.99984

por lo tanto

ER (uA ) =

1.9

|uT uA |
 4.9989 105 (16666.67) (1.0001600256)  0.8323283325329
|uT |

Ejercicios

Problema 1.1 La ecuacion de segundo grado ax2 + bx + c = 0 se resuelve usualmente por


las f
ormulas

b + b2 4ac
b b2 4ac
,
x2 =
.
x1 =
2a
2a

21

Pruebe que una soluci


on alternativa viene dada por
x1 =

2c
2c

, x2 =
.
2
b b 4ac
b + b2 4ac

Escriba un programa en MatLab que resuelva las ecuaciones de segundo grado de las dos
maneras indicadas. Ejecute el programa cuando
(i) a = 1.0 , b = 5.0 , c = 6.0 , (ii) a = 1.0 , b = 12345678.03 , c = 0.92 .
Problema 1.2 Usando MatLab calcule x + y + z de las dos formas matematicamente equivalentes, x+ (y + z) y (x+ y)+ z cuando (i) x = 1.0 , y = 5.0 , z = 6.0 , (ii) x = 1 1020 ,
y = 1 1020 , z = 1.0 . Explique los resultados obtenidos.
Problema 1.3 Con MatLab, usando el formato largo, calcule h = 1/3333 . Enseguida sume
3333 veces la cnatidad obtenida. Tambien multiplique dicha cantidad por 3333. Explique los
resultados obtenidos.
Problema 1.4 Considere la funci
on h (x) =

tan




+ x tan 4 x
2x

1. Es numericamente estable la evaluacion de h(x) para x 0 ? Justique su respuesta.


2. Determine una expresion matematicamente equivalente a h(x) que sea numericamente
estable en su evaluaci
on para x 0 .
3. Usando desarrollos de Taylor, determine un polinomio de grado mayor o igual que 4, que
aproxime a h(x) y que sea numericamente estable en su evaluacion para x 0 .
Problema 1.5 Considere las expresiones matem
aticamente equivalente u(x, y) = (x + y)2
an correctamente
(x y)2 y v(x, y) = 4xy . Sabiendo que xA = 1.214301 e yA = 0.24578 est
redondeados al n
umero de dgitos se
nalados, estudie la propagaci
on del error absoluto (valor
absoluto del error) en la evaluacion de u y de v , determinando una buena cota Cu
al de ellas
tiene menor propagacion del error?
. Al calcular las races de
Problema 1.6 Considere la ecuacionc
ubica x3 31x 31x
1 = 0(3)
(1)
(2)
esta ecuacion obtenemos rT = 15 + 224 , rT = 15 168 , y rT = 1 . Suponga que usa
(1)
(2)
(3)
aritmetica de redondeo a 5 dgitos y denote por rA , rA , y rA las soluciones aproximadas
obtenidas para la ecuaci
on.
1. Calcule el error absoluto y el error relativo (en valor absoluto) en las soluciones aproximadas.
2. Una de ellas tiene perdida del dgitos signicativos. Proponga una expresi
on algebraica
matematicamente equivalente para evitar la perdida de dgitos signicativos en ese caso.
Justique la respuesta calculando el nuevo error relativo (en valor absoluto).
umero
Problema 1.7 Sea w(x, y) = (x y)(x2 + xy + y 2 ) , con xA = 1.2354 e yA = 3.001 , n
redondeado correctamente al n
umero de dgitos se
nalados, determine una buena cota para
|E(xA , yA )| .

22

Problema 1.8 Sea f (x) =

sen(x) x
.
x

1. Analice la estabilidad numerica en la evaluaci


on de f (x) para x 0 .
2. Encuentre una aproximaci
on polinomial de grado mayor o igual que 3 para f (x) y que
sea estable numericamente para la evaluacion cuando x 0 .
Problema 1.9 Considere la funci
on denida por f (x) = 100x .
1. Estudie la estabilidad numerica en la evaluaci
on de f (x) de acuerdo a los valores de
x R.
2. Si xA = 1000.01 es un n
umero redondeado correctamente al n
umero de dgitos se
nalados,
determine una buena cota para |E(f (xA ))|,.
Problema 1.10 Considere las expresiones matem
aticamente equivalentes: u = (x 1)3 y
v = 1 + x(3 + x(3 + x))
1. Estudie la propagaci
on del error absoluto en las expresiones u y v .
2. Que puede decir acerca de la presicion que se puede obtener para u y v , para un determinado valor de x ?
umero de dgitos se
nalados. Considere las
Problema 1.11 Sea xA = 2.0015 , redondeado al n
expresiones matematicamente equivalentes: u = (x4)2 , v = (x4)(x4) , w = (x8)x+16 .
1. Si utiliza en la evaluaci
on de cada una de las expresiones anteriores un computador con
aritmetica decimal de redondeo a 4 dgitos, que valores numericos se obtendran en cada
una de las expresiones?
2. Estudie la propagaci
on del error (absoluto) en cada una de las expresiones correspondientes,
determinando buenas cotas para los valores absolutos de cada uno de los errores respectivos.
Problema 1.12 Analice la estabilidad numerica en la evaluaci
on de f (xA ) para xA 0 ,
donde
ex 1
.
f (x) =
sen(x)
Problema 1.13 Sean xA = 1.0005 e yA = 0.999092 , redondeados correctamente al n
umero
de dgitos se
nalados. Considere las expresiones matematicamente equivalentes: u = x3 + y 3 y
w = (x + y)(x2 xy + y 2 ) .
1. Si utiliza en la evaluaci
on de cada una de las expresiones anteriores un computador con
aritmetica decimal de redondeo a 4 dgitos en cada etapa del c
alculo, que valores numericos
se obtendran en cada una de las expresiones?
2. Estudie la propagaci
on del error (absoluto) en la expresi
on u , determinando una buena
cota para el valor absoluto del error (usando xA ).

23

Problema 1.14 Considere la funci


on f (x) =

e2x 1
.
2xex

i) Es numericamente estable la evaluacion de f (x) para x 0 ? Justique brevemente y


alternativamente evaluando f (x) , para x = 10n con n = 1, . . . , 13 .
ii) Determine un polinomio de grado mayor o igual que 3, que aproxime a f (x) y que sea
estable numericamente para x 0 .
Problema 1.15 Sea xA = 1.0015 , redondeado correctamente al n
umero de dgitos se
nalados.
Considere las expresiones matem
aticamente equivalentes: u = (x1)3 y w = ((x3)x+3)x1 .
1. Si utiliza en la evaluaci
on de cada una de las expresiones anteriores un computador con
aritmetica decimal de redondeo a 4 dgitos en cada etapa del c
alculo, que valores numericos
se obtendran en cada una de las expresiones?
2. Estudie la propagaci
on del error (absoluto) en la expresi
on u , determinando una buena
cota para el valor absoluto del error (usando xA ).
Problema 1.16 Considere la funci
on f (x) =

cos(/3 + x) cos(/3 x)
.
2x

i) Es numericamente estable la evaluacion de f (x) para x 0 ? Justique brevemente y


alternativamente evaluando f (x) , para x = 10n con n = 1, . . . , 13 .
ii) Determine un polinomio de grado 1, que aproxime a f (x) y que sea estable numericamente
para x 0 .
Problema 1.17 Considere la funci
on f (x) =

x + 1/x


x 1/x .

i) Estudie la estabilidad numerica en la evaluaci


on de f (x) para x 0 . Justique.
ii) Proponga una expresi
on algebraica, que sea matem
aticamente equivalente a f (x) y que
sea numericamente estable en la evaluacion para x 0 .
iii) Determine un polinomio de grado mnimo mayor que 0, que aproxime a f (x) , y que sea
estable numericamente para la evalucion en x 0 . Ademas, obtenga una buena cota
para el error correspondiente con |x|  0.1 y x = 0 .
Problema 1.18 Considere las expresiones equivalentes, uA = (xA 2)(x2A 3xA + 1) y
vA = ((xA 5)xA + 7)xA 2 . Suponga que cada una de las operaciones aritmeticas en las
expresiones uA y vA deben ser redondeadas a 3 dgitos en la mantisa.
(a) Para xA = 2.01 , redondeado al n
umero de dgitos se
nalados, evalue las expresiones equivalentes de acuerdo a lo expresado arriba, y compare las precisiones de ambos resultados.
(b) Estudie la propagaci
on del error absoluto en ambas expresiones, uA y vA , acotando los
errores correspondientes (en valor absoluto) Que puede decir acerca de lo concluido en
a)?

Вам также может понравиться