Professional Documents
Culture Documents
Tema 1: Introduccin
1.1. Definicin de Mtodos Numricos
Los mtodos numricos son estrategias de clculo que se utilizan para resolver situaciones numricamente, en forma aproximada. Se emplean cuando la situacin no es fcil de resolver en forma analtica, cuando es imposible de resolver del mismo modo, o cuando existe mucha necesidad de resultados, y en cuyo caso, un resultado numrico sera aceptable como solucin.
1.2.
Aritmtica de Computadoras
La aritmtica de las computadoras estudia la forma en que las mquinas digitales
Ahora, para qu es necesario estudiar esta aritmtica? Al entender esta forma de hacer clculos, la cual se basa en un sistema de numeracin distinto al conocido por los humanos, llamado sistema decimal, se puede comprender mejor la necesidad de hacer lo ms efectivo posible el trabajo de las computadoras en la generacin de respuestas numricas. Para esto, es necesario, aclarar algunas definiciones con respecto a la base de los nmeros.
1.2.1.
diez (10). Las computadoras usan el sistema binario, el cual consiste de elementos en los estados electrnicos de encendido (1) y apagado (0).
Examinando los lenguajes de programacin se pueden hallar otros sistemas numricos: el octal (base ocho (8)) y el hexadecimal (base diecisis (16)). Estos sistemas proporcionan algunas ventajas en la organizacin del espacio de memoria digital.
La base de un nmero se denota por medio de un subndice, con el nmero involucrado entre parntesis. Por ejemplo, (3.224)10 es 3.224 con base 10, (10011.11)2 es 10011.11 con base 2 (binaria) y (18C7.90)16 es 18C7.90 con base 16 (hexadecimal).
Por ejemplo, para el nmero entero binario (1110001)2: (1110001)2 = 1*26+1*25+1*24+0*23+0*22+0*21+1*20 = =64+32+16+0+0+0+1=113.
Para el sistema hexadecimal, los valores de sus dgitos son: Decimal Hexadecimal 0 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 10 11 12 13 14 15 9 A B C D E F
El valor decimal de un nmero de base r, por ejemplo (abcdefg.hijk)r se calcula como: (abcdefg.hijk)r = a*r6+b*r5+c*r4+d*r3+e*r2+f*r1+g*r0+h*r1+ i*r2+ j*r3+ k*r4 en donde, por definicin: (Base)0 = 1; por ejemplo r0 =1.
1 bit): 0 si es
j 64
positivo, 1 si es negativo. La segunda casilla corresponde a la caracterstica (c), un exponente de 7 bits con base 16. La caracterstica viene dada por: c = 16 . La mantisa
corresponde a los coeficientes negativos de exponentes de base binaria. Para el caso del ejemplo, se tiene: m = 121+123+124+127+128+1214. Por tanto: n = [1()1+1()3+1()4+1()7+1()8+1()14]16(66-64) = 179.015625. El siguiente nmero ms pequeo es: n= 0 1000010 101100110000001111111111
= 179.0156402587890625
Con el nmero original (n) de la mquina, se representa cualquier nmero real en el intervalo: [179.01561737060546875, 179.01563262939453125]. En el sistema se utilizan 15*228 nmeros de la forma:
1.3.
Error: Diferencia numrica que existe entre la evaluacin puntual de una expresin algebraica (utilizando valores decimales de la variable en cuestin) y el valor terico conocido como Valor real de la expresin.
p p* p
, siempre que p 0.
(1)
matemtica del modelo. La serie de Taylor es el medio ms importante que se utiliza para obtener modelos numricos y analizar errores de truncamiento.
Clculo del Error de Truncamiento TEOREMA DE TAYLOR: Supngase que f Cn [a,b], que existe f(n+1) existe en [a,b]. Para toda
x [a,b] habr un nmero (x) entre x0 y x tal que: f (x) = Pn(x) + Rn(x)
f(
k)
( x0 )
k! f(
n +1)
( x x0 )
y en donde:
Rn ( x ) =
( n + 1)!
( ( x ) )
( x x0 )
n +1
siendo: Pn(x): Polinomio de Taylor de grado n para f respecto a x0. Rn(x): Residuo (o error de truncamiento) asociado a Pn(x). Cuando x0 = 0 (2) Taylor se convierte en McClaurin.
y = 0.d1d2...di...dkdk+1...*10n,
1 d1 9, 0 di 9, para cada i =2,...,k,k+1,...
i)
fl(y) = 0.d1d2...dk*10n
ii) Redondeo: Se agrega 5*10
n(k+1)
a y y se efecta el corte.
21
(1) Funcin f : Es una aplicacin que asigna un resultado a los valores de entrada. Para efectos de este tema, existir en el campo real. En este caso, la funcin estar definida en un conjunto X de nmeros reales y con x X. La funcin ser continua en X si existe en cada nmero en X. (2) f(x): Es el resultado de aplicar la funcin f al valor de entrada x. (3) C(X): denota al conjunto de todas las funciones que son continuas en X.
22
(4) Cn (X): denota al conjunto de funciones que tienen n derivadas continuas en X. Cuando todas las derivadas en todos los rdenes existen, se denota C(X). Tambin se puede asociar a la idea de espacio vectorial orden n. (5) Se dice que p es raz de f si f (p) = 0.
2.2. (1)
pero f(m)(p) 0, entonces, se plantea que p es raz de f, con multiplicidad m. Cuando m = 1, la multiplicidad es simple. (2) Paridad de la raz. Sea f Cm, y los nmeros reales a, b. (a) (b) Si f(a) f(b) > 0, entonces f posee un nmero par de races en (a,b). Dicho nmero puede ser cero. Si f(a) f(b) < 0, entonces f posee un nmero impar de races en (a,b). Ejemplo 21: Sea f (x) = sen(x) 0.1x + 1, luego f (3) > 0 y f (4) < 0, por tanto, existe un nmero impar de races de f en el intervalo (3,4). (3) Teorema de Rolle: Se plantea en dos partes, dadas a continuacin: (a) Sea f C1 y p1 < p2 dos races de la funcin f. Luego la derivada f posee al menos una raz, ubicada entre p1 y p2.
23
(b)
anteriormente mencionados:
2 Ya que f (1) = e 3 < 0 , y f ( 2 ) = e 4 > 0
hay un nmero
f '( x ) = ex 1
La raz es simple porque f '' ( 0 ) = 1 0 . f no puede tener 3 races, ya que f (x) tendra 2 races. Pero esto no es cierto, segn la primera premisa.
24
Ya que el nmero de races (que es impar) no puede ser 3 o mayor, entonces f posee exactamente una raz simple en (1,2). Ya que lim f ( x ) = , f (0) = 1 < 0, existe un nmero impar de races x en ( ,0); pero ese nmero no puede ser 3 o mayor. Slo hay exactamente 1 raz negativa y es simple.
2 Ya que f ( 2 ) = e > 0 , tambin existe al menos una raz en el
2.3.
Bsqueda Incremental Es el proceso de dar valores a la variable independiente x para ver los
resultados (cambios de signo) de aplicar la funcin f. En este caso, se van asignando valores a la funcin f desde un lado de la variable en estudio, aumentndose gradualmente en un valor x. Si el valor de x es pequeo, tardar mucho, si el valor x es grande, se pueden dejar de determinar las races. La idea principal es: SUPONER UN VALOR DE x (LA RAZ x) EN (a,b) TAL
QUE
luego se calcula f (x0), f (x0 + x), f (x0 +2x),... Cuando se quiere mejorar en encuadramiento, se parte del ltimo valor antes del cambio de signo de f (x) y se disminuye en tamao del incremento
25
2.4.
Mtodos de Encuadramiento Estos mtodos suponen que se tiene al principio un intervalo inicial
[a0...b0], en el eje de la variable independiente, x, donde est ubicada la raz, f (x). Tienen una velocidad de convergencia baja (salvo el mtodo de Mller). Antes de empezar con este tipo de mtodos, es necesario estar seguros de que se conoce el intervalo inicial [a0...b0] que contiene la raz. Ubicacin del Intervalo inicial [a0...b0]: Especificar dos valores, a y b, con tal que a < b, y calcular sus imgenes f (a) y f (b). Si Q = f (a)f (b) es negativo (Q<0), entonces los puntos seleccionados representan el intervalo, si Q es positivo (Q>0) entonces f(a) y f(b) son ambos positivos o negativos y entonces el intervalo no est definido. Es de hacer notar que, previamente se han fijado dos valores de x que se han definido como valores lmite permisibles xmx (valor mximo permisible) y xmn (valor mnimo permisible). Por tanto: (1) Si Q > 0 y | f (a)| > | f (b)|, se define a = b y f(a) = f(b). Luego se evala Si de nuevo Q > 0, se repite el procedimiento para b xmx. Cuando se alcanza el lmite xmx sin lograr definir el valor de b, no hay raz en ese intervalo. Si Q < 0 el intervalo est definido con los valores actuales de a y b. (2) Si Q>0 y | f (a)| < | f (b)|, se define b = a y f(b) = f(a). Luego se evala a
26
Si de nuevo Q > 0, se repite el procedimiento para a xmn. Cuando se alcanza el lmite xmn sin lograr definir el valor de a, no hay raz en ese intervalo. Si Q < 0 el intervalo est definido con los valores actuales de a y b.
2.4.1. Mtodo del Intervalo Medio (Biseccin): Supngase que f es una funcin continua definida en el intervalo [a,b] con f(a) f(b)<0. De acuerdo al teorema de valor medio, existe un nmero p en (a,b) tal que f(p) = 0. Se supone, a fines de simplificar las cosas, que la raz es nica en el intervalo (a,b).
El mtodo consiste en dividir varias veces a la mitad los subintervalos [a,b], y en cada paso, localizar la mitad que contenga a p.
27
Si f(p1) = 0, entonces p = p1; de no ser as, f(p) tiene el mismo signo que f(a1) f(b1). Si f(p1) y f(a1) tienen el mismo signo, entonces p (p1,b1) y se toma a2 = p1 y b2 = b1. Si f(p1) y f(a1) tienen signos opuestos, entonces p (a1,p1) y se toma a2 = a1 y b2 = p1. Despus se vuelve a aplicar el proceso al intervalo [a2,b2]. Algoritmo del Mtodo de la Biseccin Sirve para obtener una solucin de f(x) = 0, cuando la funcin f es continua en el intervalo [a,b], donde f(a) y f(b) tienen signos opuestos.
ENTRADA: Extremos a,b; Tolerancia TOL; Nmero mximo de iteraciones, No. SALIDA: Solucin aproximada p, o mensaje de fracaso. Paso 1 Paso 2 Paso 3 Paso 4 Tome i = 1; FA = f(a). Mientras i No haga pasos 3 6. Tome p = a + (ba)/2; {Calcule pi} FP = f(p). Si FP = 0, o (ba)/2<TOL entonces SALIDA (p); {Procedimiento terminado satisfactoriamente} PARE. Paso 5 Paso 6 Paso 7 Tome i = i + 1 Si FAFP > 0 entonces tome a = p; {Calcule ai, bi} Si no, tome b = p. SALIDA (El mtodo fracas despus de No iteraciones, No =, No); {Procedimiento terminado sin xito} PARE.
an
1.0 1.0 1.25 1.25 1.3125 1.34375 1.359375 1.359375 1.36328125 1.36328125 1.364257813 1.364746094 1.364990234 1.365112305 1.36517334 1.365203857 1.365219116 1.365226746 1.365226746 1.365228653 1.365229607 1.365229607 1.365229845 1.365229964 1.365229964 1.365229994 1.365230009 1.365230009 1.365230013 1.365230013
pn
1.5 1.25 1.375 1.3125 1.34375 1.359375 1.3671875 1.36328125 1.365234375 1.364257813 1.364746094 1.364990234 1.365112305 1.36517334 1.365203857 1.365219116 1.365226746 1.36523056 1.365228653 1.365229607 1.365230083 1.365229845 1.365229964 1.365230024 1.365229994 1.365230009 1.365230016 1.365230013 1.365230015 1.365230014
bn
2.0 1.5 1.5 1.375 1.375 1.375 1.375 1.3671875 1.3671875 1.365234375 1.365234375 1.365234375 1.365234375 1.365234375 1.365234375 1.365234375 1.365234375 1.365234375 1.36523056 1.36523056 1.36523056 1.365230083 1.365230083 1.365230083 1.365230024 1.365230024 1.365230024 1.365230016 1.365230016 1.365230015
f(an)
-5 -5 -1.796875 -1.796875 -0.848388672 -0.350982666 -0.096408844 -0.096408844 -0.032149971 -0.032149971 -0.016046691 -0.007989263 -0.003959102 -0.001943659 -0.000935847 -0.000431919 -0.000179949 -5.39625E-05 -5.39625E-05 -2.24658E-05 -6.71741E-06 -6.71741E-06 -2.78031E-06 -8.11763E-07 -8.11763E-07 -3.19625E-07 -7.35561E-08 -7.35561E-08 -1.20389E-08 -1.20389E-08
f(pn)
2.375 -1.796875 0.162109375 -0.848388672 -0.350982666 -0.096408844 0.032355785 -0.032149971 7.20248E-05 -0.016046691 -0.007989263 -0.003959102 -0.001943659 -0.000935847 -0.000431919 -0.000179949 -5.39625E-05 9.03099E-06 -2.24658E-05 -6.71741E-06 1.15679E-06 -2.78031E-06 -8.11763E-07 1.72513E-07 -3.19625E-07 -7.35561E-08 4.94783E-08 -1.20389E-08 1.87197E-08 3.34043E-09
f(bn)
14 2.375 2.375 0.162109375 0.162109375 0.162109375 0.162109375 0.032355785 0.032355785 7.20248E-05 7.20248E-05 7.20248E-05 7.20248E-05 7.20248E-05 7.20248E-05 7.20248E-05 7.20248E-05 7.20248E-05 9.03099E-06 9.03099E-06 9.03099E-06 1.15679E-06 1.15679E-06 1.15679E-06 1.72513E-07 1.72513E-07 1.72513E-07 4.94783E-08 4.94783E-08 1.87197E-08
TOL = |pN-pN-1|
5.00000000E-01 2.50000000E-01 1.25000000E-01 6.25000000E-02 3.12500000E-02 1.56250000E-02 7.81250000E-03 3.90625000E-03 1.95312500E-03 9.76562500E-04 4.88281250E-04 2.44140625E-04 1.22070313E-04 6.10351563E-05 3.05175781E-05 1.52587891E-05 7.62939453E-06 3.81469727E-06 1.90734863E-06 9.53674316E-07 4.76837158E-07 2.38418579E-07 1.19209290E-07 5.96046448E-08 2.98023224E-08 1.49011612E-08 7.45058060E-09 3.72529030E-09 1.86264515E-09 9.31322575E-10
28
En general, los procedimientos de paro que se pueden aplicar (como los vistos en el paso 4 del algoritmo) a ste y a otros mtodos similares son los siguientes: Se selecciona una tolerancia > 0, y se genera p1, p2, ..., pN hasta que se satisfaga una de las siguientes condiciones:
pN pN 1 < ,
pN pN 1 pN
< ,
pN 0,
f ( pN ) <
Inconvenientes del mtodo: Converge lentamente (N puede volverse muy grande antes que |pN pN1| sea bastante pequeo) e inadvertidamente se puede desechar una buena aproximacin intermedia. Sin embargo, siempre converge en una solucin sirve para iniciar mtodos ms eficientes.
TEOREMA 2.4.11. Supngase que f C[a,b] y f(a)f(b)<0. El mtodo de biseccin que se usa en el algoritmo genera una sucesin {pn} que aproxima a un cero de p de f, tal que
pn p
Demostracin:
ba , 2n
n 1
bn an =
Y como pn =
1 (b a ) 2n 1
p ( an , bn ) .
29
pN p 1 ba ( bN aN ) = n 2 2
2.4.2. Mtodo de la FalsaPosicin (RegulaFalsi): ofrece una prueba para asegurar que la raz quede entre dos iteraciones sucesivas. Utiliza la frmula siguiente:
pn = pn 1
f ( pn 1 )[ pn 1 pn 2 ] f ( pn 1 ) f ( pn 2 )
Para ejecutar el mtodo de RegulaFalsi, se deben seguir los siguientes pasos: (1) Elegir dos aproximaciones iniciales p0 y p1, con f(p0)f(p1) < 0; la
aproximacin a la raz p2 ser la interseccin en la abscisa de la lnea que une a (p0, f(p0)) con (p1, f(p1)). (2) Calcular la siguiente aproximacin verificando el signo del producto
f(p2)f(p1): Si f(p2)f(p1) < 0 p3 el intervalo [p2,p1] encierra la raz, luego est en la interseccin de la lnea que une (p1, f(p1)) con (p2, f(p2)): Si f(p2)f(p1) > 0 p3 p0 = p1 f(p0), p1 = p2 f(p1)
el intervalo [p0,p2] encierra la raz, luego est en la interseccin de la lnea que une (p0, f(p0)) p0 = p0 f(p0), p1 = p2 f(p1)
210
(3)
p3 p3 y p1 para calcular p4. (4) Repetir el procedimiento (2)(3) hasta cumplir con la tolerancia
requerida.
Algoritmo del Mtodo de la Falsa Posicin Sirve para encontrar una solucin a f (x) = 0, dada una funcin continua f en el intervalo [p0,p1], donde f (p0) y f (p1) tienen signos opuestos.
ENTRADA: Aproximaciones iniciales p0, p1; Tolerancia TOL; Nmero mximo de iteraciones, No. SALIDA: Solucin aproximada p, o mensaje de fracaso.
Paso 1 Tome i = 2;
q0 = f (p0); q1 = f (p1).
Paso 2 Mientras i No haga pasos 37
211
Paso 3 Paso 4
Tome p = p1
q1 ( p1 p0 )
( q1 q0 )
{Calcule pi}
q = f (p).
Si qq1 < 0 entonces tome p0 = p1;
q 0 = q 1.
Tome p1 = p;
PARE.
2.4.3. Mtodo de la FalsaPosicin (RegulaFalsi) Acelerado: Es una versin del mtodo de la secante, ya que evala el punto que pasa por la cuerda entre dos puntos. Por otro lado, Curtis F. Gerald, en su libro Anlisis Numrico, Segunda Edicin, Editorial Alfaomega (1991), pgina 10, cita un MTODO DE
FALSA POSICIN MODIFICADA MODIFICADA),
(MTODO
DE LA INTERPOLACIN LINEAL
decir, es siempre la misma, se puede cambiar su imagen f (pi) por la mitad de su valor, es decir:
f ( pi )
f ( pi ) 2
= 0.5* f ( pi )
212
f ( pn 1 )[ pn 1 pn 2 ]
f ( pn 1 ) f ( pn 2 ) , con
lo que se puede acelerar la convergencia de este mtodo. Hay que ser cuidadoso, ya que no siempre se puede hacer esta sustitucin. La misma puede hacerse mientras el signo de la imagen de la raz siguiente sea distinta de la imagen de la posicin estancada.
2.4.4. Mtodo de Mller: Requiere tres aproximaciones iniciales, x0, x1 y x2, y determina la tercera aproximacin x3, considerando la interseccin del eje x con la parbola que pasa a travs de (x0, f (x0)), (x1, f (x1)), y (x2, f (x2)).
Calcular
Borrar
n
2 3 4 5 6 7 8 9 10 11 12
p n-2
1 1.571428571 1.705410822 1.727882728 1.731404866 1.731950853 1.732035344 1.732048415 1.732050437 1.73205075 1.732050799
p n-1
2 2 2 2 2 2 2 2 2 2 2
pn
1.571428571 1.705410822 1.727882728 1.731404866 1.731950853 1.732035344 1.732048415 1.732050437 1.73205075 1.732050799 1.732050806
f(p n-2 )
-4 -1.364431487 -0.2477451 -0.039339551 -0.006110673 -0.000945921 -0.000146349 -2.26406E-05 -3.50252E-06 -5.41841E-07 -8.38231E-08
f(p n-1 )
3 3 3 3 3 3 3 3 3 3 3
f(p n )
-1.364431487 -0.2477451 -0.039339551 -0.006110673 -0.000945921 -0.000146349 -2.26406E-05 -3.50252E-06 -5.41841E-07 -8.38231E-08 -1.29675E-08
TOL=|p n -p n-1 |
0.428571429 0.13398225 0.022471907 0.003522137 0.000545987 8.44911E-05 1.30715E-05 2.02218E-06 3.12832E-07 4.83953E-08 7.48678E-09
213
(x0, f (x0)), (x1, f (x1)), y (x2, f (x2)). Se pueden determinar las constantes a, b, y c a partir de las condiciones
f ( x0 ) = a ( x0 x2 ) + b ( x0 x2 ) + c
2
f ( x1 ) = a ( x1 x2 ) + b ( x1 x2 ) + c , y
2
f ( x2 ) = a 02 + b 0 + c = c
y queda entonces
c = f ( x2 ) ,
2
b=
( x0 x2 )
f ( x1 ) f ( x2 ) ( x1 x2 ) f ( x0 ) f ( x2 ) ( x0 x2 )( x1 x2 )( x0 x1 )
2
a=
( x1 x2 ) f ( x0 ) f ( x2 ) ( x0 x2 ) f ( x1 ) f ( x2 ) ( x0 x2 )( x1 x2 )( x0 x1 )
214
Cuando se quiere determinar x3, una raz de P, se aplica la frmula cuadrtica a P(x) = 0. Sin embargo, debido a los problemas de error de redondeo ocasionado por la sustraccin de nmeros casi iguales, se utilizar la frmula siguiente:
x3 = x2
2c b b + b 2 4ac b
= x2
2c b + signo ( b ) b 2 4ac
Una vez determinada x3, se reinicia el procedimiento usando x1, x2 y x3, en vez de x0, x1 y x2 para obtener la siguiente aproximacin, x4. El mtodo prosigue hasta que se logra una raz satisfactoria. Ya que en cada iteracin se
2 considera el discriminante = = b 4ac , se pueden aproximar races
complejas cuando = b24ac < 0. Algoritmo del Mtodo de Mller Sirve para obtener una solucin a f (x) = 0, dadas tres aproximaciones x0, x1, x 2:
ENTRADA: Aproximaciones iniciales x0, x1, x2; Tolerancia TOL; Nmero mximo de iteraciones, N0. SALIDA: Solucin aproximada p, o mensaje de falla.
Paso 1 Tome
h1 = x1 x0 ; h2 = x2 x1 ; f ( x1 ) f ( x0 ) ; h1 f ( x2 ) f ( x1 ) ; h2
1 = 2 =
215
d=
( 1 2 ) ( h1 + h2 ) ;
i = 3.
Paso 2 Mientras i No haga pasos 37. Paso 3
b = 2 + h2 d ;
D=
(b
Paso 4
Si
Paso 5
Tome
h=
2 f ( x2 ) E
p = x2 + h .
Paso 6 Si
x0 = x1 ; x1 = x2 ; x2 = p ; h1 = x1 x0 ; h2 = x2 x1 ;
1 =
( f ( x ) f ( x ))
1 0
h1
2 =
( f ( x ) f ( x ))
2 1
h2
216
d=
( 1 2 ) ( h1 + h2 ) ;
i = i + 1. Paso 8 SALIDA ( El mtodo fall despus de N0 iteraciones, N0 =, N0); {Procedimiento terminado sin xito}. PARE.