Está en la página 1de 55

21 de Julio de 2014

FUNDAMENTOS
DE LA
TEORÍA DE
ERRORES
Departamento de Matemática Aplicada
Facultad de Ingeniería
Universidad Central de Venezuela
Cálculo Numérico José Luis Quintero 1
Puntos a tratar
1. Los métodos numéricos
2. Fuentes básicas de errores
3. Definiciones importantes
4. Estimación de la propagación de errores
5. Error de una suma
6. Error de una diferencia
7. Sumatorias y series elementales
8. Algoritmo de Horner
9. Evaluación de funciones analíticas
10. Condicionamiento
Cálculo Numérico José Luis Quintero 2
Métodos numéricos

Son técnicas mediante las


cuales es posible formular
problemas matemáticos de tal
forma que puedan resolverse
usando operaciones aritméticas.

Cálculo Numérico José Luis Quintero 3


Puntos a tratar
1. Los métodos numéricos
2. Fuentes básicas de errores
3. Definiciones importantes
4. Estimación de la propagación de errores
5. Error de una suma
6. Error de una diferencia
7. Sumatorias y series elementales
8. Algoritmo de Horner
9. Evaluación de funciones analíticas
10. Condicionamiento
Cálculo Numérico José Luis Quintero 4
Fuentes básicas de errores
• Planteamiento del problema (errores del
problema)
• Presencia de procesos infinitos en análisis
matemático (error residual)
• Parámetros numéricos (error inicial)
• Sistema de numeración (error por
redondeo)
• Operaciones con números aproximados
(errores de operación)
• Representación en punto flotante (errores
punto flotante)
Cálculo Numérico José Luis Quintero 5
Puntos a tratar
1. Los métodos numéricos
2. Fuentes básicas de errores
3. Definiciones importantes
4. Estimación de la propagación de errores
5. Error de una suma
6. Error de una diferencia
7. Sumatorias y series elementales
8. Algoritmo de Horner
9. Evaluación de funciones analíticas
10. Condicionamiento
Cálculo Numérico José Luis Quintero 6
Error absoluto y error relativo

El error absoluto en xɶ denotado ∆x, es la


diferencia entre el valor exacto x y el
valor aproximado xɶ .

El error relativo en xɶ es ∆x / x . El error


relativo es más significativo que el error
absoluto, ya que carece de unidad.

Cálculo Numérico José Luis Quintero 7


Redondeo y truncamiento

El error por redondeo es aquel originado


por las limitaciones que toda
herramienta de cálculo posee al no
poder representar las cantidades con
todas sus cifras.

El error por truncamiento se produce al


reducir a un número finito de
operaciones un proceso matemático
que es infinito.
Cálculo Numérico José Luis Quintero 8
Cota y decimales correctos

La cota o estimación de un error es


cualquier número no menor que el error.

−t
Si ∆x ≤ 0.5 × 10 , se dice que xɶ tiene t
decimales correctos. También se dice
que xɶ está correctamente redondeado
a t decimales.

Cálculo Numérico José Luis Quintero 9


Épsilon de la máquina, realmin y realmax

Utilice las variables especiales

eps, realmin y realmax

para calcular el épsilon de la máquina,


el número más pequeño que la máquina
distingue de cero y la mayor magnitud
representada respectivamente.

Cálculo Numérico José Luis Quintero 10


Épsilon de la máquina, realmin y realmax

El épsilon de la máquina es el número de


máquina positivo más pequeño de doble
precisión ε = 2 tal que 1 + ε ≠ 1
−52

Cálculo Numérico José Luis Quintero 11


Épsilon de la máquina, realmin y realmax

El épsilon de la máquina es el número de


máquina positivo más pequeño de doble
precisión ε = 2 tal que 1 + ε ≠ 1
−52

realmin es el número de máquina positivo


más pequeño de doble precisión dado por
µ=2 −1022
que la máquina distingue de
cero

Cálculo Numérico José Luis Quintero 12


Épsilon de la máquina, realmin y realmax

El épsilon de la máquina es el número de


