Está en la página 1de 21

Método de Runge-Kutta

Método de Runge-Kutta 1 / 16
Método de Runge-Kutta

+ Para compensar la desventaja del método de Euler.

Método de Runge-Kutta 2 / 16
Método de Runge-Kutta

+ Para compensar la desventaja del método de Euler.


+ Una clase general de algoritmos

Método de Runge-Kutta 2 / 16
Método de Runge-Kutta

+ Para compensar la desventaja del método de Euler.


+ Una clase general de algoritmos
+ El método de cuarto orden el más popular.

Método de Runge-Kutta 2 / 16
Método de Runge-Kutta

4 Estos métodos del artículo de Runge de 1895 son de "segundo orden" porque
el error en un solo paso se comporta como O(h3 ).

Método de Runge-Kutta 3 / 16
Método de Runge-Kutta

4 Estos métodos del artículo de Runge de 1895 son de "segundo orden" porque
el error en un solo paso se comporta como O(h3 ).
4 Unos años más tarde, Heun dio una explicación completa de los métodos de
orden 3 y Kutta dio un análisis detallado de los métodos de orden 4.

Método de Runge-Kutta 3 / 16
Método de Runge-Kutta

4 Estos métodos del artículo de Runge de 1895 son de "segundo orden" porque
el error en un solo paso se comporta como O(h3 ).
4 Unos años más tarde, Heun dio una explicación completa de los métodos de
orden 3 y Kutta dio un análisis detallado de los métodos de orden 4.
4 En los primeros días de los métodos de Runge-Kutta, el objetivo parecía ser
encontrar métodos explícitos de orden superior y superior.

Método de Runge-Kutta 3 / 16
Método de Runge-Kutta

4 Estos métodos del artículo de Runge de 1895 son de "segundo orden" porque
el error en un solo paso se comporta como O(h3 ).
4 Unos años más tarde, Heun dio una explicación completa de los métodos de
orden 3 y Kutta dio un análisis detallado de los métodos de orden 4.
4 En los primeros días de los métodos de Runge-Kutta, el objetivo parecía ser
encontrar métodos explícitos de orden superior y superior.
4 Más tarde, el objetivo cambió a buscar métodos que parecieran óptimos en
términos de error de truncamiento local y encontrar estimadores de error
incorporados.

Método de Runge-Kutta 3 / 16
Método de Runge-Kutta

El método de Runge-Kutta tiene las siguientes ecuaciones de recurrencia:

(k1 + 2 k2 + 2 k3 + k4 )
yn+1 = yn +
6

donde

k1 = h · f (xn , yn )
h k1
k2 = h · f (xn + , yn + )
2 2
h k2
k3 = h · f (xn + , yn + )
2 2
k4 = h · f (xn + h, yn + k3 )

Método de Runge-Kutta 4 / 16
Ejemplo: Utilice el Método de orden 4 de Runge-Kutta para resolver lo siguiente,
utilizando un tamaño de paso h = 0.1 para 0 ≤ x ≤ 1

5x2 − y
y0 =
ex+y
y(0) = 1

Método de Runge-Kutta 5 / 16
Solución
Empezamos con x = 0 y y = 1.
Los valores de ki primero:

k1 = h · f (xn , yn )
h k1
k2 = h · f (xn + , yn + )
2 2
h k2
k3 = h · f (xn + , yn + )
2 2
k4 = h · f (xn + h, yn + k3 )

Método de Runge-Kutta 6 / 16
k1 = h · f (x, y)
5(0)2 − 1
= 0.1 = −0.03678794411
e0+1

h 0.1
h k1 x+ = 0+
k2 = h · f (x + , y + ) 2 2
2 2
2
! = 0.05
5(0.05) − 0.98160602794
k2 = 0.1 · k1 − 0.03678794411
e0.05+0.98160602794 y+ = 1+
2 2
= −0.03454223937 = 0.98160602794

Método de Runge-Kutta 7 / 16
h 0.1
h k2 x+ = 0+
k3 = h · f (x + , y + ) 2 2
2 2 ! = 0.05
5(0.05)2 − 0.98272888031
k3 = 0.1 · k2 − 0.03454223937
e0.05+0.98272888031 y+ = 1+
2 2
= −0.03454345267 = 0.98272888031

