CAPÍTULO 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE INTRODUCCIÓN El objetivo de este capítulo es estudiar algunos métodos numéricos para hallar raíces reales de una ecuación no-lineal en una variable (sólo se estudiarán raíces complejas para ecuaciones polinómicas). En la siguiente definición formalizamos el concepto de raíz de una ecuación. Definición 2.1 Sea f: D → R, D ⊆ R , una función dada. Un número α ∈ D se dice una raíz (en D) de la ecuación f (x) = 0 , o un cero (en D) de la función f si f (α ) = 0 . ∇ Como veremos, los métodos numéricos que estudiaremos para encontrar una raíz α de una ecuación f (x) = 0 , generarán una sucesión {xn }n , n = 0,12 , ,... (Métodos iterativos) tal que lim xn = α . Cualquiera de tales métodos numéricos permitirá calcular los términos de la n→∞ sucesión {xn }n ; así que no se espera, en general, calcular lim xn . Por lo tanto, deberemos n→∞ disponer de algún criterio para escoger un término de la sucesión {xn }n , n = 0,12 , ,... como aproximación de la raíz buscada α . CRITERIOS DE APROXIMACIÓN Supongamos que la función f es continua en alguna vecindad de α que contiene a la sucesión {xn }n , n = 0,12 , ,... , y que la sucesión {xn }n es tal que lim xn = α . Entonces n→∞ lim f (xn ) = f (α ) = 0 y así, dado cualquier número positivo ε, existe N ∈ N n→∞ = {0,1,2,...} tal que para todo n ≥ N se tiene que f (xn ) < ε . Teniendo en cuenta lo anterior, dado un número ε > 0 adecuadamente pequeño, al cual llamaremos Tolerancia y que notaremos Tol, podríamos escoger como aproximación de la raíz α al término xN de la sucesión mencionada, donde N es el menor entero no-negativo que satisface i) f (xn ) < ε , ,...} tal que si Por otro lado, como lim xn = α significa que dado ε > 0 , existe N0 ∈ N = {0,12 n→∞ n ≥ N0 , entonces xn − α < ε , y esto implica que xN0 +1 − xN0 = xN0 +1 − α + α − xN0 ≤ xN0 +1 − α + xN0 − α < ε + ε = 2ε entonces también podríamos tomar como aproximación de la raíz α al término xN de la sucesión mencionada, donde N es el menor entero no-negativo tal que 34 MÉTODOS NUMÉRICOS __________________________________________________________________________________ ii) xn − xn −1 <ε También podríamos tomar como aproximación de la raíz α al término xN donde N es el menor entero no-negativo tal que x n − x n −1 < ε , si x n ≠ 0 iii) xn Pues bien, para una tolerancia ε > 0 previamente escogida, cualquiera de los tres criterios mencionados, se adoptará como criterio para obtener una aproximación de una raíz α . Ahora, en cuanto a los criterios de aproximación anteriores, es fácil ver que el hecho de que f (xN ) < ε o xN − xN−1 < ε no necesariamente indica que xN esté muy cerca de α, como puede apreciarse en la FIGURA 2.1 y en el ejemplo 2.1 siguientes. FIGURA 2.1 Ejemplo 2.1 Consideremos la ecuación f (x) = 0 donde f (x) = (x − 1) 10 . Es claro que α = 1 es una raíz de esta ecuación, y que la sucesión {xn }n , n = 1,2,... donde xn = 1 + 1 converge a n dicha raíz. Si tomamos como tolerancia ε = 10 −3 , al aplicar el criterio de aproximación i), se tiene que 1 f (xn ) < ε ⇔ 1 + − 1 n 10 = 1 n10 < 10 −3 ⇔ n10 > 10 3 ⇔ n ≥ 2 Si tomamos como aproximación de α al término x 2 = 1 + observamos que α - x 2 = 1 − 1 3 = de la sucesión mencionada, 2 2 1 3 1 no es menor que ε = 10 −3 ; realmente α − x 2 = ,y 2 2 2 es una distancia muy grande entre α y x 2 . Vea la FIGURA 2.2. Si usamos el segundo criterio con la misma tolerancia, debemos encontrar n tal que xn − x n − 1 < ε ⇔ 1 + 1 1 1 1 − < 10 −3 − 1 + = n n − 1 n n−1 Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 35 __________________________________________________________________________________ Resolviendo esta última desigualdad se obtiene que si n ≥ 33 , entonces xn − xn −1 < ε = 10 −3 , así que la aproximación de α obtenida, usando este criterio, sería x 33 = 1 + 1 1 . = 1030... , y la distancia α − x33 = no es menor que ε = 10 −3 . 33 33 Observe que para que α − xn < ε = 10 −3 , debe tomarse xn = x1001 = 1 + 1 . = 100099.. .. 1001 1 1 ( α − xn < ε ⇔ 1 − 1 + < 10 −3 ⇔ < 10 −3 ⇔ n > 10 3 ) ♦ n n FIGURA 2.2 Se sigue de lo anterior que cualquiera de los criterios i), ii), iii) puede no darnos una idea clara de la distancia real α − xn . Por otra parte, para garantizar que una sucesión, generada por un determinado método numérico, converge a la raíz buscada, la función f en cuestión deberá satisfacer ciertas condiciones; resulta que muchas veces aplicaremos el método sin chequear tales condiciones lo que nos conducirá, posiblemente, a una sucesión divergente, caso en el cual, un entero N para el cual se cumpla i), ii) o iii), puede no existir. Puede ocurrir también que, aún tratándose de una sucesión que converge a la raíz buscada, el entero N al que nos hemos referido sea muy grande, por ser "muy lenta" la convergencia de la sucesión. Por lo anterior, al aplicar cualquiera de los criterios, se hace necesario establecer siempre una cota para N, es decir, imponer un máximo al número de iteraciones. También, con frecuencia, tendremos que combinar dos o más de los criterios mencionados, o considerar algún otro criterio, al momento de obtener una aproximación de una raíz . Por lo general al aplicar un método numérico necesitaremos de una aproximación inicial de la raíz buscada o bien de un intervalo que contenga a dicha raíz. Esta información puede obtenerse dibujando la gráfica de la función f, si la ecuación en cuestión es f (x) = 0 ; las abscisas de los puntos de corte de dicha gráfica con el eje x son raíces reales de la 36 MÉTODOS NUMÉRICOS __________________________________________________________________________________ ecuación. Además, la gráfica de f nos permitirá tener alguna idea útil del comportamiento cualitativo de f en la vecindad de la raíz α (por ejemplo crecimiento y concavidad). Ahora bien, es posible que a través de un proceso puramente gráfico podamos obtener una aproximación para una raíz, que aunque limitada, sea útil para ciertos fines. Ejemplo 2.2 Supongamos que estamos interesados en encontrar todas las raíces de la ecuación 3 x2 − e x = 0 Una forma de iniciar la búsqueda de las raíces es determinando intervalos que contengan a dichas raíces. Para esto, graficamos f (x) = 3 x2 − e x (ver la FIGURA 2.3 siguiente). FIGURA 2.3 De acuerdo con la gráfica anterior se ve que la ecuación en consideración tiene por lo menos , ] , α 2 ∈[0,1] y α 3 ∈[3,4] . (Verifique analíticamente que la tres raíces reales α 1 ∈[−10 ecuación 3 x2 − e x = 0 tiene únicamente tres raíces reales). Ahora bien, puesto que 3 x 2 − e x = 0 ⇔ 3 x 2 = e x , otra forma de proceder es graficando las funciones f1(x) = 3 x2 y f2 (x) = e x , en un mismo plano coordenado (ver la FIGURA 2.4). En este caso las raíces buscadas son las abscisas de los puntos de intersección de las dos gráficas. Una forma de aproximar cada una de las raíces α 1, α 2 y α 3 , es dividiendo el intervalo donde cada una de éllas se encuentra, y hacer esto sucesivamente hasta lograr un subintervalo de longitud suficientemente pequeña y que contenga a dicha raíz. Por ejemplo, si empezamos con los intervalos dados y hacemos una tabla de valores para la función . ] f (x) = 3 x2 − e x con tamaño de paso h = 0.1 , obtenemos que α 1 ∈[−0.5,−0.4] , α 2 ∈[0.9,10 y α 3 ∈[3.7,3.8] . La TABLA 2.1 corresponde a la tabla de valores para la función Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 37 __________________________________________________________________________________ f (x) = 3 x2 − e x en el intervalo [0,1] con tamaño de paso h = 0.1 . Observe que como la . ] y f (0.9)f (10 . ) < 0 , entonces α 2 ∈[0.9,10 . ]. función f es continua en [0.9,10 FIGURA 2.4 f (x) = 3 x2 − e x x 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10 . . −10 . ... −107 . ... −110 . ... −107 . ... −101 −0.89... −0.74... −0.54... −0.30... −0.02... 0.28... TABLA 2.1 Instrucción en DERIVE: [ ] VECTOR( x , f (x) , x , a , b , h ): aproXima una tabla de valores de la función f (x) en el intervalo [a,b] , [ con tamaño de paso h. ] Para el ejemplo, aproXime la expresión VECTOR( x, 3 x2 − exp(x) , x, 0 , 1, 0.1 ). ◊ En situaciones como la del ejemplo anterior, donde se sabe de la existencia de una única raíz α para una ecuación f (x) = 0 en un determinado intervalo cerrado [a, b] , se puede usar 38 MÉTODOS NUMÉRICOS __________________________________________________________________________________ alguno de los siguientes métodos numéricos llamados cerrados para encontrar una aproximación de dicha raíz. 2.1 MÉTODOS CERRADOS Los métodos numéricos que en cada paso dan un intervalo cerrado donde se encuentra la raíz buscada, son llamados métodos cerrados. Aquí estudiaremos dos de tales métodos: el método de Bisección y el método de Posición Falsa. 2.1.1 Método de Bisección : Supongamos que f es una función continua en un intervalo [a,b] y f (a)f (b) < 0 . Entonces, por teorema del valor intermedio para funciones continuas, existe al menos un α ∈ (a, b) tal que f (α ) = 0 . Asumiremos en lo que sigue que la raíz en este intervalo es única (aunque el método también se puede aplicar cuando hay más de una raíz en (a, b) ). El método de Bisección aplicado a la función f para aproximar la raíz α ∈ [a, b] , consiste en dividir sucesivamente el intervalo [a, b] por la mitad, hasta que la longitud del subintervalo que contiene a la raíz α sea menor que alguna tolerancia especificada ε . Para empezar tomamos a 1 = a , b 1 = b y x 1 es el punto medio de x1 = [a1, b1 ] , b − a1 1 : primera aproximación de la raíz α. a1 + b1 ) = a1 + 1 ( 2 2 FIGURA 2.5 α − x1 ≤ Si f (x1 ) = 0 o b1 − a1 < ε , entonces α = x1 y el proceso termina. 2 b1 − a1 b − a = 2 2 o sea Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 39 __________________________________________________________________________________ Si f (a1 )f (x1 ) < 0 , entonces α ∈ (a1, x1 ) y tomamos a 2 = a1 , b 2 = x1 ; en caso contrario tomamos a 2 = x1 , b 2 = b1 . Ahora aplicamos nuevamente el proceso anterior al intervalo [a2 , b2 ] , así: x2 = b −a 1 (a2 + b2 ) = a2 + 2 2 2 : segunda aproximación de la raíz α 2 α − x2 ≤ b2 − a2 1 1 b−a b −a = (b1 − a1 ) = 1 2 1 = 2 2 22 2 2 En general, después de ( n − 1 )-pasos, la raíz α ∈ (an , bn ) y tomamos xn = 1 (a n + b n ) = a n + b n − a n 2 2 : n-ésima aproximación de la raíz α 0 ≤ α − xn ≤ b−a 1 (bn − an ) = n 2 2 b−a = 0 , entonces lim xn = α , es decir, la sucesión {xn }n converge a la raíz α; n→∞ 2n lo que significa que el método de Bisección siempre converge. Como lim n→∞ Dado ε > 0 , si b−a 2 n ≤ ε , entonces − k +1 x n − α ≤ ε . En particualr, si ε = 5 × 10 ( ) para un α − x N ≤ 5 × 10 − (k +1) , así que xN = α ∗ b−a ≤ ε , entonces 2n aproximará a la raíz α con una precisión de por lo cierto entero no-negativo k, y N es el menor entero positivo para el cual menos k cifras decimales exactas. Algoritmo 2.1 (Bisección) Para encontrar una aproximación α ∗ de una raíz α ∈(a, b) de una ecuación f (x) = 0 donde f es una función continua en [a, b] y f (a)f (b) < 0 : Entrada: f (x) ; los extremos a, b del intervalo; una tolerancia Tol, y un número máximo de iteraciones N . ∗ Salida: Una raíz aproximada α o un mensaje. 40 MÉTODOS NUMÉRICOS __________________________________________________________________________________ Paso 1: Tomar n = 1. Paso 2: Mientras que n ≤ N seguir los pasos 3-6: a+b b−a o c=a+ (calcular xn ) 2 2 b−a Paso 4: Si f (c) = 0 o < Tol , entonces salida: "Una raíz aproximada de la 2 ∗ ecuación dada es α = c ". Terminar. Paso 3: Tomar c = Paso 5: Tomar n = n + 1. Paso 6: Si f (a)f (c) < 0 , entonces tomar b = c , de lo contrario tomar a = c . Paso 7: Salida: "Se alcanzó el número máximo de iteraciones N pero no la tolerancia". Terminar. . ] para Para el ejemplo 2.2 anterior, usemos el método de Bisección en el intervalo [0.9,10 aproximar la raíz α 2 , con una precisión de por lo menos tres cifras decimales exactas. Debemos α 2 − xn ≤ encontrar b−a n = . − 0.9 10 n n = tal 0.1 n α 2 − xn ≤ 5 × 10 −4 ; que , basta encontrar n tal que 0.1 n pero como ≤ 5 × 10 −4 . La solución de 2 2 2 2 esta última desigualdad es n ≥ 8 , así que x8 aproximará a α 2 con por lo menos tres cifras decimales exactas. La TABLA 2.2 siguiente, muestra los cálculos para obtener x8 . n an bn 1 2 3 4 5 6 7 8 .9 .9 .9 .9 .90625 .909375 .909375 .909375 1.0 .95 .925 .9125 .9125 .9125 .9109375 Instrucción en DERIVE: .91015625 xn .95 .925 .9125 .90625 .909375 .9109375 .91015625 .909765625 TABLA 2.2 signo de f (an ) f (xn ) −1 −1 −1 −1 −1 −1 −1 −1 .121... 4.50...×10 −2 7.42...×10 −3 . ...×10 −2 −111 . ...×10 −3 −188 2.76...×10 −3 4.42...×10 −4 −7.19...×10 −4 Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 41 __________________________________________________________________________________ BISECCION( f (x), x, a , b, N ): aproXima las primeras N iteraciones en el método de Bisección aplicado a la función f (x) en el intervalo [a, b] . Para el ejemplo aproXime la expresión . , 8 ). ◊ BISECCION( 3 x 2 − exp(x), x, 0.9 , 10 De acuerdo con f (x 8 ) = −7.19... × 10 los −4 resultados de la TABLA 2.2, x 8 = .909765625 ≈ α 2 , . Observe que el menor valor de f (.91015625) = 4.42...×10 −4 y ocurrió en la iteración n = 7 . f (xn ) , n = 12 , ,3,...,8 y es Será que x7 es mejor aproximación de α 2 que x8 ? Si usamos el método de Bisección para buscar aproximaciones de α 1 ∈[−.5,−.4] y α 3 ∈[3.7, 3.8] , con la misma precisión de α 2 , obtenemos: α 1 ≈ −.458984375 = x 8 , f (x8 ) = 7.485...×10 −5 −3 α 3 ≈ 3.733203125 = x 8 , f (x8 ) = −2.408...×10 ♦ Algunas de las desventajas del método de Bisección con respecto a otros métodos son: No tiene en cuenta la magnitud de los valores de la función en las aproximaciones calculadas xn , sólo tiene en cuenta el signo de f (x n ) , lo que hace que una aproximación intermedia, mejor que la respuesta final, pase desapercibida. Aunque el método de Bisección siempre converge, su convergencia es muy lenta, comparada con la convergencia de otros métodos que estudiaremos, por lo que se sugiere escoger el intervalo inicial [a, b] tan pequeño como sea posible o usar el método de Bisección para obtener un buen punto de arranque para la aplicación de otro método. Una de las mayores ventajas que tiene el método de Bisección es que el error de b−a truncamiento, α − xn , se acota fácilmente (recuerde que α − xn ≤ n ). 2 Ejercicio 2.1 Use el método de Bisección para estimar la menor raíz positiva de la ecuación x − tanx = 0 , con una precisión de por lo menos 3 cifras decimales exactas, empezando con un intervalo [a, b] que contenga a dicha raíz y b − a = 0.1 . ♦ 2.1.2 Método de Posición Falsa (o Regula Falsi): Consideremos una función f continua en un intervalo [a, b] y tal que f (a)f (b) < 0 . El método de Posición Falsa, para encontrar una aproximación de una raíz α ∈ (a, b ) de f (x) = 0 , es similar al método de Bisección en el sentido de que se generan subintervalos [an , bn ] que encierran a la raíz α, pero esta vez xn no es el punto medio de [an , bn ] , sino el punto de intersección de la recta que pasa por los ( ) ( ) puntos an , f (an ) , bn , f (bn ) con el eje x (ver la FIGURA 2.6 siguiente). 42 MÉTODOS NUMÉRICOS __________________________________________________________________________________ Al reemplazar la curva por una recta se obtiene una "posición falsa" de la raíz, de aquí el nombre del método. También se le conoce como método de Interpolación Lineal Inversa. FIGURA 2.6 Empezamos tomando a1 = a , b1 = b y encontramos la primera aproximación de la raíz, x1 , como la intersección con el eje x , de la recta secante a la curva que pasa por los puntos a1, f (a1 ) , b1, f (b1 ) : ( ) ( ) x1 = a1 − (b1 − a1)f (a1) = a1f (b1 ) − b1f (a1 ) f (b1 ) − f (a1 ) f (b1 ) − f (a1 ) Si f (x1 ) = 0 , entonces α = x1 y el proceso termina. Si f (a1 )f (x1 ) < 0 entonces α ∈ (a1, x1 ) y tomamos a 2 = a1 , b 2 = x1 , de lo contrario tomamos a 2 = x1 , b 2 = b1 . Aplicamos nuevamente el proceso anterior al intervalo [a2 , b2 ] , es decir, hacemos x2 = a 2 − (b2 − a2 )f (a2 ) f (b 2 ) − f (a 2 ) Después de la ( n − 1)-ésima iteración, tenemos α ∈ (an , bn ) y tomamos xn = an − (bn − an )f (an ) = an f (bn ) − bn f (an ) f (bn ) − f (an ) f (bn ) − f (an ) Observe que en el denominador de la expresión anterior nunca se resta, pues f (an )f (bn ) < 0 . Este método tiene la desventaja, con respecto al método de Bisección, que la longitud del subintervalo que contiene a la raíz en general no tiende a cero, porque la mayoría de las gráficas de las funciones son cóncavas (hacia arriba o hacia abajo) en la vecindad de la raíz, lo que hace que uno de los extremos de los subintervalos se aproxime a la raíz, mientras el otro permanece fijo (ver la FIGURA 2.6 anterior). Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 43 __________________________________________________________________________________ Por lo anterior, la longitud del subintervalo [an , bn ] no puede tomarse como un criterio de aproximación a la raíz; se requiere una tolerancia en el valor de la función en la aproximación xn , es decir, f (xn ) < ε o xn − xn −1 < ε para alguna tolerancia ε > 0 previamente escogida. El procedimiento termina cuando se alcance esta tolerancia o un número máximo de iteraciones previamente establecido. Se puede demostrar, ver Ralston,1965, página 324, que este método converge siempre que f sea continua. Ejercicio 2.2 Escriba un algoritmo para el método de Regula Falsi. ♦ . ] , α 3 ∈[3.7,3.8] de la Ejemplo 2.3 Con respecto a las raíces α 1 ∈[−.5,−.4] , α 2 ∈[.9,10 ecuación 3 x2 − e x = 0 , si usamos el método de Regula Falsi con criterio de aproximación f (xn ) < ε = 5 × 10 −5 se obtienen los siguientes resultados α 1 ≈ −.458960329 = x 3 y f (x3 ) = −6.56...×10 −6 α 2 ≈ .910006353 = x3 y f (x3 ) = −3.62...×10 −6 α 3 ≈ 3.73307860 = x 4 y f (x4 ) = 8.24...×10 −6 Instrucción en DERIVE: REGULA( f (x), x, a , b, N ): aproXima las primeras N iteraciones en el método de Regula falsi aplicado a la función f (x) en el intervalo [a, b] . ◊ Compare los resultados anteriores con los obtenidos por el método de Bisección. ♦ Ejercicio 2.3 Aplique el método de Regula Falsi para estimar la menor raíz positiva α de la ecuación x − tanx = 0 , usando como criterio de aproximación f (xn ) < 5 × 10 −5 . Con cuántas cifras decimales exactas aproxima el valor obtenido xn a α ? ♦ 2.2 MÉTODOS ABIERTOS A diferencia de los métodos cerrados que requieren de un intervalo que encierre la raíz buscada, los métodos abiertos que se verán requieren de un solo valor o dos valores iniciales (de arranque) que no necesariamente encierran dicha raíz; ésto hace que algunas veces las sucesiones generadas por estos métodos sean divergentes o se alejen de la raíz de interés (vayan probablemente a otra raíz), pero tienen la ventaja que cuando convergen lo hacen "más rápidamente" que las sucesiones generadas por los métodos cerrados. 2.2.1 Método de Punto Fijo: Dada una ecuación f (x ) = 0 , podemos transformarla, de alguna manera, en otra equivalente (al menos localmente) del tipo x = g(x ) para alguna 44 MÉTODOS NUMÉRICOS __________________________________________________________________________________ función g. En este caso se tiene que: α es raíz de f (x ) = 0 ⇔ f (α ) = 0 ⇔ α = g(α ) ⇔ α es raíz de x = g(x ) . Definición 2.2 Un número α tal que α = g(α ) se dice un punto fijo de la función g. ∇ Cuándo una función g tiene un punto fijo, y si lo tiene, cómo encontrarlo? El siguiente teorema da respuesta parcial (condiciones suficientes) a las preguntas formuladas antes. Teorema 2.1 (de punto fijo) Si g es una función continua en [a, b] y g(x) ∈[a, b] para todo x ∈[a, b] , entonces g tiene por lo menos un punto fijo en [a, b] . Si además, g′(x) existe para todo x ∈ (a, b) y g′(x) ≤ K < 1 para todo x ∈ (a, b) , K constante , entonces g tiene un único punto fijo α ∈[a, b] y la sucesión {xn }n definida mediante la fórmula de iteración xn = g(xn −1 ) , n = 12 , ,3,... converge a α ( lim x n = α ) cualquiera sea x0 ∈[a, b] , y se tienen las siguientes cotas para n→∞ el error de truncamiento, α − xn : i) α − x n ≤ K n Max {x 0 − a, b − x 0 }, para cada n ≥ 0 , ii) α − xn ≤ iii) α − x n Kn x 1 − x 0 , para cada n ≥ 0, 1− K K ≤ x n − x n−1 , para cada n ≥ 1 . 1− K Ilustración: FIGURA 2.7 Demostración: Existencia: Si g(a) = a o g(b) = b , entonces a o b es un punto fijo de g. Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 45 __________________________________________________________________________________ Supongamos a < g(a) y b > g(b) y sea h(x) = g(x) − x . Entonces h es continua en [a, b] , h(a) = g(a) − a > 0, h(b) = g(b) − b < 0 , por tanto (teorema del valor intermedio) existe por lo menos un α ∈ (a, b) tal que h(α ) = 0 , ésto es, α = g(α ) . Unicidad: Supongamos que g′(x) ≤ K < 1 para toda x ∈ (a, b) y alguna constante K, y sean α y β puntos fijos distintos de g en [a, b] . Entonces α −β = g(α ) − g(β) = g′(ξ )(α − β) = g′(ξ) α − β ≤K α −β < α −β para algún ξ ∈ (α, β) , lo cual es un absurdo, así que α = β y entonces el punto fijo en [a, b] , que existe según la primera parte, es único. , ,3... y cotas para Convergencia de la sucesión {xn }n con xn = g(xn −1 ), n = 12 α − xn : Sea x0 ∈[a, b] cualquiera. Entonces En = α − xn = g(α ) − g(xn −1 ) = g′(γ ) α − xn −1 ≤ KEn −1, n = 12 , ,... (2.1) para algún γ entre α y xn−1 . Procediendo inductivamente sobre n, se tiene que 0 ≤ En ≤ KEn −1 ≤ K 2En − 2 ≤ .... ≤ K nE0 , con E 0 = α − x0 (2.2) y como K n → 0 cuando n → +∞ , pues 0 ≤ K < 1 , entonces En = α − xn → 0 cuando n → +∞ , es decir, lim xn = α . n→∞ De la relación (2.2), se tiene que i) En = α − xn ≤ K n α − x 0 ≤ K n Max {x 0 − a, b − x 0 } , ya que α ∈[a, b] . De otro lado α − x0 = α − x1 + x1 − x0 ≤ α − x1 + x1 − x0 ≤ K α − x0 + x1 − x0 así que (1 − K ) α − x0 ≤ x1 − x0 y como 0 ≤ K < 1 , entonces α − x0 ≤ 1 x1 − x0 1− K Nuevamente, de (2.2) α − xn ≤ K n α − x 0 y entonces multiplicando ambos miembros de (2.3) por K n , obtenemos (2.3) 46 MÉTODOS NUMÉRICOS __________________________________________________________________________________ α − xn ≤ K n α − x 0 ≤ Kn x1 − x 0 1− K así que ii) α − xn ≤ Kn x1 − x0 , n = 12 , ,... 1− K La demostración de la parte iii) se deja como ejercicio. ∇ El método de Punto Fijo para encontrar una raíz α de la ecuación x = g( x) , consiste en generar la sucesión {xn }n mediante la fórmula de iteración xn = g( xn −1 ) , n = 1,2,... con x0 dado. La función g se dice una función de iteración de punto fijo. Nota: Observe, a partir de la cota de error dada en el teorema 2.1, ii), que para 0 ≤ K < 1 , entre más pequeña sea K, es decir, entre más pequeña sea g′( x) , x ∈ ( a,b) , "más rápida" será la convergencia de la sucesión {xn }n a α . La convergencia puede ser muy lenta si K está cerca de 1. ∗ Algoritmo 2.2 (Punto Fijo) Para encontrar una aproximación α de un punto fijo α de una función g, dada una aproximación inicial x0 : Entrada: g(x); una aproximación inicial x0 ; una tolerancia Tol, y un número máximo de iteraciones N . ∗ Salida: Un punto fijo aproximado α o un mensaje. Paso 1: Tomar n = 1. Paso 2: Mientras que n ≤ N seguir los pasos 3-6: Paso 3: Tomar c = g(x0 ) (calcular xn ). Paso 4: Si c − x0 < Tol o c − x0 < Tol c , entonces salida: "Un punto fijo aproximado de la función dada es α ∗ = c ". Terminar. Paso 5: Tomar n = n + 1. Paso 6: Tomar x 0 = c (redefinir x0 ). Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 47 __________________________________________________________________________________ Paso 7 : Salida "Se alcanzó el número máximo de iteraciones N pero no la tolerancia". Terminar. Las siguientes gráficas muestran algunas formas de convergencia o divergencia de la sucesión , ,... {xn }n , donde xn = g(xn−1), n = 12 FIGURA 2.8.a Convergencia. (La sucesión no es monótona) FIGURA 2.8.c Divergencia. No satisface las hipótesis del teorema de Punto Fijo. FIGURA 2.8.b Convergencia. (La sucesión es monótona) FIGURA 2.8.d Convergencia (dependiendo del punto inicial ). No satisface las hipótesis del teorema de Punto Fijo. Hay situaciones en las que no se satisfacen las hipótesis del teorema de Punto Fijo y sin embargo hay convergencia, es decir, el teorema es de condiciones suficientes no necesarias. Ejemplo 2.4 Para la ecuación 3 x2 − e x = 0 sabemos que tiene tres raíces reales . ] y α 3 ∈[3.7,3.8]. Estimemos α 2 usando el método de iteración α 1 ∈[−.5,−.4] , α 2 ∈[.9,10 de Punto Fijo. 48 MÉTODOS NUMÉRICOS __________________________________________________________________________________ Empezamos transformando el problema f (x ) = 0 en otro equivalente del tipo x = g(x ) para alguna función g: Como ex ex ⇔ x = ± 3x − e = 0 ⇔ x = 3 3 2 x entonces g1(x) = 2 1 3 x 2 e 1 2 x e2 , si x ≥ 0 x = 3 ⇔ x 2 e x = − , si x ≤ 0 3 es una función de iteración. Como 3 x2 − e x = 0 ⇔ x = entonces g2 ( x) = ex , x≠0 3x ex , x ≠ 0 , también es una función de iteración. 3x Como ( ) 3x2 − e x = 0 ⇔ e x = 3x 2 ⇔ x = ln 3x 2 , x ≠ 0 ( ) entonces g3 (x) = ln 3x 2 , x ≠ 0 , es otra función de iteración. Como 3x 2 − e x = 0 ⇔ x = x − entonces g4 (x) = 3x 2 − e x 6x − e x 3 x 2 − xe x + e x , 6x − e x ≠ 0 ⇔ x = 3 x 2 − xe x + e x 6x − e x , 6x − e x ≠ 0 , 6 x − e x ≠ 0 , es una función de iteración (la función de 6x − e iteración del método de Newton-Raphson) . x Como 3 x2 − e x = 0 ⇔ x = 3 x2 + x − e x entonces g5 (x) = 3 x 2 + x − e x , es también una función de iteración. Si escogemos la función de iteración g1(x) = g1 es continua en . ]; [.9,10 . ] , y como creciente en [.9,10 g1′ (x) = 1 2 3 1 3 x e2 x . ] , vemos que: e 2 y el intervalo [.9,10 . ], así que g1 es > 0 para todo x ∈[.9,10 Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 49 __________________________________________________________________________________ g1(.9 ) = .9 1 . ] , g1(10 . )= e e 2 = .905... ∈[.9,10 3 3 1 1.0 2 . ] = .951... ∈[.9,10 . ] para todo x ∈[.9,10 . ] . Luego g1 tiene por lo menos un punto fijo en entonces g1(x) ∈[.9,10 . ]. el intervalo [.9,10 Ahora, g1′′ (x ) = 1 4 3 x e 2 > 0 para todo x ∈ [.9,1.0] . ] (la gráfica de g1 es cóncava hacia arriba así que g1′ es creciente en el intervalo [.9,10 . ] ), y como para x ∈[.9,10 g1′ (.9 ) = 1 2 3 e.45 = .452... , . )= g1′ (10 1 2 3 e.5 = .475... entonces g1′ (x ) ≤ .48 = K < 1 para todo x ∈ (.9,1.0) . ] , y cualquiera sea x0 ∈[.9,10 . ] Luego g1 tiene un único punto fijo α 2 en el intervalo [.9,10 la sucesión {xn }n con xn = g1( xn −1 ) = 1 xn 1 − e 2 , , ,3,... n = 12 3 converge a α 2 , es decir, lim xn = α 2 , y se tienen además las cotas para el error de n→∞ truncamiento, α 2 − xn , dadas en el teorema 2.1. . ] Cuántas iteraciones n serán necesarias para que xn aproxime al punto fijo α 2 ∈[.9,10 con por lo menos tres cifras decimales exactas ? Como sabemos que α 2 − xn ≤ K n Max {x 0 − a , b − x 0 } , basta resolver para n la desigualdad K n Max {x 0 − a, b − x0 } ≤ 5 × 10 −4 . ] y Tomando K =.48 y x0 =.95 ( observe que x 0 =.95 es el punto medio del intervalo [.9,10 es el valor que minimiza la expresión Max {x0 − a, b − x0 } ), obtenemos . −.95} = .05 Max {x0 − a, b − x0 } = Max { .95 −.9, 10 y entonces debemos resolver la desigualdad 50 MÉTODOS NUMÉRICOS __________________________________________________________________________________ K n Max {x 0 − a , b − x 0 } = (.48) (.05) ≤ 5 × 10 −4 n La solución de esta desigualdad es n≥ ( ln 10 −2 ) = 6.27... ln(.48) Luego para n ≥ 7 , se tiene que xn aproximará a α 2 con una precisión de por lo menos tres cifras decimales exactas. La gráfica de g1(x) = 1 3 x 2 e se muestra en la FIGURA 2.9, y los valores calculados usando el método de Punto Fijo con la función de iteración g1(x) = terminando en x7 ≈ α 2 , se muestran en la TABLA 2.3. FIGURA 2.9 TABLA 2.3 N xn 0 1 2 3 4 5 6 7 .95 .9283874 .9184090 .9138383 .9117522 .9108017 .9103690 .9101720 1 3 x e 2 , iniciando con x0 = .95 y Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 51 __________________________________________________________________________________ Instrucción en DERIVE: PUNTO_FIJO( g(x), x, x0 , N ): aproXima las primeras N iteraciones en el método de Punto Fijo aplicado a la función g(x) con aproximación inicial x0 . Para el ejemplo aproXime la expresión PUNTO_FIJO( x exp , x, 0.95 , 7 ). ◊ 2 3 1 De acuerdo con los resultados de la TABLA 2.3, α 2 ≈ .9101720 = x7 . ♦ Observe, en la FIGURA 2.9, que no existe intervalo [a, b] que contenga a α 3 (que es punto fijo de g1 ) donde se satisfagan todas las hipótesis del teorema de Punto Fijo para la función g1 . Para esta función de iteración g1 el método de Punto Fijo no converge a α 3 . Si tomamos la función de iteración g2 (x) = ex , x ≠ 0 , cuya gráfica se muestra en la FIGURA 3x 2.10 siguiente, tenemos: FIGURA 2.10 g2 es continua en [.9,10 . ] ; g′2 (x) = . ] , y como decreciente en [.9,10 3 xe x − 3 e x 9 x2 = e x (x − 1) 3 x2 . ] , así que g2 es ≤ 0 si x ∈[.9,10 . ] , g2 (10 . ) = .90... ∈[.9,10 . ] g2 (.9) =.91... ∈[.9,10 . ] para todo x ∈[.9,10 . ] , así que g2 tiene por lo menos un punto fijo en entonces g2 (x) ∈[.9,10 . ]. el intervalo [.9,10 52 MÉTODOS NUMÉRICOS __________________________________________________________________________________ Ahora, (e (x − 1) + e )3x g′′ (x) = x x 2 2 − e x (x − 1)6 x 9 x4 = x 2 e x − 2xe x + 2e x 3x 3 = ( ) e x x 2 − 2x + 2 3x 3 y como ( ) x 2 − 2x + 2 = x 2 − 2x + 1 + 1 > 0 para todo x ∈ R entonces g′′2 (x) > 0 ⇔ x > 0 . . ] , y como Por tanto g′2 es creciente en [.9,10 . )=0 g′2 (.9) = −.10... , g′2 (10 entonces g′2 (x ) ≤ .11 = K < 1 para todo x ∈ (.9,1.0 ) . ] , y la sucesión {xn } con En consecuencia g2 tiene un único punto fijo α 2 ∈[.9,10 n ( ) x n = g 2 x n −1 = x e n −1 , n = 1,2,3,... 3 x n−1 . ] , y se tienen además cotas para el error de converge a α 2 cualquiera sea x0 ∈[.9,10 truncamiento α 2 − xn . Los valores obtenidos usando la función de iteración g2 con punto inicial x 0 = .95 y criterio de aproximación xn − xn −1 < 5 × 10 −5 , se muestran en la TABLA 2.4 siguiente. n 0 1 2 3 4 xn xn − xn −1 .95 .9072665 4.27335 × 10 −2 .9102584 2.9919 × 10 −3 .9099850 2.734 × 10 −4 .9100096 2.46 × 10 −5 TABLA 2.4 De acuerdo con los resultados de la TABLA 2.4, α 2 ≈ .9100096 = x4 . analice con cuántas cifras decimales exactas aproxima x4 a α 2 ? ♦ Será que la función g2 (x) = ex nos sirve para determinar α 3 ∈[3.7,3.8] ? 3x Como ejercicio, Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 53 __________________________________________________________________________________ Veamos: g2 es continua en [3.7,3.8] , g2 es creciente en [3.7,3.8] y como g2 (3.7 ) = 3.6... ∉ [3.7,3.8] , g 2 (3.8 ) ∉ [3.7,3.8], entonces no se satisface la condición g2 (x) ∈[3.7,3.8] para todo x ∈[3.7,3.8] . Existirá algún intervalo [a, b] que contenga a la raíz α 3 donde se satisfagan todas las hipótesis del teorema de Punto Fijo para la función g2 ? Observe, a partir de la gráfica de g2 , que no existe intervalo [a, b] con α 3 ∈[a, b] tal que g2′ (x) ≤ K < 1 para todo x ∈[a, b] . Como g′2 es creciente en [3.7,3.8] , g′2 (3.7) = 2.65..., g′2 (3.8) = 2.88..., entonces g′2 (x ) > 1 para todo x ∈[3.7,3.8] . Luego no existe intervalo [a, b] que contenga a la raíz α 3 donde se satisfagan las hipótesis del teorema de Punto Fijo para la función g2 . . ... y g′2 (−.4) = −195 . ... , Por otro lado, como g′2 es decreciente en [−.5,−.4] , g′2 (−.5) = −121 entonces g2 tampoco satisface las hipótesis del teorema de Punto Fijo en algún intervalo que contenga a α 1 . ♦ Ejercicio 2.4 Use el método de iteración de Punto Fijo, con alguna de las funciones de iteración dadas anteriormente, para encontrar estimaciones de las raíces α 1 y α 3 de la ecuación 3 x2 − e x = 0 , usando como criterio de aproximación xn − xn −1 < 5 × 10 −5 ♦ Ejemplo 2.5 Usemos el método iterativo de Punto Fijo para encontrar la menor raíz positiva de la ecuación x − tanx = 0 . Como x − tanx = 0 ⇔ x = tanx , empezamos graficando, en un mismo plano coordenado, las funciones f1(x) = x y f2 (x) = tanx (ver la FIGURA 2.11). π 3π De acuerdo con la FIGURA 2.11, la menor raíz positiva α ∈ , , y a partir de una tabla 2 2 de valores para f (x ) = x − tanx , por ejemplo en el intervalo [4,4.7] con tamaño de paso h = .1 , puede verse que α ∈[4.4,4.5] (cuando utilice una calculadora, use el modo radianes para los cálculos). Una primera función de iteración de Punto Fijo (que salta a la vista) es g(x ) = tanx (ya que x − tanx = 0 ⇔ x = tanx ), pero es claro que para esta función g no existe intervalo [a, b] que 54 MÉTODOS NUMÉRICOS __________________________________________________________________________________ contenga la raíz α donde se satisfagan todas las hipótesis del teorema de Punto Fijo, pues g′(α ) >> 1 (observe la FIGURA 2.11). FIGURA 2.11 Si aplicamos el método de Punto Fijo con la función de iteración g(x ) = tanx y punto inicial x 0 = 4.4 , se obtienen en las cinco primeras iteraciones los resultados que se muestran en la TABLA 2.5 siguiente. n xn 0 1 2 4.4 3.096324 − 4.529982 × 10 −2 3 − 4.533083 × 10 −2 4 − 4.536191 × 10 −2 5 −4.539305 × 10 −2 TABLA 2.5 Observando la TABLA 2.5 se concluye que no hay convergencia a la raíz buscada. Si empezamos con x0 = 4.5 , se obtienen los resultados que se muestran en la TABLA 2.6, donde se ve claramente que tampoco hay convergencia a la raíz buscada. Cuál otra función de iteración podríamos construir? Observando la gráfica de la función tangente (vea la FIGURA 2.11), y teniendo en cuenta la relación entre la gráfica de esta función y la de su inversa, se ve claramente que una función Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 55 __________________________________________________________________________________ de iteración de punto fijo, apropiada para determinar α, es la que se obtiene por la vía de la función inversa. Para obtener tal función de iteración g(x) procedemos como sigue: n 0 1 2 3 4 5 xn 4.5 4.637332 13.29819 .8982038 1.255520 3.066028 TABLA 2.6 Puesto que tanx = tan(x − π ) , entonces π 3π <x< y x = tanx 2 2 π 3π <x< y x = tan(x − π ) 2 2 π π ⇔ − < x−π< y x = tan(x − π ) 2 2 π π ⇔ − < x−π< y tan −1x = x − π 2 2 π 3π ⇔ <x< y x = π + tan −1x 2 2 ⇔ Así que podemos tomar como función de iteración g(x) = π + tan −1x . La gráfica de y = π + tan −1x se muestra en la FIGURA 2.12 siguiente. FIGURA 2.12 Veamos que g(x) = π + tan −1x satisface todas las hipótesis del teorema de Punto Fijo en el intervalo [4.4,4.5] : 56 MÉTODOS NUMÉRICOS __________________________________________________________________________________ g es continua en [4.4,4.5] ; g′(x) = 1 > 0 para todo x ∈ R , así que g es creciente en 1 + x2 [4.4,4.5] , y como g(4.4) = 4.48... y g(4.5) = 4.49... , entonces g [4.4,4.5] ⊆ [4.4,4.5] . ( ) Ahora, g′ es decreciente en [4.4,4.5] (a medida que x aumenta g′(x) disminuye), y como g′(4.4) = .049... y g′(4.5) = .047... , entonces g′(x) ≤ .05 = K < 1 para todo x ∈ (4.4,4.5) . Por lo tanto g tiene un único punto fijo α ∈[4.4,4.5] , y la sucesión {xn }n con xn = π + tan −1xn −1, n = 1,2,... converge a α cualquiera sea x0 ∈[4.4,4.5] , y se tienen además, las cotas para el error de truncamiento α − xn , dadas en el teorema 2.1. La convergencia debe ser "rápida" pues K es pequeña. Como ejercicio, encuentre cuántas iteraciones n serán necesarias para que xn aproxime a α con por lo menos 4 cifras decimales exactas, tomando [a, b] = [4.4,4.5] , x0 = 4.45 y K = .05 ? La TABLA 2.7 siguiente, muestra los cálculos de las iteraciones para g(x) = π + tan −1x con punto inicial x 0 = 4.45 y criterio de aproximación xn − xn −1 < 5 × 10 −5 . n 0 1 2 3 4 xn 4.45 4.491341 4.493311 4.493404 4.493409 TABLA 2.7 xn − xn −1 .041341 . × 10 −3 197 9.3 × 10 −5 5.0 × 10 −6 De acuerdo con los resultados de la TABLA 2.7, α ≈ 4.493409 = x 4 . ♦ 2.2.2 Método de Newton-Raphson: Como veremos más adelante, el método de NewtonRaphson se aplicará para hallar raíces simples de una ecuación f (x) = 0 . Antes de ver el método de Newton-Raphson, veamos la siguiente definición sobre la multiplicidad de una raíz de una ecuación. Definición 2.3 Dada una ecuación f (x) = 0 . Un número α se dice una raíz de multiplicidad m (m un entero positivo) de la ecuación f (x) = 0 , si f (α ) = 0 , y Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 57 __________________________________________________________________________________ para x ≠ α, f (x) = (x − α ) h(x) con lim h(x) ≠ 0 m x→ α Si m = 1, la raíz se dice simple. ∇ El siguiente teorema relaciona la multiplicidad de una raíz de una ecuación f (x) = 0 con las derivadas de la función f . Teorema 2.2 Supongamos que la función f tiene su dos primeras derivadas continuas en un intervalo [a, b] que contiene a un número α . Entonces α es una raíz simple de la ecuación f (x) = 0 si y sólo si f (α ) = 0 y f ′(α) ≠ 0 . Demostración: Supongamos que α es una raíz simple de la ecuación f (x) = 0 . Entonces de acuerdo con la definición 2.3, f (α ) = 0 , y para x ≠ α , f (x) = (x − α )h(x) con lim h(x) ≠ 0 . x→ α Derivando a ambos lados de la expresión anterior con respecto a x, obtenemos f ′(x) = h(x) + (x − α )h′(x) Como lim f ′(x) = lim h(x) ≠ 0 x→ α x→ α y f ′ es continua en α (por hipótesis), entonces lim f ′(x) = f ′(α ) ≠ 0 . x→ α Recíprocamente, supongamos que f (α ) = 0 y f ′(α) ≠ 0 . Haciendo un desarrollo en serie de Taylor para f alrededor de α, obtenemos (x − α ) f (x) = f (α ) + f ′(α )(x − α ) + f ′′(ξ) ! 2! 0 (x − α) = (x − α )f ′(α ) + f ′′(ξ ) 2! 2 para algún ξ entre x y α . Llamando h(x) = f ′(α ) + f ′′(ξ) (x − α ) 2! tenemos que, para x ≠ α , f (x) = (x − α )h(x) con lim h(x) = f ′(α ) ≠ 0 . ∇ x→ α En general, se tiene el siguiente teorema cuya demostración es completamente análoga a la del teorema 2.2 anterior. 58 MÉTODOS NUMÉRICOS __________________________________________________________________________________ Teorema 2.3 Supongamos que la función f tiene sus primeras m + 1 derivadas continuas en un intervalo [a, b] que contiene a un número α. Entonces α es una raíz de multiplicidad m de la ecuación f (x) = 0 si y sólo si 0 = f (α ) = f ′(α ) = f ′′(α ) =... = f ( m −1) (α) m y f ( ) (α ) ≠ 0 . ∇ Volviendo al método de Newton-Raphson, la hipótesis general para aplicar este método para hallar una raíz α ∈ (a, b ) de una ecuación f (x ) = 0 , es que la función f tenga sus primeras dos derivadas continuas en el intervalo [a, b] y f ′(x) ≠ 0 para todo x ∈ [a, b] . De acuerdo con la hipótesis general y el teorema 2.2, como f ′(α) ≠ 0 , entonces la raíz α es simple, es decir, de multiplicidad 1. Las siguientes gráficas muestran diversas posibilidades de multiplicidad para una raíz α de una ecuación f (x) = 0 : FIGURA 2.13.a (Raíz simple) FIGURA 2.13.b (Raíz múltiple, par) FIGURA 2.13.c (Raíz múltiple, impar) Hay varias formas de presentar el método de Newton-Raphson, dos de ellas son: Presentación gráfica: Supongamos que f satisface la hipótesis general en un intervalo [a, b] y escojamos x0 ∈[a, b] "cercano" a la raíz α . La primera aproximación x1 , en el método de Newton-Raphson, es el punto en el cual la ( ) recta L, tangente a la gráfica de f en el punto x 0 , f (x0 ) , corta al eje x (ver la FIGURA 2.14). De acuerdo con ésto, se tiene que f ′( x 0 ) = f (x0 ) − 0 x 0 − x1 y entonces x1 = x 0 − En general, para cada n ≥ 1, xn = xn −1 − f (x 0 ) f ′ (x 0 ) f ( x n −1 ) f ′ ( x n −1 ) ( : abscisa del punto de intersección de la ) recta tangente a la gráfica de f en el punto xn −1, f (xn −1 ) , con el eje x. Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 59 __________________________________________________________________________________ FIGURA 2.14 Presentación usando polinomios de Taylor: Supongamos que f satisface la hipótesis ∗ general en un intervalo [a, b], y sea α ∗ ∈ [a, b] con α − α "pequeño". Consideremos el polinomio de Taylor de primer grado para la función f alrededor de α ∗ : ( ) + f ′(α )(x − α ) f (x) = f α ∗ ∗ ∗ (x − α ) + f ′′(ξ) ∗ ( ) + f ′(α )(α − α ) 0 = f (α ) = f α ∗ ∗ (α − α ) Suponiendo que el término f ′′(ξ) ∗ 2! obtenemos con ξ entre x y α ∗ 2! En particular para x = α , tenemos ∗ 2 (α − α ) + f ′′(ξ) ∗ 2! es despreciable (recuerde que f ′′ es acotada), ( ) ( )( y despejando α , llegamos a ∗ α≈α − y α − , ξ entre α y α ∗ 2 0 ≈ f α∗ + f ′ α∗ α − α∗ ∗ 2 ) ( ) f ′(α ) f α∗ ∗ ( ) es, por lo general, una mejor aproximación de α que α f ′(α ) f α∗ ∗ ∗ . El método de Newton-Raphson para encontrar una raíz α de una ecuación f (x) = 0 , consiste en generar la sucesión {xn }n definida mediante la fórmula de iteración 60 MÉTODOS NUMÉRICOS __________________________________________________________________________________ x n = x n −1 − f ( x n −1 ) f ′(xn −1 ) , n = 12 , ,... y escogiendo x0 "cercano" a α . De acuerdo con la fórmula anterior, se ve claramente que el método de Newton-Raphson es un caso especial del método de iteración de Punto Fijo, cuando se toma como función de iteración la función f (x) g(x) = x − f ′(x) La escogencia del punto inicial x0 es muy importante para la convergencia del método de Newton-Raphson. Como ejemplo, consideremos la función f (x) = en α = 7 . . Como = 175 4 f ′(x) = 4(x − 2) − (4 x − 7) (x − 2) 2 = −1 (x − 2) 2 , f ′′(x) = 4x − 7 , que tiene un cero x−2 2 (x − 2)3 entonces f es continuamente diferenciable dos veces en todo intervalo que no contenga a x=2. La sucesión generada por el método de Newton-Raphson para la función dada es 4 x n −1 − 7 xn −1 − 2 x n = x n −1 − , x n −1 ≠ 2 −1 (xn−1 − 2)2 La gráfica de f (x) = 4x − 7 es como se muestra en la FIGURA 2.15. x−2 Se puede ver que si en la fórmula para xn (en el método de Newton-Raphson) usamos . , obtenemos x1 = 2.0 y el método no puede continuarse. x 0 = 15 . ,2) el método converge. Qué pasa si x0 ∈ (0,15 . )? Si x0 ∈ (15 En las TABLAS 2.8 y 2.9, se muestran los resultados obtenidos al aplicar el método de 4x − 7 tomando como puntos iniciales x 0 = 165 Newton-Raphson a la función f (x) = y . x−2 −5 o x 0 = 185 . , respectivamente, y usando como criterio de aproximación f (xn ) < 5 × 10 xn − xn −1 < 5 × 10 −5 . Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 61 __________________________________________________________________________________ FIGURA 2.15 n xn 0 1 2 3 4 . 165 . 179 . 17564 . 1750163 175 . f (xn ) . ... 114 −.761... −.105... −2.60...×10 −3 0 TABLA 2.8 xn − xn−1 .14 3.36 × 10 −1 6.237 × 10 −3 . × 10 −4 163 Instrucción en DERIVE: NEWTON( f (x), x, x0 , N ): aproXima las primeras N iteraciones en le método de Newton- Raphson aplicado a la función f (x) , tomando como aproximación inicial x0 . Para el ejemplo, aproXime la expresión NEWTON( 4 x − 7 ,x,1.65,4 ). ◊ x−2 n xn 0 1 2 3 4 . 185 . 179 17564 . . 1750163 . 175 f (xn ) −2.66... −.761... −.105... −2.60...×10 −3 0 TABLA 2.9 xn − xn−1 6.0 × 10 −2 3.36 × 10 −1 6.237 × 10 −3 . × 10 −4 163 . se obtienen, Para la misma función f si usamos el método de Newton-Raphson con x 0 = 10 hasta la quinta iteración, los resultados que se muestran en la TABLA 2.10 siguiente. ♦ 62 MÉTODOS NUMÉRICOS __________________________________________________________________________________ f (xn ) n xn 0 1 2 3 4 5 . 10 4.0 22.0 1642.0 . 1076168 × 10 7 4.632550 × 1014 xn − xn−1 3.0 4.5 4.05 4.000609 4.000000 4.000000 TABLA 2.10 3.0 18.0 1620.0 . 10760038 × 107 4.6325498...×1014 El siguiente teorema da condiciones suficientes no necesarias para la convergencia del método de Newton-Raphson, aunque no da, de manera explícita, un intervalo donde se pueda escoger el punto inicial x0 . Teorema 2.4 Sea f una función continuamente diferenciable dos veces en un intervalo [a, b] Si f (α ) = 0 y f ′(α ) ≠ 0 ( α es raíz simple de la ecuación que contiene un número α . f (x) = 0 ), entonces existe δ > 0 tal que la sucesión {xn }n con xn = xn −1 − f ( x n −1 ) f ′ ( x n −1 ) , n = 1,2,... converge a α para cualquier x0 ∈[α − δ, α + δ ] . Demostración: Haciendo g(x) = x − f (x) f ′(x) se demostrará que existe un δ > 0 tal que la función g satisface las hipótesis del teorema 2.1 (de Punto Fijo) en el intervalo [α − δ, α + δ ] . En efecto: Como f ′(α) ≠ 0 y f ′ es continua en [a,b] , existe δ1 > 0 tal que f ′(x) ≠ 0 para todo x ∈[α − δ1, α + δ1 ] ⊆ [a, b] . Entonces g es continua en [α − δ1, α + δ1 ] . Ahora, g′(x) = 1 − = f ′(x)f ′(x) − f (x)f ′′(x) [f ′(x)] 2 f (x)f ′′(x) [f ′(x)] 2 [f ′(x)] − [f ′(x)] + f (x)f ′′(x) = 2 [f ′(x)] 2 para x ∈[α − δ 1, α + δ 1 ] 2 Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 63 __________________________________________________________________________________ y como f es continuamente diferenciable dos veces en [a, b] , entonces g′ es continua en [α − δ1, α + δ1] ; por otro lado f (α) = 0 y f ′(α) ≠ 0 , así que g′(α ) = f (α )f ′′(α ) [f ′(α)] 2 =0 Ahora, como g′ es continua en [α − δ1, α + δ 1 ] y g′(α ) = 0 , entonces existe δ con 0 < δ < δ 1 tal que g′(x) ≤ K < 1 para toda x ∈[α − δ, α + δ ] (este δ depende del K escogido). ( ) Fijados K y δ, falta demostrar que g [α − δ, α + δ] ⊆ [α − δ, α + δ ] . Si x ∈[α − δ, α + δ ] , el teorema del valor medio aplicado a g implica que existe un ξ entre x y α tal que g(x) − α = g(x) − g(α ) = g′(ξ) x − α ≤ K x − α < x − α ≤ δ (recuerde que g(α ) = α − f (α ) f ′(α ) = α ). Así que g(x) − α ≤ δ , lo que significa que g(x) ∈[α − δ, α + δ ] para todo x ∈[α − δ, α + δ ] . Luego g:[α − δ, α + δ ] → [α − δ, α + δ ] satisface todas las hipótesis del teorema 2.1, y en consecuencia la sucesión {xn }n definida por xn = g(xn−1 ), n = 12 , ,... converge a α cualquiera sea x0 ∈[α − δ, α + δ ] . ∇ Nota: Los criterios de aproximación que generalmente se utilizan en el método de Newton-Raphson son: dado ε > 0 , se toma como aproximación de la raíz α de la ecuación f (x ) = 0 , al término xN de la sucesión generada mediante la fórmula de iteración de Newton, donde N es el menor entero no-negativo tal que f (xn ) < ε o xn − xn −1 < ε . Obsérve que si el método de Newton-Raphson converge, como xn − xn −1 = entonces entre más grande sea convergencia. f ′(x) f ( x n −1 ) f ′ ( x n −1 ) en la vecindad de la raíz α, "más rápida" será la 64 MÉTODOS NUMÉRICOS __________________________________________________________________________________ ∗ Algoritmo 2.3 (Newton-Raphson) Para encontrar una aproximación α de una raíz α de una ecuación f (x) = 0 conocida una aproximación inicial x 0 : Entrada: f (x), f ′(x) , una aproximación inicial x 0 , una tolerancia Tol, y un número máximo de iteraciones N . ∗ Salida: Una raíz aproximada α o un mensaje. Paso 1: Tomar n = 1. Paso 2: Mientras que n ≤ N seguir los pasos 3-8: Paso 3: Tomar e = f (x0 ) y d = f ′(x0 ) . Paso 4: Si d = 0 entonces salida: "No se puede continuar el método". Terminar. Paso 5: Tomar c = x 0 − Paso 6: Si e (calcula xn ). d f (c) < Tol o c − x0 = e < Tol , entonces salida: "Una raíz d aproximada es α ∗ = c ". Terminar. Paso 7: Tomar n = n + 1. Paso 8: Tomar x 0 = c (redefine x0 ). Paso 9: Salida "Se alcanzó el número máximo de iteraciones N pero no la tolerancia". Terminar. Ejemplo 2.6 Con respecto a las raíces α 1 , α 2 y α 3 de la ecuación 3 x2 − e x = 0 , vemos que la función f (x) = 3 x2 − e x satisface la hipótesis general del método de Newton-Raphson en . ] y [3.7,3.8] . Si aplicamos el método de Newton-Raphson, con los intervalos [−.5,−.4], [.9,10 aproximaciones iniciales apropiadas y criterio de aproximación f (xn ) < 5 × 10 −5 o xn − xn−1 < 5 × 10 −5 se obtienen los resultados que se muestran en las TABLAS 2.11, 2.12 y 2.13 siguientes. n xn 0 1 2 −.5 −.4602195 −.4589635 f (xn ) .143... . 4 26...×10 −3 4.18...×10 −6 TABLA 2.11 xn − xn −1 3.97805 × 10 −2 . 1256 × 10 −3 Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 65 __________________________________________________________________________________ Para este ejemplo aproXime la expresión NEWTON( 3 x 2 − exp(x), x , − 0.5 , 2 ). De acuerdo con la TABLA 2.11 se tiene que α 1 ≈ −.4589635 = x 2 . f (xn ) n xn 0 1 2 10 . .9141552 .9100176 xn − xn −1 2.81...×10 −1 4.26...×10 −3 4.18...×10 −6 TABLA 2.12 8.58448 × 10 −2 4.1376 × 10 −3 De acuerdo con la TABLA 2.12 se tiene que α 2 ≈ .9100176 = x2 . f (xn ) xn − xn −1 n xn 0 1 3.8 3.736935 − 7.51... × 10 −2 6.3065 × 10 −2 2 3.733092 − 2.51... × 10 −4 3.843 × 10 −3 3 3.733078 −1.38... 1.96... × 10 TABLA 2.13 −5 1.4 × 10 −5 Los resultados de la TABLA 2.13 indican que α 3 ≈3.733078 = x 3 . ♦ Ejercicio 2.5 Use el método de Newton-Raphson para encontrar la menor raíz positiva de la ecuación x − tanx = 0 , usando como criterio de aproximación el mismo dado en ejemplo 2.6 anterior. ♦ 2.2.3 El método de Newton-Raphson combinado con el algoritmo de Horner para encontrar raíces reales de ecuaciones polinómicas con coeficientes reales: Dada una ecuación polinómica con coeficientes reales p(x) = a0 + a1x + a 2 x2 +...+ an xn = 0, con a0 , a1, a2 ,..., an ∈ R y an ≠ 0 Si α es una raíz real simple de la ecuación p(x) = 0 , el método de Newton-Raphson para aproximar la raíz α , consiste en generar la sucesión {xn }n mediante la fórmula de iteración x n = x n −1 − con x0 escogido cercano a α . p(xn −1 ) p ′(xn −1 ) , n = 12 , ,... Como se ve en la fórmula anterior el cálculo de cada iteración requiere la evaluación del polinomio p y su derivada p′ en un número. Existe un algoritmo, llamado algoritmo de Horner, muy fácil de implementar en el computador, el cual permite calcular de manera eficiente, el valor del polinomio y el de su derivada en un número. 66 MÉTODOS NUMÉRICOS __________________________________________________________________________________ El algoritmo de Horner se basa en escribir el polinomio p(x ) en la forma encajada o anidada siguiente: ( ( ( ))) p(x) = a0 + x a1 + x a 2 + x a3 +...+ x(an −1 + xan )... queremos evaluar p(z ) y p ′(z ) para algún número real z, basta tener en cuenta que: Si hacemos bn = a n , y , bk = ak + zbk +1 para k = n − 1, n − 2,...,10 entonces b 0 = p(z ) . Los números auxiliares bn , bn −1,..., b1 son los coeficientes del polinomio cociente q(x ) que resulta de la división de p(x ) por x − z y b 0 es el residuo, es decir, p(x ) = (x − z )q(x ) + b0 siendo q(x ) = b1 + b2 x + ... + bn −1x n − 2 + bn xn −1 . En efecto: (x − z)q(x) + b0 = (x − z)(b1 + b 2 x+...+bn−1xn−2 + bn xn−1 ) + b0 = (b 0 − zb1 ) + (b1 − zb2 )x + (b 2 − zb 3 )x 2 + ... + (bn −1 − zbn )xn−1 + bn xn = a 0 + a1x + a 2 x 2 + ... + an −1xn −1 + an xn = p(x) Como p(x ) = (x − z )q(x ) + b 0 , entonces para x = z , se obtiene p(z ) = (z − z )q(z ) + b 0 = b 0 Ahora bien, como p(x ) = (x − z )q(x ) + b 0 entonces derivando a ambos lados de esta última ecuación con respecto a x, obtenemos p ′(x ) = q(x ) + (x − z )q′(x ) y entonces p ′(z ) = q(z ) + (z − z )q′(z ) = q(z ) Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 67 __________________________________________________________________________________ y como q(x ) es un polinomio del cual conocemos sus coeficientes (los números bn , bn −1,..., b1 ), podemos aplicar el algoritmo de Horner al polinomio q(x ) para hallar q(z ) y de esta manera obtener p ′(z ) . Algoritmo 2.4 (Horner) Para evaluar un polinomio con coeficientes reales p(x ) = a0 + a1x + a2 x 2 + ... + an xn y su derivada en un número real z: Entrada: El grado n del polinomio, los coeficientes a 0 , a1,..., an del polinomio p(x ) , el número real z. Salida: b 0 = p(z ) y c = p ′(z ) . Paso 1: Tomar bn = an (calcula el coeficiente bn de q(x ) ) c = an Paso 2: Para j = n − 1, n − 2,...,1, tomar b j = a j + zb j+1 (calcula los coeficientes b n −1, b n −2 ,..., b 1 de q(x ) ) c = b j + zc (almacena en c a q(z ) = p ′(z ) ) Paso 3: Tomar b 0 = a 0 + zb1 (almacena en b 0 a p(z ) ) Paso 4: Salida: " p(z ) = b 0 y p ′(z ) = c ". Terminar. Observe, en el algoritmo anterior, que como bn , bn−1,..., b1 son los coeficientes del polinomio reducido q(x ) , si aplicamos el algoritmo de Horner a este polinomio q(x ) , es decir, hacemos c n = bn , y para j = n − 1, n − 2,...,1 hacemos c j = b j + zc j+1 obtenemos que c 1 = b 1 + zc 2 = q(z ) = p ′(z ) . Por tanto, al terminar la aplicación del algoritmo de Horner, en c queda almacenado q(z ) , es decir, c = q(z ) = p ′(z ) . Es importante observar que el algoritmo de Horner sólo usa n multiplicaciones y n sumas para calcular p(z ) , lo que hace muy eficiente dicho cálculo. Intente calcular p(z ) de cualquier otra forma y compare el número de operaciones. Para implementar el algoritmo de Horner manualmente usamos el esquema de división sintética: 68 MÉTODOS NUMÉRICOS __________________________________________________________________________________ Ejemplo 2.7 Consideremos la ecuación x3 − x − 1 = 0 . Como p(x) = x 3 − x − 1 es continua , ] , p(1) = −1 < 0 y p(2) = 5 > 0 , entonces la ecuación p(x ) = 0 tiene por lo en el intervalo [12 , ]. menos una raíz en el intervalo [12 Por otro lado, como p ′(x ) = 3 x 2 − 1 > 0 para todo x ∈[12 , ] , entonces la ecuación p(x ) = 0 tiene una única raíz simple α 1 ∈[12 , ] . Es claro, entonces, que se puede aplicar el método de Newton-Raphson para calcular esta raíz α 1 . Si hacemos los cálculos usando el método de Newton-Raphson combinado con el algoritmo de Horner, tomando como aproximación inicial x 0 = 2.0 , y criterio de aproximación xn − xn −1 < 5 × 10 −3 o p(xn ) < 5 × 10 −3 , obtenemos: x1 = x 0 − p(x 0 ) p ′ (x 0 ) = 2.0 − p(2.0 ) p ′(2.0 ) Debemos calcular p(2.0 ) y p ′(2.0 ) . Si usamos el algoritmo de Horner y aritmética con redondeo a cinco (5) dígitos para los cáculos, se obtienen los resultados que aparecen en el siguiente esquema de división sintética Entonces x1 = 2.0 − 5.0 . = 15455 y . 110 x1 − x0 = .4545 > 5 × 10 −3 −3 Para calcular p(x1 ) = p(1.5455 ) y verificar si se satisface la condición p(x1 ) < 5 × 10 , usaremos el algoritmo de Horner. Vea el siguiente esquema de división sintética: Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 69 __________________________________________________________________________________ . > 5 × 10 −3 , así que debemos calcular x2 . De acuerdo con los Observe que p(x1 ) = 11461 resultados que aparecen en el esquema anterior x 2 = x1 − p(x1 ) p ′(x1 ) . = 15455 − . 11461 . = 13596 6.1657 y x 2 − x1 = .1859 > 5 × 10 −3 Si seguimos calculando como se indicó en los dos casos anteriores, obtenemos p(x 2 ) = .1536 > 5 × 10 −3 , p′(x2 ) = 4.5455 , , x 3 = 13258 . x 3 − x 2 = .0338 > 5 × 10 −3 , p(x 3 ) = .0046 < .005 = 5 × 10 −3 . Luego α 1 ≈ 13258 . = x 3 . Puesto que la ecuación dada, x 3 − x − 1 = 0 , tiene tres raíces, cómo podríamos intentar aproximar las otras dos raíces α 2 y α 3 de esta ecuación? (Se puede verificar fácilmente que las raíces α 2 y α 3 son complejas no-reales). Recordemos que p(x ) = (x − 1.3258 )q(x ) + p(1.3258 ) . , y que donde q(x ) es el polinomio cociente en la división de p(x) = x 3 − x − 1 por x − 13258 los coeficientes del polinomio q(x ) se pueden obtener usando el algoritmo de Horner. Pues bien, el siguiente esquema muestra cuáles son los coeficientes del polinomio q(x ) : De acuerdo con el anterior esquema de división sintética, el polinomio q(x ) es . q(x) = x 2 + 13258 x + .7577 Total que ( ) . . p(x) = (x − 13258 x + .7577 + 0.0046 ) x2 + 13258 (recuerde que estamos haciendo redondeo a cinco dígitos) 70 MÉTODOS NUMÉRICOS __________________________________________________________________________________ . Si despreciamos el residuo en la división anterior, es decir, despreciamos p(13258 ) = .0046 , entonces ( p(x) ≈ (x − 13258 x + .7577 . . ) x2 + 13258 ) . y entonces podríamos usar el polinomio reducido q(x) = x 2 + 13258 x + .7577 (cociente en la . ) para aproximar las otras dos división del polinomio x 3 − x − 1 por el polinomio x − 13258 3 raíces de la ecuación original p(x) = x − x − 1 = 0 . Si resolvemos la ecuación q(x ) = 0 , obtenemos α 2,3 ≈ − .6629 ± .56415i . ♦ Instrucción en DERIVE: ∗ QUOTIENT( p(x), x − α ): Simplifica o aproXima el polinomio cociente q(x ) que resulta de la división del polinomio p(x ) por x − α∗ . Para el ejemplo, aproXime la expresión . QUOTIENT( x − x − 1, x − 13258 ). ◊ 3 El proceso ilustrado en el ejemplo anterior para aproximar las raíces α 2 y α 3 , se conoce como Deflación. En general, la Deflación aplicada al problema de hallar raíces reales de ecuaciones polinómicas, consiste en lo siguiente: Supongamos que en la N-ésima iteración en la aplicación del método de Newton-Raphson obtuvimos un cero aproximado xN del polinomio p(x ) , entonces p(x ) = (x − x N )q(x ) + b 0 = (x − x N )q(x ) + p(x N ) ≈ (x − x N )q(x ) ya que p(x N ) ≈ 0 (porque p(x) es continua y si xN ≈ α , con α un cero de p(x ) , entonces p(x N ) ≈ p(α ) = 0 ). Lo anterior significa que (x − xN ) es un "factor aproximado" de p(x ) . Tomando α 1∗ = xN y qn −1(x) como el polinomio reducido q(x ) , de grado n − 1, se tiene que ( ) p(x) ≈ x − α 1∗ qn −1(x) ∗ y podemos encontrar una aproximación α 2 de un segundo cero de p(x ) , aplicando el método de Newton-Raphson al polinomio qn−1(x) , con lo cual ( )( ) p(x) ≈ x − α 1∗ x − α ∗2 qn − 2 (x) siendo qn−2 (x) un polinomio de grado n − 2 . Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 71 __________________________________________________________________________________ Si p(x ) es un polinomio de grado n con n ceros reales, este procedimiento aplicado reiteradamente permitirá, eventualmente, obtener n − 2 ceros aproximados de p(x ) y un factor cuadrático aproximado q 2 (x ) , es decir, ( )( ) ( ) p(x ) ≈ x − α 1∗ x − α ∗2 ... x − α ∗n−2 q2 (x ) Al polinomio cuadrático q 2 (x ) le podremos calcular sus ceros usando la fórmula cuadrática. ∗ ∗ ∗ El procedimiento descrito antes para obtener α1, α2 ,..., αn − 2 se conoce como Deflación. La posible deficiencia en la precisión de las raíces obtenidas por Deflación se debe a que cuando obtenemos los ceros aproximados de p(x ) , estamos usando el método de NewtonRaphson aplicado al polinomio reducido q k (x ) . Para mejorar la precisión en el método de ∗ Deflación, cualquier cero aproximado α k que se encuentre para un polinomio reducido debe someterse a un refinamiento aplicando el método de Newton-Raphson al polinomio original ∗ p(x ) , tomando a α k como aproximación inicial. Un algoritmo para el método de Newton-Raphson combinado con Horner es el siguiente. Algoritmo 2.5 (Newton-Raphson combinado con Horner) Para encontrar un cero aproximado α ∗ del polinomio p(x ) = a 0 + a1x + a 2 x 2 + ... + a n x n Entrada: El grado n y los coeficientes a 0 , a1,..., an del polinomio p(x ) ; una aproximación inicial x 0 ; una tolerancia Tol, y un número máximo de iteraciones N. Salida: Un cero aproximado α ∗ del polinomio p(x ) o un mensaje. Paso 1: Tomar i = 1. Paso 2: Mientras que i ≤ N seguir los pasos 3-10: Paso 3: Tomar bn = an y c = an Paso 4: Para j = n − 1, n − 2,...,1, tomar b j = a j + x 0 b j +1 c = b j + x 0 c (calcula p ′(x0 ) ) Paso 5: Tomar b 0 = a 0 + x 0 b1 (calcula p(x0 ) ). Paso 6: Si c = 0 , entonces salida: "No se puede continuar el método porque se anuló p ′(x0 ) ". Terminar. 72 MÉTODOS NUMÉRICOS __________________________________________________________________________________ b0 (calcula xi en el método de Newton-Raphson). c b0 < Tol , entonces salida: "Una raíz < Tol o x1 − x0 = c Paso 7: Tome x1 = x0 − Paso 8: Si b0 ∗ aproximada de p(x) = 0 es α = x1 ". Terminar. Paso 9: Tomar i = i + 1. Paso 10: Tomar x 0 = x1 . Paso 11: Salida "Se alcanzó el número máximo de iteraciones N pero no la tolerancia". Terminar. Ejemplo 2.8 Encontrar todas las raíces reales de la ecuación x4 − 2x3 − 4 x2 + 4 x + 4 = 0 , usando el método de Newton-Raphson y Deflación. polinómica Empezamos graficando el polinomio p(x) = x 4 − 2 x 3 − 4 x 2 + 4 x + 4 para ubicar las raíces reales (ver la FIGURA 2.16 siguiente). FIGURA 2.16 De acuerdo con la gráfica del polinomio p(x) = x 4 − 2 x 3 − 4 x 2 + 4 x + 4 , se ve que todas las raíces α 1, α 2 , α 3 y α 4 de la ecuación , ] , α 3 ∈[12 , ] , α 4 ∈[2,3] . α 1 ∈[−2,−1] , α 2 ∈[−10 polinómica dada son reales, con Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 73 __________________________________________________________________________________ Se ve claramente que p(x) satisface la hipótesis general del método de Newton-Raphson en intervalos apropiados para cada una de las raíces α1, α 2 , α3 y α 4 . Usando el método de Newton-Raphson para encontrar α 1 , con criterio de aproximación p(xn ) < 5 × 10 −5 o xn − xn −1 < 5 × 10 −5 , se obtiene α 4 ≈ 2.732076 = x4 usando x 0 = 3.0 , y el correspondiente polinomio reducido de grado 3, es . . q3 (x) = x 3 + .7320760 x 2 − 1999912 x − 1463912 Usando Deflación, encontramos una aproximación de la raíz . . . α 3 ≈ 1414157 = x5 tomando como aproximación inicial x 0 = 10 correspondiente de grado 2, es α 3 , lo que da El polinomio reducido q2 (x ) = x 2 + 2.146233x + 1.035197 Finalmente, encontramos aproximaciones de la raíces α 2 y α 1 , resolviendo la ecuación . cuadrática q 2 (x ) = 0 , con lo que se obtiene α 2 ≈ −.7319684 y α1 ≈ −1414264 . ♦ Ejemplo 2.9 todas Encontrar las raíces reales de la ecuación x4 + 5 x3 − 9 x2 − 85 x − 136 = 0 , usando el método de Newton-Raphson y Deflación. La gráfica del polinomio p(x) = x 4 + 5 x 3 − 9 x 2 − 85 x − 136 es como se muestra en la FIGURA 2.17. De acuerdo con la FIGURA 2.17, la ecuación dada sólo tiene dos raíces reales simples α 1 ∈[−5,0] y α 2 ∈[0,5] (verifíquelo analíticamente). Usando el método de Newton-Raphson para encontrar α 1 con criterio de aproximación p(xn ) < 5 × 10 −5 o xn − xn −1 < 5 × 10 −5 , obtenemos α 1 ≈ −4.123123 = x5 usando como punto inicial x 0 = −5.0 , y el polinomio reducido correspondiente de grado 3, es q 3 (x ) = x 3 +.8768767x 2 − 12.61547x − 32.98486 Usando Deflación, encontramos la aproximación α 2 ≈ 4.123122 = x4 , tomando como punto inicial x 0 = 5.0 , y el polinomio reducido correspondiente de grado 2, es q2 (x ) = x 2 + 4.999999x + 8.000134 74 MÉTODOS NUMÉRICOS __________________________________________________________________________________ FIGURA 2.17 Finalmente, las raíces de la ecuación cuadrática q 2 (x ) = 0 son los números complejos conjugados α 3 ≈ −2.5 + 1322927 i y α 4 ≈ −2.5 − 1322927 i. ♦ . . El siguiente ejemplo muestra que el método de Newton-Raphson puede converger y hacerlo lentamente cuando se aplica en la búsqueda de una raíz múltiple de una ecuación f (x) = 0 (cosa similar ocurre cuando hay raíces reales cercanas entre sí). Ejemplo 2.10 Consideremos la ecuación x − tanx = 0 . Es claro que α = 0 es raíz de esta ecuación. Cuál es la multiplicidad de esta raíz? La gráfica de f (x ) = x − tanx alrededor de α = 0 es como se muestra en la FIGURA 2.18 siguiente. Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 75 __________________________________________________________________________________ FIGURA 2.18 De acuerdo con esta gráfica la raíz α = 0 es una raíz múltiple con multiplicidad impar. Como f ′(x) = 1 − sec 2 x , f ′(0 ) = 0 f ′′(x) = −2 sec 2 xtanx , f ′′(0 ) = 0 f ′′′(x) = −4 sec 2 xtan 2 x − 2 sec 4 x , f ′′′(0) = −2 ≠ 0 entonces α = 0 es raíz de multiplicidad m = 3 , según el teorema 2.3. Observe que aunque la raíz α = 0 es múltiple, f ′(x) ≠ 0 para x cerca de 0, x ≠ 0 , así que podemos aplicar el método de Newton-Raphson para aproximar la raíz α = 0 . Si hacemos ésto con criterio de aproximación f (xn ) < 5 × 10 −5 o xn − xn −1 < 5 × 10 −5 , obtenemos los resultados que aparecen en la TABLA 2.14 siguiente. n xn 0 1 2 3 4 5 .3 2.024312 × 10 −1 . 1356958 × 10 −1 9.068650 × 10 −2 6.052418 × 10 −2 4.036921 × 10 −2 f (xn ) −9.33...×10 −3 −2.81...×10 −3 −8.39...×10 −4 −2.49...×10 −4 −7.40...×10 −5 −2.19...×10 −5 TABLA 2.14 xn − xn −1 9.75688 × 10 −2 6.67354 × 10 −2 4.50093 × 10 −2 3.016232 × 10 −2 2.015497 × 10 −2 Observando los resultados de la TABLA 2.14, vemos que aunque f (x 5 ) es pequeño, x5 no es una buena aproximación de α = 0 , además se ve la lentitud de la convergencia del método de Newton-Raphson. ♦ 76 MÉTODOS NUMÉRICOS __________________________________________________________________________________ Ejercicio 2.6 Use el método de Newton-Raphson para encontrar las dos raíces de la . y criterio ecuación x2 − 2.0001x + 10001 = 0 , usando como puntos iniciales x 0 = .5 , x0 = 15 . −5 o xn − xn −1 < 5 × 10 −5 . Cuáles son las raíces exactas de aproximación f (xn ) < 5 × 10 de esta ecuación ? ♦ En situaciones como la del ejemplo anterior (raíz múltiple), se recomienda utilizar el método de Newton-Raphson modificado. 2.2.4 Método de Newton-Raphson modificado: El método de Newton-Raphson modificado se basa en el siguiente resultado: Si α es una raíz de multiplicidad m > 1 de una ecuación f (x ) = 0 y f ′(x ) ≠ 0 para toda x en alguna vecindad de α, x ≠ α , entonces α es una raíz simple de la ecuación M(x ) = 0 , donde la función M está definida como sigue: f (x) , M(x) = f ′(x) 0, x≠α x=α La función M resulta continua en la raíz α . En efecto: Como por definición de la función M, M(α ) = 0 , entonces α es raíz de la ecuación M(x ) = 0 . Veamos que α es una raíz simple. Como α es una raíz de multiplicidad m > 1 de la ecuación f (x) = 0 , entonces f (α ) = 0 y para x ≠ α , f (x) = (x − α ) h(x) con m lim h(x) ≠ 0 x→ α Por ser f (x ) = (x − α )m h(x ) , entonces f ′(x ) = m(x − α )m −1 h(x ) + (x − α )m h ′(x ) , así que m x − α ) h(x) h(x) ( M(x) = = = (x − α ) m −1 f ′(x) (x − α ) [mh(x) + (x − α )h ′(x)] mh(x) + (x − α )h ′(x) f (x) para x ≠ α , con lim x→ α h(x) mh(x) + (x − α )h ′(x) = lim h(x) x→ α m lim h(x) simple de la ecuación M(x ) = 0 . x→ α = 1 ≠ 0 , ya que lim h(x) ≠ 0 . x→α m Luego α es una raíz Observe que lim M(x) = 0 = M(α ) , lo que significa que la función M es continua en α . ∇ x→ α El método de Newton-Raphson modificado para aproximar una raíz múltiple α de una ecuación f (x ) = 0 , consiste en aplicar el método de Newton-Raphson a la nueva función M, así que la función de iteración g del método de Newton-Raphson modificado está definida como Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 77 __________________________________________________________________________________ g(x) = x − M(x) f (x) M′(x) = x− f ′(x) [f ′(x)] − f (x)f ′′(x) 2 [f ′(x)] 2 es decir, g(x) = x − f (x)f ′(x) [f ′(x)] 2 − f (x)f ′′(x) lo que requiere que f ′′ sea continua en alguna vecindad de α . Si aplicamos el método de Newton-Raphson modificado a la función f (x ) = x − tanx para aproximar la raíz α=0, con criterio de aproximación M(xn ) < 5 × 10 −5 o xn − xn −1 < 5 × 10 −5 , se obtienen los resultados que se muestran en la TABLA 2.15 siguiente. n xn 0 1 2 .3 M(xn ) . −1595052 × 10 −2 2.164831 × 10 −6 9.75...×10 −2 −5.31...×10 −3 7.21...×10 −7 TABLA 2.15 xn − xn −1 .31595052 . 1595268 × 10 −2 Instrucción en DERIVE: NEWTON_MOD( f (x), x, x0 , N ): aproXima las primeras N iteraciones en el método de Newton-Raphson modificado aplicado a la función f (x) , tomando como aproximación inicial x0 . Para el ejemplo, aproXime la expresión NEWTON_MOD( x − tanx , x , 0.3 , 2 ). ◊ Observando la TABLA 2.15 vemos que el valor de x2 , obtenido por el método de NewtonRaphson modificado, es mucho más cercano a 0 que el valor de x 5 obtenido por el método de Newton-Raphson aplicado a la función f (x) = x − tanx . En el ejemplo anterior M(x) = en la FIGURA 2.19 . ♦ x − tanx 1 − sec 2 x y la gráfica de M en la vecindad de α = 0 se muestra 78 MÉTODOS NUMÉRICOS __________________________________________________________________________________ FIGURA 2.19 2.2.5 Método de la Secante: El método de Newton-Raphson para aproximar una raíz simple α de una ecuación f (x) = 0 , consiste en generar la sucesión {xn }n a partir de la fórmula de iteración f ( x n −1 ) xn = xn −1 − f ′ ( x n −1 ) , n = 12 , ,... y escogiendo x0 cercano a la raíz α . Como f ′(xn −1 ) = lim x→ xn − 1 f (x) − f (xn −1 ) x − x n −1 entonces si queremos evitar el uso de la derivada en la fórmula de iteración del método de f ( x n −1 ) − f ( x n − 2 ) Newton-Raphson, una forma es tomar x = xn −2 , y aproximar f ′(xn −1 ) por , x n −1 − x n − 2 que no es otra cosa que la pendiente de la recta secante L a la gráfica de f por los puntos (x n−1 , f (x n−1 )), (x n−2 , f (x n−2 )) (ver la FIGURA 2.20). Remplazando, en la fórmula de iteración del método de Newton-Raphson, f ′(xn −1 ) por su aproximación f ( x n −1 ) − f ( x n − 2 ) x n −1 − x n − 2 , obtenemos xn = xn −1 − f (xn −1 )(xn −1 − xn − 2 ) f ( x n −1 ) − f ( x n − 2 ) , n = 2,3,... que constituye la fórmula de iteración para el método de la Secante. Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 79 __________________________________________________________________________________ Nótese que para iterar con el método de la Secante se requiere conocer dos aproximaciones iniciales x 0 y x1 . FIGURA 2.20 Observe la relación entre el método de la Secante y el método de Regula Falsi: Ambos métodos usan dos puntos iniciales o de arranque para encontrar una nueva aproximación a la raíz buscada, pero hay una gran diferencia entre la escogencia de esos dos puntos: mientras que en el método de Regula Falsi los dos puntos deben encerrar a la raíz buscada y el método siempre converge, en el método de la Secante los dos puntos iniciales no necesariamente encierran a la raíz buscada lo que puede provocar divergencia del método. El método de la Secante converge bajo las mismas hipótesis de convergencia del método de Newton-Raphson. ∗ Algoritmo 2.6 (Secante) Para encontrar una aproximación α de una raíz α de una ecuación f (x ) = 0 conocidas dos aproximaciones iniciales x0 y x1 : Entrada: f (x) ; dos aproximaciones iniciales x0 y x1 ; una tolerancia Tol, y un número máximo de iteraciones N. Salida: Una raíz aproximada α ∗ o un mensaje. Paso 1: Tomar n = 2 , y 0 = f (x 0 ) y y 1 = f (x 1 ) . Paso 2: Mientras que n ≤ N seguir los pasos 3-7: Paso 3: Si y1 − y 0 = 0 , entonces salida: "No se puede aplicar el método, porque el denominador en la fórmula de la Secante se anuló". Terminar. Paso 4: Tomar x 2 = x1 − y1(x1 − x0 ) y1 − y 0 . 80 MÉTODOS NUMÉRICOS __________________________________________________________________________________ Paso 5: Si x 2 − x1 < Tol , entonces salida: "Una aproximación de una raíz de la ∗ ecuación dada es α = x2 ". Terminar. Paso 6: Tomar n = n + 1. Paso 7: Tomar x 0 = x 1 y 0 = y1 x1 = x 2 y 1 = f (x 1 ) Paso 8: Salida: "Se alcanzó el número máximo de iteraciones N pero no la tolerancia". Terminar. Ejemplo: 2.11 Si aplicamos el método de la Secante para encontrar la menor raíz positiva de la ecuación x − tanx = 0 , con criterio de aproximación xn − xn −1 < 5 × 10 −5 , obtenemos los resultados que se muestran en la TABLA 2.16 siguiente. n xn 0 1 2 3 4 5 6 7 8 4.4 4.5 4.490469 4.494723 4.492822 4.493671 4.493292 4.493461 4.493386 xn+1 4.5 4.490469 4.494723 4.492822 4.493671 4.493292 4.493461 4.493386 4.493419 TABLA 2.16 f (xn+1 ) xn +1 − xn −.137... 5.85...×10 −2 −2.66...×10 −2 . ...×10 −2 118 −5.28...×10 −3 2.37...×10 −3 . ...×10 −3 −104 4.73...×10 −4 . ...×10 −4 −192 .1 9.531 × 10 −3 4.254 × 10 −3 . 1901 × 10 −3 8.490 × 10 −4 3.790 × 10 −4 . 1690 × 10 −4 7.500 × 10 −5 3.300 × 10 −5 Instrucción en DERIVE: SECANTE( f (x), x, x0 , x1 , N ): aproXima las primeras N iteraciones en el método de la Secante aplicado a la función f (x) tomando aproximaciones iniciales x0 y x1 . Para el ejemplo , aproXime la expresión SECANTE( x − tanx, x, 4.4, 4.5, 8 ). ◊ De acuerdo con los resultados de la TABLA 2.16, la menor raíz positiva de la ecuación x − tanx = 0 es α ≈ 4.493419 = x8 . ♦ 2.3 RAPIDEZ DE CONVERGENCIA Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 81 __________________________________________________________________________________ Los métodos numéricos estudiados aquí para hallar una raíz α de una ecuación f (x) = 0 consistieron en generar una sucesión {xn }n tal que lim xn = α . n→∞ La eficiencia de un método numérico depende, en parte, de la "rapidez" con la cual la sucesión {xn }n converge a α, donde "rapidez" significa el número mínimo de iteraciones N necesarias para tener xN a una distancia dada de la raíz α, es decir, tal que xn − α < ε para algún ε > 0 dado. Una forma de medir la "rapidez" de la convergencia de un método iterativo de los que estudiamos, es en los siguientes términos. Notación: Si ∈n = xn − α , entonces ∈n puede ser positivo, negativo o cero y En = ∈n = xn − α denota el valor absoluto del error de truncamiento en la iteración n. En la siguiente definición se introduce el concepto de orden de convergencia de una sucesión, usando el límite. Hay otras formas de definir orden de convergencia de una sucesión. Definición 2.4 Supongamos que lim xn = α ∈ R , es decir, lim ∈n = 0 o equivalentemente n→∞ n→∞ lim En = 0 . Si existen constantes positivas λ y L tales que n→∞ lim En +1 n→∞ Eλ n = lim n→∞ x n +1 − α xn − α λ =L entonces se dice que la sucesión {xn } converge a α con orden de convergencia λ y error n asintótico L . ∇ Veamos que la definición 2.4 es una buena definición en el sentido que si λ y L existen, entonces son únicos. Supongamos que existen λ 1, λ 2 , L1 y L 2 constantes positivas, tales que lim n→∞ En +1 Enλ1 = L1 y lim n→∞ En +1 Enλ 2 = L2 y veamos que λ 1 = λ 2 y L1 = L 2 . Basta probar que λ 1 = λ 2 , pues si esto ocurre, entonces L1 = L 2 (por la unicidad del límite, cuando existe). Supongamos, por reducción al absurdo, que existen λ 1 y λ 2 con λ 1 > λ 2 > 0 y tales que lim n→∞ En +1 Enλ1 = L1, lim n→∞ En +1 Enλ 2 = L 2 donde L1, L 2 > 0 82 MÉTODOS NUMÉRICOS __________________________________________________________________________________ Como λ 1 > λ 2 > 0 , entonces λ 1 − λ 2 > 0 , y 1 Enλ1 − λ 2 = En +1 Enλ 2 Enλ1 En +1 así que lim n→∞ 1 Enλ1 − λ 2 En +1 Enλ 2 Enλ1 En +1 = lim n→∞ Pero lim n→∞ 1 E nλ1 − λ 2 = ∞, ya que lim E nλ1 −λ 2 = 0 n→ ∞ y lim n→∞ Enλ 2 En +1 Enλ 2 En +1 1 L1 lim = = L1 = ∈R lim λ1 E λ n→∞ E 1 n→∞ En +1 L2 L2 En n +1 n lo cual es una contradicción. Luego λ 1 = λ 2 . ∇ De la definición 2.4 se tiene que, para n suficientemente grande En +1 ≈ LEnλ y así, fijado L, entre mayor sea λ , más rápidamente converge la sucesión decir, entre mayor sea el orden de convergencia de una sucesión {xn }n , {xn }n a α, es menor será el número de iteraciones necesarias para tener a xn a una distancia dada del límite de esa sucesión. Casos especiales: i) Si λ = 1 en la definición 2.4, es decir, el orden de convergencia es uno, se dice que la convergencia es lineal. Si la convergencia es lineal, entonces para n suficientemente grande En+1 ≈ LEn lo que significa que el error en un paso es aproximadamente proporcional al error en el paso anterior (en este caso debe tenerse 0 < L ≤ 1 , casi siempre L < 1 ). ii) Si λ = 2 en la definición 2.4, la convergencia se dice cuadrática. Si la convergencia es cuadrática, entonces para n suficientemente grande En +1 ≈ LEn2 Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 83 __________________________________________________________________________________ es decir, el error en un paso es aproximadamente proporcional al cuadrado del error en el paso anterior. En este caso es claro que el error En decrece más rápidamente que en el caso lineal, y así la convergencia será más "rápida". 1 1 Ejemplo 2.12 Consideremos las sucesiones {xn }n con xn = 3 , y {x" n }n con x" n = . n n 10 2 Como lim xn = 0 y lim x" n = 0 , entonces α = 0 , en la definición 2.4, para ambas n→∞ n→∞ sucesiones. Encontremos el orden de convergencia de la sucesión {xn }n . Como 1 En +1 Enλ = (n + 1) 3 1 3 n λ nλ = n + 1 3 entonces 1 nλ = lim = L ∈ R, L > 0, si y sólo si λ = 1 n→∞ n + 1 n→∞ n1− λ + n − λ lim Luego el orden de convergencia de la sucesión {xn }n con xn = 1 es uno, es decir, {xn }n n3 converge linealmente a cero. Observe que si λ = 1, entonces L = 1. Procediendo de manera similar al caso anterior, se puede ver que el orden de convergencia 1 de la sucesión {x" n }n con x" n = 2n es dos, es decir, la sucesión {x" n }n converge 10 cuadráticamente a cero, con error asintótico L = 1. Encontremos ahora, los valores mínimos de N1 y N2 tales que EN 1 = xN 1 − α < 10 −3 = ε y E" N 2 = x" N 2 − α < 10 −3 = ε En = E" n = 1 n3 < 10 −3 ⇔ n3 > 10 3 ⇔ n > 10, así que N1 = 11 . 1 10 2 < 10 −3 ⇔ 10 2 > 10 3 ⇔ 2n > 3 ⇔ n ≥ 2 , así que N2 = 2 . n n Lo anterior nos dice que para la sucesión {xn }n con xn = α = 0 , son necesarias 11 iteraciones para que sucesión {x" n }n con x" n = 1 1 , que converge linealmente a n3 xn − α < 10 −3 , mientras que para la n , que converge cuadráticamente a α = 0 , son necesarias sólo 10 2 2 iteraciones para que x" n − α < 10 −3 . ♦ 84 MÉTODOS NUMÉRICOS __________________________________________________________________________________ Con base en la definición 2.4, estudiaremos el orden de convergencia de los métodos abiertos que ya vimos. 2.3.1 Orden de convergencia del método de iteración de Punto Fijo: Sea α un punto fijo de una función g, es decir α = g(α ) : i) Si g′ es continua en alguna vecindad de α, g′(α ) ≠ 0 , y la sucesión {xn }n definida por xn = g(xn−1) , n = 1,2,... converge a α, entonces la convergencia es lineal. En efecto: ∈n+1 = xn+1 − α = g (xn ) − g (α ) = g′(ξ n )(xn − α ) = g′(ξ n ) ∈n con ξ n entre xn y α . Ahora, como g′ es continua en α, entonces lim g′(ξ n ) = g′(α ) , ya que ξ n → α cuando n→∞ n → ∞ , y entonces ∈n +1 = lim g′(ξ n ) = g′(α ) ≠ 0 n→∞ ∈n n→∞ lim así que lim n→∞ En +1 = g′(α ) = L > 0 En lo que significa que la convergencia es lineal. ∇ ( ) ii) Si g′′ es continua en alguna vecindad de α, g′(α ) = 0 , g′′(α ) ≠ 0 (el punto α,g(α ) no es de inflexión de la gráfica de g), y la sucesión {xn }n definida por xn = g(xn−1 ) , n = 12 , ,... converge a α, entonces la convergencia es cuadrática, es decir, {xn }n converge a α con orden de convergencia dos. En efecto: Como g′′ es continua en un intervalo abierto que contiene a α, entonces para x en ese intervalo, se tiene g (x) = g (α ) + g′(α )(x − α ) + g′′(ξ) 2 ( x − α )2 con ξ entre x y α Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 85 __________________________________________________________________________________ Como g(α ) = α y g′(α ) = 0 , entonces g (x) = α + g′′(ξ) 2 ( x − α )2 con ξ entre x y α En particular, cuando x = xn , n ∈ N , se tiene x n +1 = g ( x n ) = α + g′′(ξ n ) 2 Por tanto ∈n +1 = xn +1 − α = y como g′′ ( xn − α ) 2 g′′(ξ n ) 2 con ξ n entre xn y α ( x n − α )2 = g′′(ξ n ) 2 ∈n2 es continua en el intervalo que contiene a lim g′′(ξ n ) = g′′(α ) , lo que implica que n→∞ lim ∈n +1 n→∞ ∈2 n = lim g′′(ξ n ) n→∞ 2 y entonces lim n→∞ En +1 En2 = lim n→∞ ∈n +1 ∈n 2 = = y α, entonces xn g′′(α ) 2 g′′(α ) 2 =L>0 lo cual significa que la convergencia es cuadrática. ∇ Si queremos tener esquemas iterativos xn = g(xn−1) , n = 12 , ,... con orden de convergencia mayor, tenemos que poner condiciones sobre g. Un teorema que generaliza las ideas anteriores y cuya prueba es similar a la de los casos i) y ii) vistos antes, es el siguiente: Teorema 2.4 Sea α una raíz de una ecuación x = g(x ) . Si g tiene las primeras k-derivadas , ,..., k − 1 , g( k ) (α ) ≠ 0 , y la sucesión continuas en alguna vecindad de α, g( i) (α ) = 0 para i = 12 {xn }n definida por xn = g(xn−1) , n = 12 , ,... converge a α, entonces la convergencia es de orden k, es decir, {xn }n converge a α con orden de convergencia k. ∇ Observación: Por lo general, la cantidad de cálculos involucrados en la fórmula de un método iterativo aumenta a medida que el orden de convergencia crece, por lo tanto, la ganancia en el orden de convergencia no debe medirse por el número de iteraciones 86 MÉTODOS NUMÉRICOS __________________________________________________________________________________ necesarias para que el error de truncamiento alcance cierta tolerancia, sino por el número total de operaciones o tiempo del computador. Sin embargo, los métodos de convergencia cuadrática parecen estar en un punto de equilibrio si tenemos en cuenta la dificultad de los métodos, el número de operaciones requeridas y los resultados obtenidos; es por éso, que uno de los métodos mas usados es el de Newton-Raphson que, como veremos enseguida, es de convergencia cuadrática. 2.3.2 Orden de convergencia del método de Newton-Raphson: Sea α una raíz de una ecuación f (x ) = 0 . Si la función f tiene sus dos primeras derivadas continuas en alguna ( ) vecindad de α, f ′(x ) ≠ 0 para todo x en esa vecindad, f ′′(α ) ≠ 0 (el punto α,f (α ) no es de inflexión de la gráfica de f ), y la sucesión {xn }n definida por x n +1 = x n − f ( xn ) f ′( xn ) , n = 0,1,... converge a α, entonces la convergencia es cuadrática. En efecto: Como la función f tiene segunda derivada continua en algún intervalo que contiene a α, entonces para todo x en ese intervalo, se tiene f (x) = f (α ) + f ′(α )(x − α ) + Pero f (α ) = 0 , así que f (x) = f ′(α )(x − α ) + De la misma manera f ′′(ξ) f ′′(ξ) 2 2 (x − α )2 ( x − α )2 con ξ entre x y α con ξ entre x y α () f ′(x) = f ′(α ) + f ′′ ξ" (x − α ) con ξ" entre x y α En particular, cuando x = xn , n ∈ N , se tiene f (xn ) = f ′(α )(xn − α ) + f ′′(ξ n ) 2 (xn − α )2 con ξ n entre xn y α ( ) f ′(xn ) = f ′(α ) + f ′′ ξ" n (xn − α ) con ξ" n entre xn y α Sustituyendo f ′(xn ) en la fórmula de iteración del método de Newton-Raphson, obtenemos x n +1 = x n − f (x n ) f ′(α ) + f ′′ ξ" n (xn − α ) ( ) con ξ" n entre xn y α Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 87 __________________________________________________________________________________ Restando α a ambos miembros de la ecuación anterior, se obtiene f ′(α ) ∈n + f ′′ ξ" n ∈n2 −f (xn ) f ( xn ) ∈n +1 = ∈n − = f ′(α ) + f ′′ ξ" n ∈n f ′(α ) + f ′′ ξ" n ∈n ( ) ( ) ( ) y sustituyendo f (xn ) , en la última ecuación anterior, obtenemos f ′′(ξ n ) 2 ∈n f ′(α ) ∈n + f ′′ ξ" n ∈n2 − f ′(α ) ∈n − 2 ∈n +1 = f ′(α ) + f ′′ ξ" n ∈n ( ) ( ) ( ) ∈n2 2f ′′ ξ" n − f ′′(ξ n ) = 2f ′(α ) + f ′′ ξ" n ∈n ( ) Luego ∈n +1 ∈n2 Como {xn }n = ( ) 2f ′′ ξ" n − f ′′(ξ n ) ( ) 2f ′(α ) + f ′′ ξ" n ∈n {ξn }n converge a α , entonces y {ξ" } n n también convergen a α, y {∈n }n converge a 0, y como f ′′ es continua en α , entonces lim n→∞ ∈n +1 ∈n2 = lim ( ) 2f ′′ ξ" n − f ′′(ξ n ) n→∞ ( ) 2f ′(α ) + f ′′ ξ" n ∈n Por tanto lim n→∞ ∈n +1 ∈n 2 = = f ′′(α ) 2f ′(α ) 2f ′′(α ) − f ′′(α ) [ ] 2 f ′(α ) = f ′′(α ) 2f ′(α ) = L>0 (recuerde que f ′(α ) ≠ 0 y f ′′(α ) ≠ 0 ), así que la convergencia es cuadrática. ∇ Observe, en el trabajo anterior, que si f (α ) = 0 , f ′(α) = 0 y f ′′(α ) ≠ 0 , es decir, α es raíz de multiplicidad dos de la ecuación f (x) = 0 , entonces el método de Newton-Raphson puede aún converger, pero la convergencia es lineal con error asintótico L = tiene que: Si 0 = f (α ) = ... = f ( m −1) (α) 1 . En general, se 2 m y f ( ) (α ) ≠ 0 , es decir, α es una raíz de multiplicidad 88 MÉTODOS NUMÉRICOS __________________________________________________________________________________ m ≥ 2 de una ecuación f (x) = 0 , y el método de Newton-Raphson converge, entonces la convergencia es lineal con error asitótico L = m−1 . m Se puede demostrar, véase Ralston,1965, páginas 326 y 327, que el método de la Secante, 1+ 5 . , y que el método de Regula cuando converge, tiene orden de convergencia λ = ≈ 162 2 Falsi es de convergencia lineal siempre que la gráfica de la función f sea cóncava hacia abajo o hacia arriba en la vecindad de la raíz α. El método de Bisección se considera de convergencia lineal. TALLER 2. 1. El método de Bisección se puede aplicar en un intervalo [a,b] siempre que f (a)f (b) < 0 . Si f (x) tiene más de un cero en (a, b) , se podrá saber de antemano cuál cero es el que se encuentra al aplicar el algoritmo 2.1? Ilustre su respuesta con ejemplos. 2. Las siguientes funciones cumplen la condición f (a)f (b) < 0 donde a = 0 y b = 1 . Si se aplica el método de Bisección en el intervalo [a, b] a cada una de esas funciones, qué punto se encuentra en cada caso? Es este punto un cero de f ? a) f (x) = (3 x − 1)− 1 b) f (x) = cos(10 x) 3. Pruebe que la función f (x) = e x − 1 − x − 1, x > 0 c) f (x) = −1, x ≤ 0 x2 tiene un único cero, precisamente en x = 0 . 2 Sugerencia: Puede usar el residuo en una expansión en serie de Taylor de e x alrededor de 0 . Evalúe en una calculadora o un computador la función f (x) para valores de x cercanos a cero. Nota cambios de signo en los valores f (x) para números x, a un mismo lado de cero? De haber cambios de signo, qué hará el método de Bisección en uno de los intervalos en los que hay uno de esos cambios? Comente sobre la posibilidad de encontrar, por un método numérico, un "falso cero". 4. Verifique que se puede aplicar el método de Bisección para aproximar el único cero de la , ] . Cuántas iteraciones serán necesarias para función f (x) = x3 − x − 1 en el intervalo [12 , ] se logre una aproximación de la que al aplicar el método de Bisección en el intervalo [12 Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 89 __________________________________________________________________________________ raíz, con una precisión de por lo menos 3 cifras decimales exactas? aproximación. Calcule tal 3 5. Encuentre una aproximación de 25 con una precisión de por lo menos tres cifras decimales exactas, usando el método de Bisección. 6. Se quiere encontrar la menor raíz positiva de cada una de las siguientes ecuaciones, usando el método de iteración de Punto Fijo. En cada caso, encuentre una función de iteración de punto fijo y un intervalo en el que se satisfagan todas las hipótesis del Teorema 2.1, y calcule una aproximación de la raíz buscada con una precisión de por lo menos tres cifras decimales exactas. a) e − x − cos x = 0 b) x2 + 10 cos x = 0 c) x − cos x = 0 7. Estudie la función g(x) = 1 + x 2 como una posible función de iteración de Punto Fijo. Por , ,... ? qué no es convergente la iteración xn = g(xn −1 ), n = 12 8. a) Verifique que cada una de las siguientes funciones gi (x), i = 12 , ,3,4 es una función de iteración de Punto Fijo para la ecuación x4 + 2x2 − x − 3 = 0 , , ,3,4 , siendo f (x) = x4 + 2x2 − x − 3 . α = gi (α ) ⇒ f (α ) = 0 , i = 12 es decir, 1 ( i) g1(x) = 3 + x − 1 2x 2 4 ) 3 + x − x4 2 ii) g2 (x) = 2 1 x+3 2 iii) g3 (x) = 2 x + 2 iv) g4 (x) = 3 x 4 + 2x 2 + 3 4 x3 + 4 x − 1 b) Efectúe 4 iteraciones, si es posible, con cada una de las funciones de iteración . y xn = gi (xn−1 ), i = 12 , ,3,4 . definidas en a), tomando x0 = 10 c) Cuál función cree usted que da la mejor aproximación? Explique. 1 3 9. Demuestre que la ecuación 2sen(πx) + x = 0 tiene una única raíz α ∈ , . Use el 2 2 método de iteración de Punto Fijo para encontrar una aproximación de α con una precisión de por lo menos tres cifras decimales exactas. 90 MÉTODOS NUMÉRICOS __________________________________________________________________________________ 10. Resuelva la ecuación x3 − x − 1 = 0 para la raíz en el intervalo [12 , ] , usando el método iterativo de Punto Fijo. Obtenga una aproximación de la raíz buscada con una precisión de por lo menos tres cifras decimales exactas. 3 11. Use el método iterativo de Punto Fijo para encontrar una aproximación de precisión de por lo menos tres cifras decimales exactas. 25 con una 12. Use el método iterativo de Punto Fijo para demostrar que la sucesión {xn }n definida por xn = converge a 1 2 , ,... x n −1 + , n = 12 2 x n −1 2 , para x0 > 0 escogido adecuadamente. En general, si R > 0 , entonces la sucesión {xn }n definida por xn = 1 R , ,... x n −1 + , n = 12 2 xn −1 converge a R , para x0 > 0 escogido adecuadamente. Esta sucesión se usa con frecuencia en subrutinas para calcular raíces cuadradas. 13. La ecuación e x − 4 x2 = 0 tiene una única raíz entre a = 0 y b = 1 . Demuestre que la sucesión de Punto Fijo, generada por la función de iteración g(x) = esta raíz si el punto inicial se escoge en el intervalo [0,1] . 14. Pruebe que la función g(x) = 2 + x − tan −1x tiene la propiedad x 1 2 e , converge a 2 g′(x) < 1 para toda x. Pruebe que g no tiene un Punto Fijo. Explique por qué esto no contradice el teorema 2.1 de Punto Fijo. 15. Cuál es el valor de la siguiente expresión? x = 2 + 2 + 2+... Note que esta expresión puede ser interpretada como significando x = lim xn , donde n→∞ x 0 = 2 , x1 = 2 + 2 = 2 + x 0 , y así sucesivamente. Use el método de Punto Fijo con una función de iteración g apropiada. Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 91 __________________________________________________________________________________ 16. Utilice el método de Newton-Raphson para hallar ceros de las siguientes funciones en el intervalo indicado. a) f (x) = e2 x − e x − 2 en [0,1] b) f (x) = 4 sen x − e x en [0, .5] Calcule las iteraciones xn hasta que xn − xn −1 < 5 × 10 −5 . 17. Utilice el método iterativo de Punto Fijo para aproximar el dominio de la función [ ] 1 2 f (x) = 2(1 − x)e − 1 . x 18. Use el método de Newton-Raphson para aproximar el valor de la abscisa del punto (x, y ) 2 , ) . Calcule las iteraciones xn hasta que sobre la gráfica de y = x más cercano a (10 xn − xn −1 < 5 × 10 −5 . x 19. Resuelva la ecuación 4 cos x = e con una precisión de 5 × 10 −5 , es decir, calcule las iteraciones xn hasta que xn − xn −1 < 5 × 10 −5 , usando: a) El método de Newton-Raphson con x 0 = 1.0 . b) El método de la Secante con x0 = π π y x1 = . 4 2 20. Use el método de Newton-Raphson para resolver la ecuación 2 π x sen x − = 0 con x0 = 2 2 Itere hasta obtener una precisión de 5 × 10 −5 para la raíz aproximada, con 2 x f (x) = sen x − . 2 Parecen los resultados fuera de lo común para el método de Newton-Raphson? Resuelva también la ecuación con x0 = 5 π y x0 = 10 π . 21. Use el método de Newton-Raphson modificado para encontrar una aproximación de la raíz de la ecuación f (x) = x2 + 2xe x + e2x = 0 92 MÉTODOS NUMÉRICOS __________________________________________________________________________________ empezando con x 0 = 0 y efectuando 10 iteraciones. Cuál es la multiplicidad de la raíz buscada? 22. Demuestre que la sucesión {xn }n definida por xn = 1 nk , n = 12 , ,... con k cualquier entero positivo, converge linealmente a α = 0 . Para cada par de enteros 1 −m k y m, determine un número N para el cual k < 10 . N 23. Suponga que α es una raíz de multiplicidad m de f (x) = 0 , donde f ′′′ es continua en un intervalo abierto que contiene a α. Demuestre que la iteración funcional usando g(x) = x − mf (x) f ′(x) da convergencia cuadrática. 24. Estudie el orden de convergencia de los métodos abiertos aplicados en la solución de cada uno de los ejercicios anteriores. 25. Use el método de Newton-Raphson para aproximar la raíz α = 1 de la ecuación f (x) = x3 − 2x2 + 2x − 1 = 0 , tomando x0 = 0 y x0 = 10 . Termine las iteraciones xn cuando f (xn ) < 5 × 10 −5 , xn − xn −1 < 5 × 10 −5 o n ≥ 25 . Imprima todos los valores 2 2 xn , f (xn ) , ∈n = xn − 1 y ∈n , y verifique que ∈n +1 ≈ ∈n . 26. Aproxime todas las raíces de la ecuación x4 + 2.8 x3 − .38 x2 − 6.3 x − 4.2 = 0 , usando el método de Newton-Raphson y Deflación. 27. Aproxime todas las raíces de la ecuación x8 − x7 − 39 x6 + 37 x5 + 446 x4 − 180 x3 − 1928 x2 − 256 x + 1920 = 0 usando el método de Newton-Raphson y Deflación. Sugerencia: Las raíces son: −2 con multiplicidad 3, 4 con multiplicidad 2, 1, 3 y −5 . 28. Use el método de Newton-Raphson y Deflación para encontrar, con una precisión de 5 × 10 −5 , todos los ceros, todos los puntos críticos y todos los puntos de inflexión de las Capítulo 2. SOLUCIÓN NUMÉRICA DE UNA ECUACIÓN NO-LINEAL EN UNA VARIABLE 93 __________________________________________________________________________________ siguientes funciones. Use la información obtenida para hacer la grafica de cada una de las funciónes f dadas. a) f (x) = x3 − 9 x2 + 12 4 3 2 b) f (x) = x − 2x − 5 x + 12x − 5