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

Mtodos Numricos

Ingeniera Textil y de Confecciones

Aproximaciones y errores de
redondeo
Prof. Oscar Tinoco G.

Cifras significativas
Las cifras significativas de un nmero son aquellas
que pueden utilizarse en forma confiable. Se tratan del
nmero de dgitos que se ofrecen con certeza ms
uno estimado.
Los mtodos numricos dan resultados aproximados.
Los nmeros representados en las computadoras
tienen un nmero finito de cifras significativas. A la
omisin del resto de cifras significativas se le conoce
como error de redondeo.

Exactitud y precisin
La exactitud se refiere a que tan cercano esta el valor calculado o medido del
valor verdadero.
La precisin se refiere a que tan cercanos se encuentran, unos de otros,
diversos valores calculados o medidos.

Aumenta la precisin

Aumenta la exactitud

Los mtodos numricos deben ser lo suficientemente


exactos, o sin sesgo para satisfacer los
requerimientos de un problema particular de
ingeniera.

Tambin deben ser lo suficientemente precisos para


ser adecuados en el diseo de ingeniera.

En este curso usaremos el trmino error para


representar tanto la inexactitud como la imprecisin
en las predicciones.

Definicin de error
Los errores numricos se pueden clasificar como
Errores de truncamiento: resultan del empleo de aproximaciones con clculos exactos.
Errores de redondeo: por utilizar nmeros que tienen un lmite de cifras significativas.
Error verdadero = Et = valor verdadero valor aproximado
Esta definicin no toma en cuenta la magnitud de las cantidades involucradas.
Error relativo fraccional verdadero = error verdadero / valor verdadero
El error relativo porcentual verdadero se define como
t = error verdadero / valor verdadero x 100%
El error aproximado se utiliza cuando no se conoce el valor verdadero. Se define por
a = error aproximado / valor aproximado x 100%
El error en los mtodos iterativos con las aproximaciones actual y anterior.
a = (aproximacin actual aproximacin anterior) / aproximacin actual x 100%

Redondeo y Truncamiento

El redondeo reduce el nmero de dgitos


significativos en un nmero. El resultado del
redondeo es una cantidad de magnitud similar , que
es un numero mas corto porque tiene menos dgitos
diferentes de cero.
Un numero x esta truncado a n dgitos cuando todos
los dgitos que siguen al ensimo digito son
descartados y ninguno de los n dgitos restantes se
cambia.
Ejemplo: 2.51486896321
Redondeo: 2.51487
Truncamiento: 2.51486

Ejemplo 1
Se mide un puente y un remache, y se obtienen 9999 y 9 cm,
respectivamente. Si los valores verdaderos son 10000 y 10 a) encontrar el
error verdadero y b) el error relativo porcentual verdadero en cada caso.
a)
Puente:

Et = 10000 9999 = 1 cm

Remache:

Et = 10 9 = 1 cm

b)
Puente:

t = 1/10000 x 100% = 0.01 %

Remache:

t = 1/10 x 100% = 10 %

Ejemplo 2
Aproximar los nmeros reales indicados a continuacin,
empleando una aritmtica de cinco cifras significativas,
mediante corte y redondeo

Tarea
a) Evale el polinomio
y = x3 7x2 + 8x + 0.35
En x = 1.37, utilizando aritmtica de 3 dgitos con truncamiento (corte). Evale el
error relativo porcentual.
b) Repita a) con y calculada con
y = ((x 7)x + 8)x + 0.35
Evale el error y comprelo con el de a)

Tarea
Escriba un programa en C que imprima una tabla con valores calculados de
ex, para x = 0.5 utilizando la expansin siguiente
2
3
x
x
ex 1 x
2! 3!

Imprima el nmero de trminos (comenzando en 1), el resultado de la suma y


el error relativo porcentual. Termine el proceso cuando el error relativo
porcentual sea menor a 0.004 %. El valor exacto determnelo con la funcin
exp() de C.

/* Programa para evaluar la funcin exponencial en 0.5


usando la serie de Taylor. */
#include <iostream>
#include <math.h>
int main(){
float x = 0.5, suma = 1, pi = 3.1415926535,error,fact = 1,pot = 1;
int iter = 1;
cout << "No.\tSuma\tError" << \n;
do{
error = (suma-exp(x))/exp(x)*100.0;
std::cout << iter << "\t" << suma << "\t" << error << "\t" << \n;
pot *= x;
//siguiente potencia de x
fact *= iter;
//siguiente factorial
suma += pot/fact;
//siguiente valor de la suma
iter++;
}while(fabs(error)>0.004);
system("PAUSE");
return 0;
}

No.
Suma
Error
1
1
-39.3469
2
1.5
-9.0204
3
1.625
-1.43877
4
1.64583 -0.17516
5
1.64844 -0.0172116
6
1.6487 -0.00141312
Presione una tecla para continuar . . .

Ejemplo
n

La serie:

4
i
i 1

Converge al valor f(n) = 4/90, conforme n tiende a infinito.