máquina positivo más pequeño de doble
precisión ε = 2 tal que 1 + ε ≠ 1
−52

realmin es el número de máquina positivo


más pequeño de doble precisión dado por
µ=2 −1022
que la máquina distingue de
cero

realmax es el número de máquina más


grande dado por β ≈ 21024 que puede ser
representado con exactitud
Cálculo Numérico José Luis Quintero 13
Underflow y overflow

Si un número x ∈ R es tal que x < µ, se


produce un underflow y el computador
considera que x es cero

Cálculo Numérico José Luis Quintero 14


Underflow y overflow

Si un número x ∈ R es tal que x < µ, se


produce un underflow y el computador
considera que x es cero

Si un número x ∈ R es tal que x > β, se


produce un overflow y se detienen los
cálculos

Cálculo Numérico José Luis Quintero 15


Puntos a tratar
1. Los métodos numéricos
2. Fuentes básicas de errores
3. Definiciones importantes
4. Estimación de la propagación de errores
5. Error de una suma
6. Error de una diferencia
7. Sumatorias y series elementales
8. Algoritmo de Horner
9. Evaluación de funciones analíticas
10. Condicionamiento
Cálculo Numérico José Luis Quintero 16
Estimación de la propagación de errores

y = f(x1 ,..., xn )
n

n ∑ ∂f
∂xi ∆xi
∆y ≈ ∑i=1
∂f
∂xi ∆xi , δy ≈ i=1

f(x1 ,..., xn )

Cálculo Numérico José Luis Quintero 17


Estimación de la propagación de errores

Error absoluto en una suma


n n
y= ∑x
i=1
i
= x1 + ... + xn ; ∆y ≈ ∑ ∆x
i=1
i

Error relativo en un producto

n n

n ∑ ∏x j
∆xi n

∏ ∑δ
i =1 j=1,j≠i
y= xi = x1 × ... × xn ; δy ≈ n
= xi
i =1
∏i =1
xi i =1

Cálculo Numérico José Luis Quintero 18


Estimación de la propagación de errores
Error relativo en un cociente
x1
y=
x2
+
∆x1 x1 ∆x2
x1
x2 x2
δy ≈ = (δx1 + δx2 ) = δx1 + δx2
2 x2
x1 x1
x2 x2

Error relativo en una potencia

m xm−1 ∆x
y = x ; δy ≈ m
m
= mδx
x
Cálculo Numérico José Luis Quintero 19
Puntos a tratar
1. Los métodos numéricos
2. Fuentes básicas de errores
3. Definiciones importantes
4. Estimación de la propagación de errores
5. Error de una suma
6. Error de una diferencia
7. Sumatorias y series elementales
8. Algoritmo de Horner
9. Evaluación de funciones analíticas
10. Condicionamiento
Cálculo Numérico José Luis Quintero 20
Error de una suma

El error absoluto de una suma de varios números


aproximados no excede de la suma de los errores
absolutos de los números.

Ejemplo.
x1 = 2.10, x2 = 3.05, s = 5.15
xɶ 1 = 2.00, xɶ 2 = 3.00, sɶ = 5.00
∆x1 = 0.10, ∆x2 = 0.05, ∆s = 0.15
∆s = 0.15 = ∆x1 + ∆x2

Cálculo Numérico José Luis Quintero 21


Error de una suma

Si todos los números (no nulos) vienen afectados


del mismo signo, la cota del error relativo de su
suma no excede del de la máxima cota del
error relativo de cualquiera de ellos.

Ejemplo.

x1 = 2.10, x2 = 3.05, s = 5.15, xɶ 1 = 2.00, xɶ 2 = 3.00, sɶ = 5.00


∆x1 = 0.10, ∆x2 = 0.05, ∆s = 0.15, δs = ∆s
s
= 0.15
5.15
≈ 0.0291
∆x1 ∆x2
δx1 = x1
= 0.10
2.10
≈ 0.0476, δx2 = x2
= 0.05
3.05
≈ 0.0164
δs < δ = max(0.0476,0.0164) = 0.0476

Cálculo Numérico José Luis Quintero 22


