U7Libro4 PDF

You might also like

Download as pdf
Download as pdf
You are on page 1of 11
25.3 METODOS DE RUNGE-KUTTA 743 +k, + 2k, + 2% bre tah ha + ist (25.40) donde ky = flan yo) (25.400) 1 1 k= A(x + ght a) (25.406) 1 1 by = (21+ 5h 9 + hah (25.40) ka = f(a) +A, yi + hh) (25.40d) Observe que para las EDO que sélo son funcién de x, el método RK clasico de cuarto orden es similar a la regla de Simpson 1/3. Ademés, el método RK de cuarto orden tiene similitud con el procedimiento de Heun en cuanto a que las estimaciones miltiples de la pendiente son desarrolladas para alcanzar una pendiente promedio ‘mejorada para el intervalo. Como se muestra en ia figura 25.15, cada una de las k repre- senta una pendiente, La ecuacién (25.40) entonces representa un promedio ponderado de éstas para llegar a la pendiente mejorada, FIGURA 25.15 llusiacién gréfico de los pendientes estimadas, entre la que se cuenta el método RK de cuatto orden, 744 EJEMPLO 25.7 METODOS DE RUNGE-KUTTA Método RK clasico de cuarto orden Enunciado del problema. Use el método RK clisico de cuarto orden [véase ecuacién (25.40)] para integrar a) Hx, y) = —2x7 + 12x? ~ 202 + 8.5 ‘mediante un tamafio de paso de h = 0.5 y una condieién inicial de y = 1 enx = 0; y 8) fx, y) = 46 —0.5y usando A = 0.5 con y(0) = 2 desdex = 0 hasta 0.5. Solucién. a) Se usa desde In ecuacién (25.40a) hasta la (25.40d) para caleular ky = 8.5, ky = 4.21875, ky = 4.21875 y ky = 1.25; las cuales se sustituyen en la ecuacién (25.40) para obtener 1 90.5) = 1+ {zt 5 + 2(4.21875) + 2(4.21875) + 1.25] } 05 = 3.21875 Ia cual es exacta. Asi, como la solucién verdadera es de cuarto orden [véase ecua- cién (PT7.16)], el método de cuarto orden da un resultado exacto. 4) Para este caso, la pendiente al inicio del intervalo se calcula como ky = 0.2) 48 — 0.52) Este valor se usa para calcular un valor de y y una pendiente en el punto medio, ¥(0.25) = 2+ 3(0.25) = 2.75 ka = f(0.25, 2.75) = 40829 — 0.5(2.75) = 3.510611 Esta pendiente a su vez se utiliza para calcular otro valor de y y otra pendiente en el punto medio, * y(0.25) = 2+ 3.510611(0.25) = 2.877653 ky = (0.25, 2.877653) = 4e°*29 _ 0.5(2.877653) = 3.446785 Después, esta pendiente se usard para calcular un valor de y y una pendiente al final del intervalo, y(O.5) = 2+ 3.071785(0.5) = 3.723392 ka = f(O.S, 3.723392) = 40°80 — 0,5(3.723392) = 4.105603 Por iiltimo, las cuatro estimaciones de la pendiente se combinan para obtener una pendiente promedio. Esta tiltima es entonces usada para realizar la prediccién con- cluyente al final del intervalo, 25.3_ METODOS DE RUNGE-KUTTA ams 1 | o= gb + 2(3.510611) + 2(3.446785) + 4.105603] = 3.503399 y(0.5) = 2 + 3.503399(0.5) = 3.751669 L a cual se compara de manera favorable con la solucién verdadera de 3.751521. 25.3.4 Métodos de Runge-Kutta de orden superior Donde se requiere resultados mis exactos, es recomendable el método de Butcher (1964) y el método RK de quinto orden: (Th, + 32k; + 12k, + 32k, + Thadh (25.41) (25.414) 1 st hah (25.416) b= f(x + thy + thik + Leh 25.4lc) flat ghoit ghht pe (25.6) 1 1 k= A(x + phy — hah + ht) (25.41d) 3 3 9 ks = A(x + Gh t jek + zit) (25.41e) 3 2 a 2 8 k= A(x thay = Ghiht Shah + hah hah 3st) 2541p) Observe la similitud entre el método de Butcher y la regla de Boole en la tabla 21.2. Estin disponibles las fSrmulas RK de orden superior como el método de Butcher, pero en general, la ganancia en exactitud para métodos mayores de cuarto orden esta afectada por el esfuerzo computacional y complejidad adicional. EJEMPLO 25.8 Comparacién de los métodos de Runge-Kutta Enunciado del problema. Use los métodos RK desde el primero hasta el quinto orden | pera esaver fla, y) = 4° —0.5y 746 METODOS DE RUNGE-KUTTA con y(0) = 2 desde x = O hasta x = 4 con varios tamafios de paso. Compare la exactitud de los diferentes métodos con el resultado en x = 4 con base en la respuesta exacta y(4) = 75.33896. Solucién. Se realiza el célculo mediante los métodos de Euler, el no iterativo de Heun, e1RK de tercer orden [véase ecuacién (25.39)], el RK clésico de cuarto orden y el RK de Butcher de quinto orden. Los resultados se presentan en la figura 25.16, donde graficamos el valor absoluto del error relativo porcentual contra el esfuerzo computacional. Esta ‘iltima cantidad es equivalente al mimero requerido de evaluaciones de la funcién para obtener el resultado, como en Esfuerzo = " (£25.81) h donde n, = nimero de evaluaciones de la funcién involucradas en particular en el calcu- Jo RK. Para érdenes < 4, nes igual al orden del método; sin embargo, observe que la técnica de Butcher de quinto orden requiere seis evaluaciones de la funcién [véase ecuaciénes (25.41a) a la (25.41))]. La cantidad (6 — a)/h es la integracién total del intervalo dividida entre el tamafio de paso (es decir, es el mimero de aplicaciones de la FIGURA 25.16 Comporacién del enor relative porceniual cont el esfuerzo computacional para los métodos RK desde el primero hasia el quinto orden, 25.3 _METODOS DE RUNGE-KUTTA 7A7 técnica RK para obtener resultado). Asi, como las evaluaciones de la funcién son con frecuencia pasos consumidores de tiempo, la ecuacién (E25.8.1) proporciona una medi- da burda del tiempo de ejecucién requerido para alcanzar la respuesta La inspeccién de la figura 25.16 nos lleva a diferentes conclusiones: primero, los métodos de otden superior alcanzan mayor exactitud para el mismo esfuerzo compu- tacional; segundo, la ganancia en exactitud con el esfuerzo adicional tiende a disminuir después de un punto. (Observe que las curvas primero caen con rapidez y después tien- den a nivelarse.) El ejemplo 25.9 y la figura 25.16 podrian llevamnos a la conclusin de que las técni- cas RK de orden superior son siempre los métodos de preferencia. Sin embargo, otros factores tales como el costo de programacién y los requerimientos de exactitud del pro- blema deben ser considerados cuando se elija una técnica de solucion. Tales elementos de juicio se exploraran con detalle en las aplicaciones de ingenieria en el capitulo 28 y en el epilogo de la parte siete. 25.3.5 Algoritmos de cémputo para los métodos de Runge-Kutta Como con todos los métodos expuestos en este capitulo, las técnicas RK se ajustan muy bien al algoritmo general delineado en la figura 25.7. La figura 25.17 presenta el pseudocédigo para determinar la pendiente del método RK clasico de cuarto orden [véa- se ecuacién (25.40)]. Las subrutinas que calculan las pendientes para todas las otras versiones se pueden programar facilmente en forma similar. FIGURA 25.17 Pseudocédigo pora determinar un solo paso del método RK de cuarto orden SUB RK4 (x, y, h, yrew) CALL Deriva(x,y, kl) ym =y +k h/2 CALL Derive(x + h/2, ym, K2) ym zy +k2-h/2 CALL Derive(x + h/2, ym, k5) ye=y+k3-h CALL Derive(x + h, ye, k4) slope = (Kl + 2(k2 + kB) + k4Y/6 ynew = y+ slope -h x=xth END SUB 748 25.4 EJEMPLO 25.9 | METODOS DE RUNGE-KUTTA SISTEMAS DE ECUACIONES Muchos problemas practicos de ingenieria y ciencia requieren la solucién de un sistema de ecuaciones diferenciales ordinarias simultineas més que una sola ecuacién. Tales sistemas pueden representarse por lo general como dy dx dy = fC Ye Ys vo nd Lr Ys Ya vee nd an Ge 7 Fa Ye Yass Ind (25.42) La solucién de tal sistema requiere de que se conozcan las n condiciones iniciales en el valor inicial de x. 25. Método de Euler Todos los métodos analizados en este capitulo para simples ecuaciones pueden extender- se al sistema que se mostré antes. Aplicaciones en la ingenieria pueden involucrar miles de ecuaciones simultineas. En este caso, el procedimiento para resolver un sistema de ecuaciones simplemente involucra aplicar la técnica de un paso para cada ecuacién en cada paso antes de proceder con el siguiente. Esto se ilustra mejor con el siguiente ejem- plo para el método de Euler simple. Resoluci6n de sistemas de EDO mediante el método de Euler Enunciado del problema. Resuelva el siguiente conjunto de ecuaciones diferenciales usando el método de Euler, suponiendo que x = 0, y, = 4y yy = 6. Integre para x = 2 con un tamafio de paso de 0.5. ay, dy Bia 05, GP =4-03y-O1y: Solucién. Se implementa el método de Euler para cada variable como en la ecuacién (25.2) (0.5) = 4+ [-0.5(4)]0.5 = y2(0.5) = 6 + [4 — 0.3(6) — 0.1(4)]0.5 = 6.9 Observe que y;(0) = 4 se usa en la segunda ecuacién mas que la y,(0.5) = 3 calculada con la primera ecuacién. Al proceder de manera similar se tiene 25.4 _SISTEMAS DE ECUACIONES: 749 x n Ya ° 4 6 0.5 3 69 10 2.25 7715 15 1.6875 8.44525 20 1.265625 9.098087 EJEMPLO 25.10 25.4.2 Métodos de Runge-Kutta Observe que cualquiera de los métodos RK de orden superior expuestos en este capitulo se pueden aplicar a sistemas de ecuaciones. Sin embargo, debe tenerse cuidado al deter- minar las pendientes, La figura 25.15 es itil para visualizar la forma adecuada de hacer esto para el método de cuarto orden. Es decir, desarrollamos primero las pendientes pra todas las variables en el valor inicial. Esas pendientes (un conjunto de las k,) se usardn entonces para hacer predicciones de la variable dependiente en el punto medio de! inter- valo. Dichos valores de punto medio se utilizan, a su vez, para calcular un conjunto de pendientes en el punto medio (as &,). Esas nuevas pendientes se toman como punto de inicio para hacer otro conjunto de predicciones de punto medio que arriben a nuevas predicciones de pendiente en el punto medio (las k;). Estas después se emplearén con el fin de hacer predicciones al final del intervalo y serin usadas para desarrollar pendientes al final del intervalo (las k,). Por iltimo, las k se combinan en un conjunto de funciones incremento (como en Ja ecuacién (25.40)] y son Ilevadas de nuevo al inicio para hacer la prediccién final. El siguiente ejemplo ilustra el procedimiento. Resolucién de sistemas de EDO mediante el método RK de cuarto orden Enunciado del problema. Use el método RK de cuarto orden para resolver las EDO. del ejemplo 25.9. Soluc Primero, debemos ‘resolver para todas las pendientes al inicio del intervalo: ku = f(0, 4, 6) = -0.5(4) = -2 kya = f(0, 4,6) = 4 -0.3(6) - 0.1(4) = 1.8 donde k, es el i-ésimo valor de k para la j-ésima variable dependiente, Después, debe-~ ‘mos calcular los primeros valores de y, y y2 en el punto medio: A nthag dt (-2 h vit hay = 64 (18 los cuales se usarin para calcular el primer conjunto de pendientes de punto medio, ko. = f(0.25, 3.5, 6.45) = ka2 = (0.25, 3.5, 6.45) = 1. 750 METODOS DE RUNGE-KUTTA Estos se usan para determinar el segundo conjunto de predicciones de punto medio, yu that 441 15)93 3.5625 h 05 yat hers = 6+ (1.715) = 6.42875 el cual seré utilizado para calcular el segundo conjunto de pendientes de punto medio, ky = f(0.25, 3.5625, 6.42875) = 1.78125 ks2 = f(0.25, 3.5625, 6.42875) = 1.715125 Estos se utilizarn para determinar las predicciones al final del intervalo 3.109375 857563 yy ky th = 4+ (1.78125)0.5 Yat ky gh = 6 + (1.715125)(0.5) = Jos cuales seran usados para calcular las pendientes al final de! intervalo, 4.1 = f(0.5, 3.109375, 6.857563) = —1.554688 a2 = f(0.5, 3.109375. 6.857563) = 1.631794 Los valores de k se pueden entonces usar para calcular [véase ecuacién (25.40)]: yi(0.5) = 4+ B-242-1 75 = 1.78125) ~ 1.554688}0.5 = 3.115234 92(0.5) = 6 + gus 420.715 + 1.715125) + 1.631794}0.5 = 6.857670 ‘Al proceder en forma similar para los pasos restantes, se obtiene x n Ya ° 4 6 os 3.115234 6.857670 10 2.426171 7.632106 ws 1.889523 8.326886 2.0 1.471577 8.946865 25.4.3 Algoritmo de computo para resolver sistemas de EDO El eédigo de cémputo para resolver una simple EDO con el método de Euler (véase figura 25.7) puede facilmente extenderse a sistemas de ecuaciones. Las modificaciones incluyen: EJEMPLO 25.11 25.4 _ SISTEMAS DE ECUACIONES 751 1. _Introducir el niimero de ecuaciones, n. Integrar los valores iniciales para cada una de las n variables dependientes. 3. Modificar el algoritmo de tal manera que calcule las pendientes para cada una de las variables dependientes, 4, Incluir ecuaciones adicionales con el fin de calcular valores de las derivadas para cada una de las EDO. 5. Incluir ciclos con el propésito de calcular un nuevo valor para cada variable depen- diente. : Tal algoritmo se bosqueja en la figura 25.18 para el método RK de cuarto orden. ‘Observe cémo es similar en estructura y organizacién ala figura 25.7. La mayoria de las diferencias se relacionan con el hecho de que 1) trata con 7 ecuaciones y 2) el detalle adicional del método RK de cuarto orden. Resolucién de sistemas de EDO con la computadora Enunciado del problema. En el software TOOLKIT de métodos numéricos asociado con el texto, se tiene un programa de cémputo de uso amigable para implementar el método RK de cuarto orden a sistemas. Este software es conveniente para comparar diferentes modelos de un sistema fisico. Por ejemplo, un modelo lineal para un péndulo oscilante esta dado por {recuerde la ecuacién (PT7.11)] =y Bei n = yt donde y; y yz = desplazamiento angular y velocidad. Un modelo no lineal del mismo sistema es [recuerde la ecuacién (PT7.9)] ayy 4 ax Ix -16.1 sen ys) donde y; y y4 = desplazamiento angular y velocidad para el caso no lineal, Use el TOOLKIT de métodos numéricos para resolver estos sistemas en dos casos: a) un pe- queiio desplazamiento inicial (y, = y = 0.1 radianes; y) = y, = 0) yd) un gran despla- zamiento (y, = y; = 7/4 = 0.785398 radianes; y, = y, = 0). Solucién. Presione el botén Solve de las EDO en el ment principal del TOOLKIT para tener una pantalla similar a la figura 25.19a. Dicha pantalla contiene espacios para la ‘entrada y salida de informacién asociada con la solucién de hasta S EDO simulténeas de primer orden. @) Introduzca los valores apropiados para Start X (inicio de X), Finish X (termina X), Step Size (tamaiio de paso), Output Interval (intervalo de salida) y los pardmetros para la grafica como se muestra en la figura 25.19a. Introduzca las ecuaciones y valores iniciales y después haga clic sobre el botén Cale. Después haga clic en las cuatro variables que quiera desplegar en la parte superior de la grifica (Y1 ,¥2,Y3 y Y4) y haga clic en el botén Plot. Los resultados calculados para los modelos lineal PROBLEMAS 761 paso de 0.5 y una € = 0.00005. Los resultados se superponen en la figura 25.235. Obser- ve cémo se toman grandes pasos en las regiones de cambio gradual. Después, en la vecindad dex = 2 disminuyen los pasos para tomar en cuenta la naturaleza abrupta de la funcién forzada, La utilidad de un esquema de integracién adaptativo obviamente depende de la na- turaleza de las funciones que habrin de modelarse. Es en particular ventajoso para aque- las soluciones con grandes tramos uniformes y con regiones cortas de cambio abrupto. Ademis, tiene utilidad en aquellas situaciones donde no se conoce de anfemano el tama- fio correcto de paso. Para esos casos, la rutina adaptativa “sentiré” su camino para la solucién mientras mantiene los resultados dentro de la tolerancia deseada. Asi, andard lento por regiones de cambio abrupto y aceleraré el paso cuando las variaciones sean mis graduales, PROBLEMAS 25.1 Resuelva el siguiente problema de valor inicial de manera a para el intervalo que va de x = 0.2: 4 a Bayt 12, a~” > donde y(0) = 1. Grafique la solucién, 25.2 Use el método de Euler con h = 0.5 y 0.25 para resolver el problema 25.1. Grafique los resultados sobre la misma gréfica para comparar visualmente la exactitud de los dos tamafos de aso. 25.3 Use el método de Heun con h = 0.5 para resolver el proble- ‘ma 25.1. Itere el corrector con , = 1%. 25.4 Use el método de punto medio con resolver el problema 25.1. 25.5Use el método clasico RK de cuarto orden con h = 0.5 para resolver el problema 25.1. 25.6 Repita los problemas del 25.1 al 25.5, pero ahora para el siguiente problema de valor inicial sobre el intervalo que va de x =0al: = 05 y 025 para 2 Lato (0) = 1 7 (0) 25.7 Use los métodos a) de Euler yb) de Heun (sin iteracién) para resolver ay oo tty =0 aaotty donde y(0) = 2 y y'(0) = 0, Resuelva desde x = 0 hasta 4 me- diante h = 0.1. Compare ios métodos al graficar las soluciones. 25.8Resuelva el siguiente problema con el método RK de cuar- tocorden: PY 95d? 1 sos ery= Ga tosZ +1y=0 donde y(0) = 4 y y(0) = 0. Resuelva desde x = Ohasta S.con h = 0.5. Grafique sus resultados. 25.9 Resuelva desde 1 = 0 hasta 3 con h = 0.1 usando a) el método Heun (sin corrector) y 8) el método RK de segundo or- den o de Ralston: Yay sen) (0) =1 dt 28.10 Resuelva el siguiente problema en forma numérica desde ¢ = Ohasta 3: 4) grt Use el método RK de tercer orden con un tamafio de paso de 0.5, 28.11 Use el método a) de Euler y 5) e! método RK de cuarto orden para resolver 90) =1 D = -2y+5e* sobre el rango que va dex = 0 a I mediante un tamafio de paso de 0.2 con y(0) = 2y 20) = 4. 762 METODOS DE RUNGE-KUTTA, 25,12 Calcule el primer paso del ejemplo 25.14 usando el méto- do adaptativo RK de cuarto orden con h = 0.5. Verifique si el ajuste paso-tamaiio.es el correcto, 25.13 Si é = 0.001, determine si se requiere un ajuste en el ta- ‘mafio de paso para el ejemplo 25.12. 25.14 Use el procedimiento RK-Fehlberg para realizar el mismo célculo que en el ejemplo 25.12 desde x = Ohasta I con h = 1. 28.18 Escriba un programa en computadora con base en la figu- Fa 25.7. Entre otras cosas, inserte comentarios para la documen- tacién del programa con el fin de identificar lo que en cada seccién se intenta realizar 25.16 Pruebe el programa que usted desarrollé en el problema 25.15 con los mismos céleulos por realizar de los ejemplos 25.1 y254. 25.17 Desarrolle un programa de uso amigable para el método dde Heun con un corrector iterativo, Pruebe el programa usando Jos resultados de la tabla 25.2. 2.18 Desarrolle un programa de cmputo de uso amigable para el método clisico RK de cuarto orden. Pruebe el programa con Jos mismos célculos por realizar del ejemplo 25.7 y del proble- ma 25: 25.19 Desarrolle un programa de cémputo de uso amigable para sistemas de ecuaciones mediante el uso del método RK de cuar- to orden, Use este programa con los mismos célculos por reali- zar del ejemplo 25.10.

You might also like