Escriba un programa de precisin sencilla para calcular para n =10000
por medio de calcular la suma desde i = 1 hasta 10000.
Despus repita el clculo pero en sentido inverso, es decir, desde i =
10000 a 1, con incrementos de -1.
En cada caso, calcule el error relativo porcentual verdadero.
PI = 3.141592653589793238

TEORA DE ERRORES1:
Definicin 1 :
Suponga que * es una aproximacin o medicin de p. el error
absoluto de la aproximacin es

y el error relativo es

Ep =| p - p* |

Rp

| p - p*
|
supuesto
que
|p|

P0

Definicin 2 :
El error relativo porcentual es el error relativo en porcentaje
Definicin 3 :
Se dice que p* es aproximacin a p con cifras significativas si es el
Mayor nmero natural tal que

1: Tomado de Apuntes Ing Edgar Ruiz

| p - p* | 10 2
<
|p|
2

Ejemplo 1 :

y = 3.141592
y = 3.14
Sea el nmero
y
. Hallar el
error absoluto, el error relativo y el error porcentual de la
aproximacin.
* Error Absoluto :
* Error relativo :

Ey =| y - y |=| 3.141592 - 3.14 |= 0.001592

Ry =

| y - y | 0.001592
=
= 0.000507
3.141592
y

* Error relativo porcentual:

Ry % = Ry *100 = 0.0507

Cul es el nmero de cifras significativas en la aproximacin?


-2

10

| 3.141592 - 3.14 |
= 0.000507
3.141592

= 0.0050

-2

| 3.141592 - 3.14 |
= 0.000507 10 = 0.0050
3.141592
2
->

y es una aproximaci n a y con 2 cifras significat ivas

Ejemplo 2 :

y = 1000000
y = 999996 . Hallar el
Sea el nmero
y
error absoluto, el error relativo y el error porcentual de la
aproximacin.
* Error Absoluto :
* Error relativo :

Ey =| y - y |=| 1000000 - 999996 |= 4

Ry =

* Error relativo porcentual:

| y - y |
4
=
= 0.000004
100000
y
Ry % = Ry *100 = 0.0004

Cul es el nmero de cifras significativas en la aproximacin?

|| 1000000 - 999996 |
= 0.000004
1000000

-5

10
2

-5

->

= 0.0000050

|| 1000000 - 999996 |
= 0.000004 10 = 0.0000050
1000000
2
y es una aproximaci n a y con 5 cifras significat ivas

ERRORES DE REDONDEO
La representacin de nmeros reales en una computadora est delimitada
por el nmero de cifras de la mantisa, de manera que algunos nmeros no
coinciden exactamente con su representacin en el ordenador. A esto se le
conoce como error de redondeo.
Ejercicio:
Usando aritmtica de 4 dgitos por redondeo. Resolver:

1 2
x + 47.00 x - 1 = 0
4
* Se tiene la frmula convencional:

- b b 2 4ac
x1,2 =
2a

* Se tiene la frmula alternativa

1,2

- 2c
- b b 2 4ac

Determinar los errores absolutos y relativos en cada caso. Presente sus


clculos y determinar que mtodo (a) y (b) es el ms apropiado tal que permita
una aproximacin ms exacta de las races de la ecuacin dada.

Ejercicio

Por otro lado:

Evaluar por el mtodo directo el polinomio


y = 2,3x + 5,7
para el valor x = 1,5, teniendo en cuenta que tanto los
coeficientes como el valor de x tienen todas sus cifras
correctas. Considerar que los errores absolutos valen
0,05.
Obtener el valor aproximado de la evaluacin as como
las cotas de error absoluto y relativo propagado.
El valor aproximado de la evaluacin es:
y = 2,3(1,5)+5,7 = 9,15
Para el error de propagacin se puede considerar:
y (x,w,z) = xy + z
x + w + z

EPSILON DE MAQUINA
En el formato IEEE doble precisin, la operacin 1+10-15 da
un resultado distinto de 1, mientras que 1+10-16 da como
resultado 1, es decir, el nmero 10-16 es tan pequeo que
al realizar la operacin de suma se pierden todos los
dgitos que pudiera aportar al resultado.
Hay un valor que llamamos psilon, , que es el mnimo
nmero que sumado a 1 da como resultado un valor mayor
que 1.
En el caso de IEEE doble precisin, este nmero estar
entre 10-16 y 10-15, como se ha visto por el ejemplo. Pero,
cul es exactamente ese valor?

EPSILON DE MAQUINA
El valor de se puede deducir de forma terica a partir de
la descripcin del formato IEEE. Sin embargo, lo que
vamos a hacer ahora es obtenerlo mediante un algoritmo.
La idea es realizar un bucle en el cual probamos la
operacin 1+x para valores cada vez ms pequeos de x,
hasta detectar que el resultado de la suma da
exactamente 1.

function [x,n] = epsilon


% Devuelve en x el valor del epsilon de la maquina y en n el numero
% de bits de la mantisa.
n = 0;
x = 1;
y = 2;
while y~=1
fprintf('n=%g, x=%g, y=%g\n',n,x,y)
n = n+1;
x = x/2;
y = 1+x;
end
x = x*2;
n = n-1;

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