[ Runge Kutta 4to Orden ] [ Función ] [ Ejercicio en video ]
EDO Runge-Kutta 4to Orden de Primera derivada dy/dx
Referencia: Chapra 25.3.3 p746, Rodríguez 9.1.8 p358
Para una ecuación diferencial de primera derivada (primer orden) con una condición de inicio:
La fórmula de Runge-Kutta de 4to orden realiza una corrección con 4 valores de K:
debe ser equivalente a la serie de Taylor de 5 términos:
Runge-Kutta 4do Orden tiene error de truncamiento O(h5)
Ejercicio
Para el desarrollo analítico se tienen las siguientes expresiones para el ejercicio usado en Runge-Kutta de orden 2, que ahora será con orden 4:
Se usa las expresiones de Runge-Kutta en orden, K1 corresponde a una corrección de EDO con Taylor de dos términos (método de Euler). K2 considera el cálculo a medio tamaño de paso más adelante.
iteración:
Las iteraciones se dejan como tarea
[ Runge Kutta 4to Orden ] [ Función ] [ Ejercicio en video ]
Algoritmo en Python como Función
def rungekutta4(d1y,x0,y0,h,muestras, vertabla=False, precision=6): ''' solucion a EDO con Runge-Kutta 4do Orden primera derivada, x0,y0 son valores iniciales, tamaño de paso h. muestras es la cantidad de puntos a calcular. ''' # Runge Kutta de 4do orden tamano = muestras + 1 tabla = np.zeros(shape=(tamano,2+4),dtype=float) # incluye el punto [x0,y0,K1,K2,K3,K4] tabla[0] = [x0,y0,0,0,0,0] xi = x0 yi = y0 for i in range(1,tamano,1): K1 = h * d1y(xi,yi) K2 = h * d1y(xi+h/2, yi + K1/2) K3 = h * d1y(xi+h/2, yi + K2/2) K4 = h * d1y(xi+h, yi + K3) yi = yi + (1/6)*(K1+2*K2+2*K3 +K4) xi = xi + h tabla[i] = [xi,yi,K1,K2,K3,K4] if vertabla==True: np.set_printoptions(precision) titulo = ' [xi, yi, K1, K2, K3, K4 ]' print(' EDO con Runge-Kutta 4do Orden primera derivada') print(titulo) print(tabla) return(tabla)
Note que el método de Runge-Kutta de 4to orden es similar a la regla de Simpson 1/3. La ecuación representa un promedio ponderado para establecer la mejor pendiente.
[ Runge Kutta 4to Orden ] [ Función ] [ Ejercicio en video ]
Ejercicio
2Eva_IT2018_T1 Paracaidista wingsuit
Solución Propuesta: s2Eva_IT2018_T1 Paracaidista wingsuit
La segunda parte corresponde a Runge-Kutta de 4to Orden
[ Runge Kutta 4to Orden ] [ Función ] [ Ejercicio en video ]