x + h = 0 + 0.1
k4 = h · f (x + h, y + k3 )
! = 0.1
5(0.1)2 − 0.96545654732
= 0.1 · y + k3 = 1 − 0.03454345267
e0.1+0.96545654732
= 0.96545654732
= 0.03154393258

Método de Runge-Kutta 8 / 16
(k1 + 2 k2 + 2 k3 + k4 )
yn+1 = yn +
6
(−0.036787944 − 2 · 0.0345422393 − 2 · 0.0345434526 − 0.0315439325)
= 1+
6
= 0.9655827899

Usando este nuevo valore de y, comenzaríamos de nuevo, encontrando el nuevo


valores ki sustituiendo en la fórmula de Runge-Kutta.

Método de Runge-Kutta 9 / 16
x y k1 k2 k3 k4 yn+1
0 1 -0.036787944 -0.034542239 -0.034543453 -0.031543933 0.96558279
0.1 0.96558279 -0.0315443 -0.027876928 -0.027886795 -0.023647342 0.937796275
0.2 0.937796275 -0.023648185 -0.018926776 -0.018954809 -0.01385766 0.918918106
0.3 0.918918106 -0.013858863 -0.00847824 -0.008531417 -0.002977303 0.910442193
0.4 0.910442193 -0.002978634 0.002660433 0.002580704 0.008202238 0.913059839
0.5 0.913059839 0.008201035 0.013727301 0.013625887 0.018973147 0.926706599
0.6 0.926706599 0.018972298 0.02407942 0.023965871 0.028775215 0.950679614
0.7 0.950679614 0.028774872 0.033244862 0.033130513 0.037231289 0.983805766
0.8 0.983805766 0.037231525 0.040940875 0.040835975 0.044148456 1.024628046
0.9 1.024628046 0.044149261 0.047059381 0.046971228 0.049491618 1.071578395
1 1.071578395

Método de Runge-Kutta 10 / 16
Ejemplo: Dado el y0 = 1 − ty con y(0) = 1, aproximado y(1) con tamaño de paso 1.

Método de Runge-Kutta 11 / 16
Solución
t0 = 0, y0 = 1, and h = 1
Los valores de ki primero:

k1 = h · f (xn , yn )
h k1
k2 = h · f (xn + , yn + )
2 2
h k2
k3 = h · f (xn + , yn + )
2 2
k4 = h · f (xn + h, yn + k3 )

Método de Runge-Kutta 12 / 16
k1 = h · f (xn , yn ) = 1 · f (0, 1) = 1
h k1
k2 = h · f (xn + , yn + ) = 1 · f (0.5, 1.5) = 0.25
2 2
h k2
k3 = h · f (xn + , yn + ) = 1 · f (0.5, 1.125) = 0.4375
2 2
k4 = h · f (xn + h, yn + k3 ) = 1 · f (1, 1.4375) = −0.4375

(k1 + 2 k2 + 2 k3 + k4 )
yn+1 = yn +
6
y1 = 1.3229166667

Método de Runge-Kutta 13 / 16

Ejemplo: Dado el y0 = x y con y(0) = 1; 0 ≤ x ≤ 2; h = 0.5

Método de Runge-Kutta 14 / 16
Solución
x0 = 0, y0 = 1, and h = 0.5
Los valores de ki primero:

k1 = h · f (xn , yn )
h k1
k2 = h · f (xn + , yn + )
2 2
h k2
k3 = h · f (xn + , yn + )
2 2
k4 = h · f (xn + h, yn + k3 )

Método de Runge-Kutta 15 / 16
x y k1 k2 k4 3 k4 yn+1
0 1 0 0.25 0.257 0.531 1.1288
0.5 1.1288 0.5312 0.8424 0.8679 1.25 1.5624
1 1.5624 1.2499 1.7114 1.7633 2.0914 2.4199
1.5 2.4199 3.1112 4.0234 4.1644 5.3045 4.4858
2 4.4858

Método de Runge-Kutta 16 / 16

También podría gustarte