You are on page 1of 4

1.1.

Clculo numrico vs. clculo simblico. a e a o

La mayor de los problemas matemticos que surgen de sistemas reales de ingenier no son a a a manejables mediante clculo simblico. Los principales motivos son los siguientes: a o 1. No existe mtodo simblico: e o Las integrales que aparecen en el clculo de probabilidades: a
1

ex dx
0

Clculo de polos en un circuito resuelto mediante transformadas: a s6 + 3s4 + 2s3 + s + 1 = 0 2. El mtodo simblico es extremadamente lento: e o Resolucin de sistemas que surgen de redes con miles de nodos. o 3. El mtodo simblico inexplicablemente falla al ejecutarlo en un ordenador e o Para resolver la ecuacin x2 + 1060 x + 1 = 0 usamos la frmula simblica para la o o o ecuacin de segundo grado o

a1

.c om
1060

4. El modelo matemtico es generalmente una aproximacin de la situacin real. Adems, a o o a los datos de los que se dispone son habitualmente aproximaciones inexactas de los datos reales, as que no tiene sentido usar mtodos exactos. e

1.2.

Tipos de mtodos. e

1. Mtodos directos: Conseguimos mediante un n mero nito de operaciones la solucin e u o exacta (al menos en teor en la prctica no siempre es as Se suelen trasladar directaa, a ). mente desde los mtodos del clculo simblico. Algunos ejemplos son e a o Frmula de la ecuacin de segundo grado. o o Mtodo de Gauss para resolver sistemas. e Mtodo de Barrow para integrales. e 2. Mtodos iterativos. Generamos una sucesin (xn ) tal que (al menos en teor l n xn = e o a) m x, donde x es solucin del problema. Por ahora entendemos l o mite en un sentido coloquial, ya que los elementos x pueden ser n meros, vectores, funciones, ... u

ww

w.

La segunda solucin es falsa! o

at

x1 = 9.9999 1059 , x2 = 0

em

at

2 Al simplicar con una calculadora o un ordenador nos queda

ic

x=

1060

1.3.

Representacin de n meros. o u

Cuando un n mero no tiene representacin decimal exacta o no nos interese guardar todos los u o decimales, lo podemos redondear con el n mero de cifras signicativas que queramos, siguiendo u las mismas reglas que para redondear euros. En general para escribir un n mero decimal en u notacin cient o ca escribimos x = 0.d 10k Los ordenadores tienen una memoria limitada, as que esto lo tienen que hacer muy a menudo. Los n meros se guardan en base 2: slo se guardan ceros (0) y unos (1). Muchos n meros que en u o u decimal son exactos, en binario son peridicos. Por ejemplo, 0.1diez = 0.00011dos es un n mero o u peridico. En los PCs ordinarios, para cada n mero se reservan generalmente 64 bits (espacios o u de memoria). Esto se llama representacin en doble precisin. As cada n mero se codica o o , u como x = (1)s 1.m 2e1023 donde s se llama signo y ocupa 1 bit, m se llama mantisa y ocupa 52 bits y e se llama exponente y ocupa 11 bits. Esto quiere decir que el ordenador tiene una precisin de 52 bits. Esta precisin dene un o o n mero bastante importante: el psilon de la mquina. En doble precisin es eps= 252 . Es la u e a o cantidad ms peque a comparable con el n mero 1. En un ordenador se tienen las siguientes a n u igualdades: 1 + eps 1 = eps eps 1 =0 2 Este fenmeno se conoce como error de redondeo o pero

Ojo! eps no es el n mero ms peque o representable en el ordenador. Los n meros ms peque o u a n u a n realmin y ms grande realmax vienen denidos por las limitaciones en el tama o del exponente. a n Al tener 11 bits, se tiene que (para n meros de la norma IEEE) 0 < e < 2047 y por tanto u 1023 < e 1023 < 1024. Cualquier clculo que de lugar a n meros mayores que realmax va a a u dar un error de overow. En Matlab se representa como innito Inf y no se paran los clculos. a Si por el contrario intentamos conseguir un n mero x tal que 0 < x < realmin dar un error u a de underow. En general se representa como x = 0 y se siguen los clculos. a

