5. Raíces de ecuaciones 5.1 Métodos cerrados
Parte II: Análisis Numérico
1
5.1.1 Métodos Gráficos Un método simple para obtener una aproximación a la raíz de la ecuación f(x)=0, consiste en graficar la función y observar donde cruza el eje x.
Ejemplo: Utilizar gráficas por computadora para localizar las raíces de
f(x) = x3 + x2 -3·x+5 Solución.. Utilizando MATLAB, Solución << x=0:0.01:5; << y=x.^3+x.^2-3*x+5; << plot(x,y); << grid on; Parte II: Análisis Numérico
2
40 30 20 10 y
0 -10 -20 -30 -40 -4
-3
-2
-1
0
1
2
3
x
La gráfica muestra la existencia de varias raíces, incluyendo quizás una doble raíz alrededor de x=4.2
Parte II: Análisis Numérico
3
Reduciendo la escala horizontal se obtiene: » x=4.1:0.001:4.4; » y=sin(10*x)+cos(3*x); » plot(x,y); » grid on;
En efecto, hay dos raíces diferentes entre x=4.23 y x=4.26 Parte II: Análisis Numérico
4
5.1.2 El método de bisección En general, si f(x) es real y continua en el intervalo que va desde x l hasta xu y f(xl) y f(xu) tienen signos opuestos, es decir f(xl) f(xu) < 0 entonces hay al menos una raíz real entre xl y xu El método de bisección, conocido también como de corte binario, de partición de intervalos o de Bolzano, es un tipo de búsqueda incremental en el que el intervalo se divide siempre a la mitad. Si el valor de la función cambia de signo, sobre un intervalo, se evalúa el valor de la función en el punto medio. La posición de la raíz se determina situándola en el punto medio del subintervalo, dentro del cual ocurre un cambio de signo. El proceso se repite hasta obtener una mejor aproximación. Parte II: Análisis Numérico
5
Paso 1: Elija valores iniciales inferior, x l , y superior, xu , que encierren la raíz, de forma que la función cambie de signo en el intervalo. Esto se verifica comprobando que f(xl) f(xu) < 0 Paso 2: Una aproximación de la raíz xl se determina mediante:
xr =
xl + xu
2 Paso 3: Realice las siguientes evaluaciones para determinar en que subintervalo está la raíz: a. Si f(xl) f(xr ) < 0 , entonces la raíz se encuentra dentro del subintervalo inferior o izquierdo. Por tanto, haga xu = xr y vuelva al paso 2. b. Si f(xl) f(xr ) > 0, entonces la raíz se encuentra dentro del subintervalo superior o derecho. Por lo tanto, , haga xl = xr y vuelva al paso 2. c. Si f(xl) f(xr ) = 0, entonces la raíz es igual a x r ; termina el cálculo
Parte II: Análisis Numérico
6
Ejemplo
Bisección Planteamiento del problema. Emplee el método de bisección para resolver la ecuación f(x)=(667.38/x)*(1-exp(0.146843 x))-40 Solución. Primera iteración: xl = 12; xu = 16 xr = (12+16) / 2 = 14 f(12) f(14) = (6.067)(1.569) = 9.517 > 0 No hay cambio de signo entre el límite inferior y el punto medio. En consecuencia la raíz debe estar localizada entre 14 y 16. Segunda iteración: xl = 14; xu = 16 xr = (14+16) / 2 = 15 f(14) f(15) = (1.569)(-0.425) = -0.666 < 0 Parte II: Análisis Numérico
7
Tercera iteración: xl = 14; xu = 15 xr = (14+15) / 2 = 14.5
12
16
14
16
14
Parte II: Análisis Numérico
15
8
Criterios de paro y estimaciones de errores
Un criterio objetivo de definir cuándo un método numérico debe terminar, es estimar el error de forma tal que no se necesite el conocimiento previo de la raíz. Como se estudió previamente, se puede calcular el error relativo porcentual εa de la siguiente manera nuevo
ε a
=
xr
− xr anterior nuevo
xr
Cuando εa es menor que un valor previamente fijado εs, termina el cálculo.
Parte II: Análisis Numérico
9
Ejemplo Estimación del error en la bisección Planteamiento del problema. Continuar con el ejemplo anterior hasta que el error aproximado sea menor que el criterio de terminación εs = 0.5%. Solución. Tomando las dos primeras iteraciones, anterior xr nuevo =15; xr =14 |εa| = | (15-14) / 15 | = 0.0667 ≡ 6.667% Iteración 1 2 3 4 5 6
xl 12 14 14 14.5 14.75 14.75
xu 16 16 15 15 15 14.875
xr 14 15 14.5 14.75 14.875 14.8125
Parte II: Análisis Numérico
εa (%)
6.667 3.448 1.695 0.840 0.422
(%) 5.279 1.487 1.896 0.204 0.641 0.219 εt
10
FUNCTION Bisect(xl, xu, es, imax, xr, iter, ea) iter = 0 Do xrold = xr xr = (xl + xu) / 2 iter = iter + 1 IF xr ≠ 0 THEN ea = ABS((xr – xrold)/ xr)*100 END IF test = f(x1)*f(xr) IF test < 0 THEN xu = xr ELSE IF test > 0 THEN xl = xr ELSE ea = 0 END IF IF ea < es OR iter ≥ imax EXIT END DO Bisect = xr END Bisect Parte II: Análisis Numérico
11
5.1.3 Método de la falsa posición
Una técnica alternativa al método de bisección, consiste en unir f(x l) y f(xu) con una línea recta. La intersección de esta línea con el eje de las x representa una mejor aproximación de la raíz. El hecho de que se remplace la curva por una línea recta da una falsa posición de la raíz; de aquí el nombre de método de la falsa posición, o en latín regula falsi . También se la conoce como método de interpolación lineal.
Parte II: Análisis Numérico
12
Usando triángulos semejantes: f ( xl ) x r − xl
=
f(x) f(xu)
f ( xu ) x r − xu
en la cual se despeja xr xr = xu −
xr
f ( xu )( xl − xu ) f ( xl ) − f ( xu )
xl
xu x
Ésta es la ecuación de la falsa posición. El valor de xr calculado reemplazará, después, a cualquiera de los dos valores iniciales xl o xu Parte II: Análisis Numérico
f(xl)
13
Ejemplo Falsa posición Planteamiento del problema. Con el método de la falsa posición determine la raíz de la ecuación f(x)=(667.38/x)*(1exp(- 0.146843 x))-40 Solución Primera iteración: xl=12 f(xl)=6.0699 xu=16 f(xu)=-2.2688 xr =16-(-2.2688(12-16) / … … (6.0669-(-2.2688)) = 14.9113 Segunda iteración: f(xl) f(xr ) = -1.5426 < 0 xl=12 f(xl)= 6.0699 xu=14.9113 f(xu)= -0.2543 xr =14.9113-(-0.2543(12-14.9113) / … … (6.0669-(-0.2543)) = 14.7942
Parte II: Análisis Numérico
14
Ejemplo Un caso en el que la bisección es preferible a la falsa posición Planteamiento del problema. Con los métodos de bisección y falsa posición, localice la raíz de f(x) = x 10-1 Solución. Usando bisección, Iteración
xl
xu
xr
εa(%)
εr (%)
1
0
1.3
0.65
100.0
35
2
0.65
1.3
0.975
33.3
2.5
3
0.975
1.3
1.1375
14.3
13.8
4
0.975
1.375
1.05625
7.7
5.6
5
0.975
1.05625
1.015625
4.0
1.6
Parte II: Análisis Numérico
15
Con el método de falsa posición Iteración
xl
xu
xr
1
0
1.3
0.09430
2
0.0943
1.3
0.18176
48.1
81.8
3
0.18176
1.3
0.26287
30.9
73.7
4
0.26287
1.3
0.33811
22.3
66.2
5
0.33811
1.3
0.40788
17.1
59.2
Parte II: Análisis Numérico
εa(%)
εt(%)
90.6
16
f(x) 15
10
5
0
1
Parte II: Análisis Numérico
x
17
Falsa posición modificada Una forma de disminuir la naturaleza unilateral de la falsa posición consiste en obtener un algoritmo que detecte cuando se estanca uno de los límites del intervalo. Si ocurre esto, se divide a la mitad el valor de la función en el punto de estancamiento. A éste método se le llama método de la falsa posición modificado .
Parte II: Análisis Numérico
18
FUNCTION ModFalsePos(xl, xu, es, imax, xr) iter = 0 fl = f(xl) fu = f(xu) DO xrold = xr xr = xu-fu*(xl - xu)/(fl - fu) fr = f(xr) iter = iter+1 IF xr<>0 THEN ea = Abs((xr-xrold)/xr)*100 END IF test = fl * fr IF test < 0 THEN xu = xr fu = f(xu) iu = 0 il = il+1 IF il ≥ 2 THEN fl = fl / 2 ELSE IF test > 0 THEN xl = xr fl = f(xl) il = 0 iu = iu+1 IF iu ≥ 2 THEN fu = fu/2 ELSE ea = 0 END IF IF ea < es OR iter ≥ imax THEN EXIT END DO ModFalsePos = xr END ModFalsePos
Parte II: Análisis Numérico
19
Ejercicios Ejercicio 5.1 Determine las raíces reales de f(x) = -0.4x 2 + 2.2x + 4.7:
a. Gráficamente b. Usando el método de bisección para determinar la raíz más grande. Emplee como valores iniciales xl=5 y xu=10. Calcule el error estimado εa y el error verdadero εt para cada iteración. Ejercicio 5.2 Calcule la raíz real positiva de f(x)=x4-8x3-36x2+462x
1010 utilizando el método de la falsa posición. Use una gráfica para escoger el valor inicial y realice el cálculo con εs = 1.0 %
Parte II: Análisis Numérico
20
Ejercicio 5.3 La concentración de saturación de oxígeno disuelto en agua se
calcula con la ecuación ln Osf = −139.34411 +
1.575701 × 10
T a
5
−
6.642308 × 10
T a
2
7
+
1.243800 × 10
T a
3
10
−
8.621949 × 10
T a
11
4
donde Osf = concentración de saturación de oxígeno disuelto en agua a 1 atm (mg/L) y Ta = Temperatura absoluta (K). Recuerde que Ta = T + 273.15, donde T = temperatura (ºC). De acuerdo con ésta ecuación, la saturación disminuye con el incremento de la temperatura. Para aguas naturales típicas en climas templados, la ecuación sirve para determinar rangos de concentración de oxígeno desde 14.621 mg/L a 0ºC hasta 6.949 mg/L a 35ºC. Dado un valor de concentración de oxígeno, ésta fórmula y el método de bisección son útiles para resolver la temperatura en ºC. Si los valores iniciales se fijan en 0 y 35ºC, desarrolle y pruebe un programa de bisección para determinar T como una función de una concentración de oxígeno dada. Pruebe el programa para Osf =8, 10 y 14 mg/L. Compruebe sus resultados Parte II: Análisis Numérico
21
5.2 Métodos abiertos
Parte II: Análisis Numérico
22
5.2.1 Iteración simple de punto fijo Los métodos abiertos utilizan una fórmula para predecir la raíz. Esta fórmula puede desarrollarse como una iteración simple de punto fijo (También llamada iteración de un punto o sustitución sucesiva o método de punto fijo), al reordenar la ecuación f(x)=0 de tal modo que x esté del lado izquierdo de la ecuación: 2 x=g(x) x +3 Por ejemplo, x2-2x+3 = 0, se reordena para obtener x = 2 Mientras que sen(x)=0, puede transformarse sumando x a ambos lados para obtener x=sen(x)+x Parte II: Análisis Numérico
23
De ésta manera, dado un valor inicial para la raíz x i , la ecuación anterior puede usarse para obtener una nueva aproximación x i+1, expresada por la fórmula iterativa xi+1=g(xi) El error aproximado se calcula usando el error normalizado: ε a
=
xi +1 − xi xi +1
100%
Parte II: Análisis Numérico
24
Ejemplo
Iteración simple de punto fijo Planteamiento del problema. Use una iteración simple de punto fijo para localizar la raíz de f(x) = e -x - x Solución. xi+1=e-xi i
xi
1 2 3 4 5 6 7 8 9 10
1 0.367879 0.692201 0.500473 0.606244 0.545396 0.579612 0.560115 0.571143 0.564479 Parte II: Análisis Numérico
%
%
100.0 171.8 46.9 38.3 17.4 11.2 5.90 3.48 1.93 1.11
76.3 35.1 22.1 11.8 6.89 3.83 2.20 1.24 0.705 0.399
a
25
Convergencia El error relativo porcentual verdadero en cada iteración del ejemplo anterior, es proporcional (por un factor de 0.5 a 0.6) al error de la iteración anterior. Esta propiedad se conoce como convergencia lineal .
Parte II: Análisis Numérico
26
f(x) Un método gráfico alternativo consiste en separar la ecuación en dos partes, de esta manera
f(x) = e-x - x Raíz
f 1(x)=f 2(x) Entonces las dos ecuaciones f(x)
y1 = f 1(x) y y2 = f 2(x) se grafican por separado. Así, los valores de x correspondientes a Las intersecciones de estas dos funciones representan las raíces de f(x)=0
Parte II: Análisis Numérico
f 2(x) = e-x
f 1(x) = x
Raíz 27
y
y
y1 = x
y1 = x
y2= g(x) y2= g(x) x2 x1 x0
y
y2= g(x)
x0
x0
x
y
y1 = x
y2= g(x)
y1 = x
x0
x
Parte II: Análisis Numérico
x
x
28
FUNCTION Fixpt(x0, es, imax) xr = x0 iter = 0 DO xrold = xr xr = g(xrold) iter = iter+1 IF xr ≠ 0 THEN ea =
xr − xrold xr
⋅ 100
END IF IF ea < es OR iter ≥ imax EXIT END DO Fixpt = xr END fixpt Parte II: Análisis Numérico
29
5.2.2 Método de Newton-Raphson A partir de la expansión en series f(x) de Taylor, se tiene: f ( xi ) − 0 f(xi) f ' ( xi ) = xi − xi +1
Pendiente = f ’(xi)
que se reordena para obtener
xi +1 = xi −
f ( xi )
0
f ' ( xi )
xi+1
xi
x
la cual se conoce como fórmula De Newton Raphson Parte II: Análisis Numérico
30
Ejemplo Método de Newton-Raphson Planteamiento del problema. Utilice el método de Newton Raphson para calcular la raíz de f(x)=e-x – x empleando como valor inicial x0 = 0 Solución. La primer derivada de la función es f ’(x)=-e-x -1 −x e − xi que se sustituye para obtener xi +1 = xi − −x − e −1 i
i
i
xi
0 1 2 3 4
0 0.500000000 0.566311003 0.567143165 0.567143290 Parte II: Análisis Numérico
t
(%)
100 11.8 0.147 0.0000220 < 10-8 31
Algoritmo 1. 2.
3.
4.
Se debe incluir una rutina de graficación en el programa Al final de los cálculos, se necesitará sustituir siempre la raíz final calculada en la función original, para determinar si el resultado se acerca a cero. Esta prueba protege el desarrollo del programa contra aquellos casos en los que se presenta convergencia lenta u oscilatoria, la cual puede llevar a valores pequeños de εa, mientras que la solución aún está muy lejos de una raíz. El programa deberá incluir siempre un límite máximo permitido del número de iteraciones para estar prevenidos contra soluciones oscilantes, de lenta convergencia o divergentes que podrían persistir en forma interminable. El programa deberá alertar al usuario para que tome en cuenta la posibilidad de que f ‘(x) sea igual a cero en cualquier momento durante el cálculo. Parte II: Análisis Numérico
32
5.2.3 El método de la secante Un problema potencial en la implementación del método de Newton Raphson es la evaluación de la derivada. En casos complejos, la derivada se puede aproximar mediante una diferencia finita dividida hacia atrás f(x i) f ( xi −1 ) − f ( xi ) f ' ( xi ) ≡
xi −1 − xi
Sustituyendo en la ecuación de Newton - Raphson xi +1 = xi −
f(x i-1)
f ( xi )( xi −1 − xi )
x i-1
xi
f ( xi −1 ) − f ( xi ) Parte II: Análisis Numérico
33
Ejemplo El método de la secante Planteamiento del problema. Con el método de la secante, calcule la raíz de f(x)=e-x –x. Comience los cálculos iniciales con los valores x-1=0 y x0 = 1.0. Solución. Primera iteración: x-1=0 f(x-1)=1 x0 =1 f(x0)=-0.63212 x1=1-((-0.63212)(0-1)/(1-(-0.63212)))=0.61270 Segunda iteración x0=1 f(x0)=-0.63212 x1 =0.61270 f(x1)=-0.07081 x2=0.61270-((-0.0708)(1-0.61270)/(-0.63212- … … (0.07081))) = 0.56384 Parte II: Análisis Numérico
34
Método de la secante modificada
En lugar de considerar dos valores arbitrarios para aproximar la derivada, un método alternativo considera un cambio fraccionario de la variable independiente para estimar f’(x),
f ' ( x) ≅
f ( xi + δ xi ) − f ( xi ) δ xi
donde d es un pequeño cambio fraccionario. Ésta aproximación se sustituya en la ecuación de la secante para obtener la siguiente expresión iterativa:
xi +1 = xi −
δ x i
f ( xi )
f ( xi + δ xi ) − f ( xi )
Parte II: Análisis Numérico
35
Ejercicios Ejercicio 5.4 Evaluar las raíces de las siguientes ecuaciones
trascendentes a. sin x - 2exp(-x 2) = 0 b. ax - a x = 0 para a = 2, e , or 3 c. ln(1 + x 2) – x1/2= 0 d. e-x /(1 + cos x ) - 1 = 0
Parte II: Análisis Numérico
36
Ejercicio 5.5 Para el flujo turbulento de un fluido a través de un tubo
liso, es posible establecer la siguiente relación entre el factor de fricción c f y el número de Reynolds Re :
Calcular c f para Re = 104, 105 y 106.
Parte II: Análisis Numérico
37
Ejercicio 5.6 Desarrolle una función para calcular el volumen
específico de un gas puro, dada la temperatura y la presión usando la ecuación de estado de Soave-Redlich-Kwong
Las constantes a y b son obtenidas de las ecuaciones
Parte II: Análisis Numérico
38
donde Pc y Tc son la presión crítica y temperatura crítica respectivamente. La variable α es una función empírica de la Temperatura
El valor de S es una función del factor acéntrico ω
Las propiedades físicas del n-butano son
Parte II: Análisis Numérico
39
y la constante de los gases R es
Calcule el volumen específico del vapor de n-butano a 500 K y en un rango de presiones de 1 a 40 atm. Compare los resultados gráficamente con aquellos que se obtienen de la ley de los gases ideales. ¿Qué conclusión obtiene de ésta comparación gráfica?
Parte II: Análisis Numérico
40
Ejercicio 5.7 Repita el ejercicio 5.6 usando las ecuaciones de estado
de Benedict-Webb-Rubin (BWR) y Patel-Teja (PT). Compare gráficamente los resultados con los obtenidos en el ejercicio 3. La ecuación de estado de Benedict-Webb-Rubin (BWR) es
donde A0, B 0, C 0, a , b , c , α, y γ son constante. Donde P está en atmósferas, V está en litros por mol, y T está en kelvin, Los valores de las constantes para el n -butano son:
Parte II: Análisis Numérico
41
La ecuación de estado de Patel-Teja es
Donde a es función de la temperatura, y, b y c son constantes
donde
Parte II: Análisis Numérico
42
y Ωb es la más pequeña de las raíces positivas del polinomio cúbico
F y ζc son funciones del factor acéntrico
Parte II: Análisis Numérico
43
Ejercicio 5.8 La ecuación de Underwood para destilación
multicomponente está dada por
donde F = tasa de flujo molar de la alimentación n = numero de componentes en la alimentación z jF = fracción molar de cada componente en la alimentación q = calidad de la alimentación α j = volatilidad relativa de cada componente en condiciones promedio de la columna φ = raíz de la ecuación
Parte II: Análisis Numérico
44