Puntos a tratar
1. Los métodos numéricos
2. Fuentes básicas de errores
3. Definiciones importantes
4. Estimación de la propagación de errores
5. Error de una suma
6. Error de una diferencia
7. Sumatorias y series elementales
8. Algoritmo de Horner
9. Evaluación de funciones analíticas
10. Condicionamiento
Cálculo Numérico José Luis Quintero 23
Error de una diferencia

El error absoluto de una diferencia no excede a la


suma de las cotas de los errores absolutos del
minuendo y sustraendo.

Si los números aproximados son números


prácticamente iguales y tienen errores absolutos
pequeños, su suma exacta es pequeña. La cota del
error relativo en este caso puede ser muy grande
aun cuando los errores relativos del minuendo y el
sustraendo permanezcan pequeños. Esto conduce
a una pérdida de exactitud. Esto se denomina
cancelación catastrófica.
Cálculo Numérico José Luis Quintero 24
Puntos a tratar
1. Los métodos numéricos
2. Fuentes básicas de errores
3. Definiciones importantes
4. Estimación de la propagación de errores
5. Error de una suma
6. Error de una diferencia
7. Sumatorias y series elementales
8. Algoritmo de Horner
9. Evaluación de funciones analíticas
10. Condicionamiento
Cálculo Numérico José Luis Quintero 25
Sumatorias

n(n + 1) n(n + 1)(2n + 1)


n n

∑i=1
i=
2 ∑
i=1
i =
2

2
 n(n + 1) 
n

∑i=1
i =
3

 2 

n
n
∑i=1
i =
4

30
(n + 1)(6n3 + 9n2 + n − 1)

Cálculo Numérico José Luis Quintero 26


Tabla de series elementales

Cálculo Numérico José Luis Quintero 27


Puntos a tratar
1. Los métodos numéricos
2. Fuentes básicas de errores
3. Definiciones importantes
4. Estimación de la propagación de errores
5. Error de una suma
6. Error de una diferencia
7. Sumatorias y series elementales
8. Algoritmo de Horner
9. Evaluación de funciones analíticas
10. Condicionamiento
Cálculo Numérico José Luis Quintero 28
Evaluación de polinomios

Suponga un polinomio de grado n

P(x) = anxn + an−1xn−1 + ... + a1x + a0

con coeficientes reales


ak (k = 0,1,...,n),
y se quiere calcular el valor :

P(k)(ξ) (k = 0,1,...,n)

Cálculo Numérico José Luis Quintero 29


Evaluación de polinomios

Evaluación directa:
n adiciones
n(n+1)
2
multiplicaciones
n(n+3)
2
operaciones

Algoritmo de Horner:
n adiciones
n multiplicaciones
2n operaciones

Cálculo Numérico José Luis Quintero 30


Evaluación de polinomios

Evaluación directa:
n(n + 1)(n + 5)
6

Algoritmo de Horner:
n(3n + 1)
2

Diferencia:
n(n − 1)(n − 2)
6

Cálculo Numérico José Luis Quintero 31


Gráfico de una función

x=linspace(0,10,300);
y=x.*(x+1).*(x+5)/6;
z=x.*(3*x+1)/2;
plot(x,y,'r.',x,z,'g.'), grid on
xlabel('Grado del polinomio')
ylabel ('Número de operaciones')
legend('Evaluación tradicional','Algoritmo de Horner')

Cálculo Numérico José Luis Quintero 32


Gráfico de dos funciones en un mismo sistema

300
Evaluación tradicional
Algoritmo de Horner
Número de operaciones 250

200

150

100

50

0
0 1 2 3 4 5 6 7 8 9 10
Grado del polinomio

Cálculo Numérico José Luis Quintero 33


Gráfico de diferencia de número de operaciones
x=linspace(0,10,300);
y=x.*(x-1).*(x-2)/6;
plot(x,y,'b.')
xlabel('Grado del polinomio')
ylabel ('Número de operaciones')
title('Diferencia Tradicional-Horner')
Diferencia Tradicional-Horner
120

100

80
Número de operaciones

60

40

20