1.4.

Midiendo errores

Sea x una magnitud (escalar, vectorial, ...) y xord la magnitud que obtenemos en su lugar. Usemos el s mbolo x para medir esa magnitud (valor absoluto, norma de alg n tipo, ...) u Error absoluto: x xord

ww

w.

at

em
1+

at

ic

a1

.c om

Error relativo:

x xord x

1.5.

Principales efectos del error de redondeo

Si sumamos 0.1 cien mil veces con un ordenador, no obtenemos 10000, sino que tenemos >> s=0;for k=1:1e5, s=s+0.1; end, s s = 1.000000000001885e+004 >> s-1e4 ans = 1.884836819954217e-008 Los error absoluto y relativo cometidos al sumar 0.1 cien mil veces son: |s 104 | = 1.8848 108

se llama error por acumulacin. o

w.

Haciendo bien los clculos (luego explicamos cmo), se tiene que a o Pero >> sqrt(1e15+1)-sqrt(1e15) ans = 1.8626e-008 Los error absoluto y relativo cometidos al calcular 1015 + 1 1015 son 1015 + 1

ww

at

Ms peligroso es el error de cancelacin. Ocurre cuando se restan n meros muy prximos. a o u o

|1.8626 108 1.5811 108 | = 2.8151 109 |1.8626 108 1.5811 108 | = 0.1780 |1.5811 108 | Slo hay 1 cifra correcta! o Este problema aparece en la frmula de la ecuacin de segundo grado y en el clculo de derivadas o o a mediante la denicin. o

em

at
1015 = 1.5811 108

ic

La octava cifra decimal ya es errnea! Tenemos que el error de redondeo se propaga. Este error o

a1

|s 104 | = 1.8848 1012 |104|

.c om

Para evitarlo, hay que intentar transformar las operaciones para no hacer restas de ese tipo. La solucin depender de cada caso. En nuestro ejemplo, hay que multiplicar y dividir por una o a expresin conjugada: 1015 + 1 + 1015 . o Nota: Tambin genera errores de redondeo dividir por n meros peque os en valor absoluto, e u n ya que esta operacin genera n meros grandes que son ms propensos a producir error de o u a cancelacin. o

1.6.

Principales fuentes de error en los clculos. a

1. Errores debidos al redondeo: Afectan a todos los mtodos. e 2. Errores debidos al mtodo: No afectan a los mtodos directos. Slo a los iterativos. e e o 3. Errores debidos a la falta de precisin en los datos. Afectan a todos los mtodos. o e

1.7.

Ejercicios Tema 1
.c om

Ejercicio 1.1 Aproximando cada clculo con 3 decimales, calcula a


6

ex 1 x f (x) = x2

M
w.

Ejercicio 1.2 Sean f (x) y su polinomio de Taylor de orden 2 centrado en x0 = 0

at

em

Compara con el resultado s = 0.499314128943759. Qu efecto ha causado el error de redondeo? e

Calcular f (0.01) y p(0.01) usando 6 slo 6 decimales para todos los clculo y calcular en cada o a caso el error absoluto y relativo cometido si el resultado correcto es 0.50167084168057542. Qu efecto ha causado el error de redondeo al calcular f (0.01)?. e Teniendo en cuenta que slo podemos manejar 6 cifras, se ha cometido error al tomar f (0.01) = o p(0.01)? Repetir el clculo usando 16 cifras (necesitars Matlab, las calculadoras no suelen tener ms a a a de 10 12 cifras). o Ejercicio 1.3 Encuentre en cada caso una frmula equivalente que evite el error de cancelacin o o ln(x + 1) ln(x) para x >> 1. x2 + 1 x para x >> 1. cos2 (x) sin2 (x) para x /4

ww

at
y

ic
i=1

s=

a1
1 3i 1 x x2 p(x) = + + 2 6 24

You might also like