-20
0 1 2 3 4 5 6 7 8 9 10
Grado del polinomio

Cálculo Numérico José Luis Quintero 34


Algoritmo de Horner completo

inicio
leer (n,(ai : 0 ≤ i ≤ n), ξ)
desde k = 0 hasta (n − 1) hacer
desde j = (n − 1) hasta k hacer
aj ← aj + ξaj+1
fin_desde
dj ← aj ∗ factorial(j)
fin_desde
dn ← an ∗ factorial(n)
escribir (di : 0 ≤ i ≤ n)
fin
Cálculo Numérico José Luis Quintero 35
Puntos a tratar
1. Los métodos numéricos
2. Fuentes básicas de errores
3. Definiciones importantes
4. Estimación de la propagación de errores
5. Error de una suma
6. Error de una diferencia
7. Sumatorias y series elementales
8. Algoritmo de Horner
9. Evaluación de funciones analíticas
10. Condicionamiento
Cálculo Numérico José Luis Quintero 36
Evaluación de funciones reales analíticas

Una función real f(x) se denomina analítica en


un punto ξ si en la vecindad x − ξ < R de este
punto puede desarrollarse en series de
potencias (serie de Taylor).

En muchos casos, desarrollar una función en


serie de Taylor resulta muy conveniente para
calcular los valores de la función, en otros
casos basta con racionalizar (radicales),
aplicar propiedades (logaritmos) o transformar
en expresiones equivalentes (expresiones
trigonométricas).
Cálculo Numérico José Luis Quintero 37
Evaluación de funciones reales analíticas

EJEMPLO.

Sean las funciones


x
f(x) = x( x + 1 − x) , g(x) =
x +1 + x
Halle f(500) y g(500) y compare con el valor
exacto 11.174755300747198…

Cálculo Numérico José Luis Quintero 38


Evaluación de funciones reales analíticas

SOLUCIÓN.

f(500) = 500( 501 − 500)


≈ 500(22.3830 − 22.3607) = 11.15

500
g(500) =
501 + 500
500 500
≈ =
22.3830 + 22.3607 44.7437
= 11.1748

Cálculo Numérico José Luis Quintero 39


Evaluación de funciones reales analíticas

La segunda función es algebraicamente


equivalente a f(x), como muestra el siguiente
cálculo
x( x + 1 − x)( x + 1 + x)
f(x) =
( x + 1 + x)

x ( x + 1) − ( x)
2 2
x
=   = .
x +1 + x x +1 + x

La respuesta
g(500) = 11.1748
tiene un error absoluto menor.
Cálculo Numérico José Luis Quintero 40
Ejercicio computacional

Considere la función
1 − cos(x)
f(x) =
x2
1. Obtenga su gráfica.
2. Verifique que f(x → 0) = 12 , analítica y
gráficamente.
3. Verifique las siguientes expresiones
equivalentes para f(x):

sen2(x) 2sen2( 2x )
f(x) = 2 y f(x) =
x (1 + cos(x)) x2

Cálculo Numérico José Luis Quintero 41


Ejercicio computacional

4. Obtenga una expresión equivalente para


f(x) a partir del siguiente polinomio de
Taylor de la función cos(x), alrededor de
x=0


2i 2 4 6 8
x x x x x
cos(x) = (−1)i =1− + − + − ...
(2i)! 2! 4! 6! 8!
i=0

Cálculo Numérico José Luis Quintero 42


Ejercicio computacional

5. Evalúe las dos expresiones disponibles para


f en los valores
x = 2−1, 2−2 , 2−4 , 2−8 , 2−16.

6. Guarde el código (programa 1) con el


nombre de taylor.m para evaluar las
expresiones.

Cálculo Numérico José Luis Quintero 43


Programa 1

clc
x=1/2;
for i=1:10
term=0.5;
sum=0;
n=0;
while (abs(term)+sum)>sum
sum=sum+term;
n=n+1;
term=term*(-1)*x*x/((2*n+1)*(2*n+2));
end
fun=(1-cos(x))/(x.*x);
fun2=((sin(x))^2/(1+cos(x)))/(x.*x);
fun3=2*(sin(x/2))^2/(x.*x);
fprintf(' n=%1.0f',n)
fprintf(' i=%1.0f',i)
fprintf(' taylor=%1.28f ',sum)
fprintf(' funcion=%1.28f ',fun)
fprintf(' funcion2=%1.28f ',fun2)
fprintf(' funcion3=%1.28f\n',fun3)
x=x.^2;
end

Cálculo Numérico José Luis Quintero 44


Ejercicio computacional

7. Justifique los resultados obtenidos


mencionando la existencia de dificultades
numéricas presentes en las fórmulas (si las
hubiera) para el rango de valores
considerados (cancelación catastrófica,
división por cero, etc).

8. Concluya cuál de estas expresiones resulta


más estable numéricamente.

Cálculo Numérico José Luis Quintero 45


Puntos a tratar
1. Los métodos numéricos
2. Fuentes básicas de errores
3. Definiciones importantes
4. Estimación de la propagación de errores
5. Error de una suma
6. Error de una diferencia
7. Sumatorias y series elementales
8. Algoritmo de Horner
9. Evaluación de funciones analíticas
10. Condicionamiento
Cálculo Numérico José Luis Quintero 46
Condición y condicionamiento

Las palabras condición y condicionamiento se


usan de manera informal para indicar cuán
sensible es la solución de un problema
respecto de pequeños cambios relativos en los
datos de entrada.

Un problema está mal condicionado si


pequeños cambios en los datos pueden dar
lugar a grandes cambios en las respuestas.
Para ciertos tipos de problemas se puede
definir un número de condición. Si el número es
grande significa que se tiene un problema mal
condicionado.
Cálculo Numérico José Luis Quintero 47
Número de condición para la evaluación de funciones

Error absoluto (EA):


EAimagenes = K.EApreimagenes
f(x + h) − f(x) ≈ f '(x) h

Error relativo (ER):

ERimagenes = K.ERpreimagenes
f(x + h) − f(x) xf '(x) h

f(x) f(x) x

Cálculo Numérico José Luis Quintero 48


Ejemplo

x=linspace(-1,1,3000);
y=exp(x);
z=abs(x);
plot(x,y,'r.',x,z,'g.'), grid on
xlabel('Preimagenes')
ylabel ('Imagenes')
legend('Condición absoluta','Condición relativa')
title('Funciones de condicionamiento para y = exp(x)')

Cálculo Numérico José Luis Quintero 49


Ejemplo

Funciones de condicionamiento para y = exp(x)


3
Condición absoluta
Condición relativa
2.5

2
Imagenes

1.5

0.5

0
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
Preimagenes

Cálculo Numérico José Luis Quintero 50


Norma de una matriz

A 1
= max
1≤ j≤n
∑ aij
i =1
n

A ∞
= max
1≤ i ≤ n
∑ aij
j=1

n n

A e
= ∑∑a
i =1 j=1
2
ij

Cálculo Numérico José Luis Quintero 51


Número de condición de una matriz

Error absoluto (EA):


EAsolución ≤ K.EAladoderecho
x − xɶ ≤ A −1 b − bɶ

Error relativo (ER):


ERsolución ≤ K.ERladoderecho
x−x ɶ b − ɶ
b
≤ A A −1
x b

Cálculo Numérico José Luis Quintero 52


Número de condición de una matriz

 1 1.01 −1 10000 −10100


A=  ⇒A = 
0.99 1   − 9900 10000 

κ(A) = A A −1 = 2 × 20000 = 40000

Cálculo Numérico José Luis Quintero 53


Número de condición de una matriz

 1 1.01  x1  2.01  x1  1


0.99  x  =   ⇒ = 
 1   2  1.99 x2  1

 1 1.01  x1  2  x1   −200


0.99  x  =   ⇒ x  =  
 1   2  2  2  200 

Cálculo Numérico José Luis Quintero 54


Pensamiento de hoy

“La confianza en si mismo


es el primer secreto del
éxito”.
Emerson

Cálculo Numérico José Luis Quintero 55

También podría gustarte