Recordatorio: Métodos numéricos para EDOs
Son métodos directos (no iterativos) que avanzan paso a paso desde \((x_0, y_0)\) hasta \(x_{\text{final}}\). Necesitamos la EDO en forma \(y' = f(x,y)\) y el tamaño de paso \(h = \frac{x_{\text{final}} - x_0}{n}\).
Euler (1° orden): \(\;y_{n+1} = y_n + h \cdot f(x_n, y_n)\)
Euler Mejorado / Heun (2° orden):
Predictor: \(y^* = y_n + h \cdot f(x_n, y_n)\)
Corrector: \(y_{n+1} = y_n + \dfrac{h}{2}\!\left[f(x_n, y_n) + f(x_{n+1}, y^*)\right]\)
Runge-Kutta 4° orden:
\(k_1 = f(x_n,\, y_n)\)
\(k_2 = f(x_n\!+\!\tfrac{h}{2},\; y_n\!+\!\tfrac{h}{2}k_1)\)
\(k_3 = f(x_n\!+\!\tfrac{h}{2},\; y_n\!+\!\tfrac{h}{2}k_2)\)
\(k_4 = f(x_n\!+\!h,\; y_n\!+\!h\,k_3)\)
\(y_{n+1} = y_n + \dfrac{h}{6}(k_1 + 2k_2 + 2k_3 + k_4)\)
Paso 1: Preparación
Reordenamos la EDO despejando la derivada:
\[ \frac{dy}{dx} = xy - 2 \quad \Rightarrow \quad f(x,y) = xy - 2 \]- Condición inicial: \(x_0 = 2\), \(y_0 = 5\)
- Valor objetivo: Dado que el objetivo dado por el enunciado es \(y(2.5)\), entonces \(x_{\text{final}} = 2.5\)
- Número de pasos: \(n = 2\)
- Tamaño de paso: \(h = \dfrac{2.5 - 2}{2} = 0.25\)
Valores de \(x\): \(x_0 = 2 \to x_1 = 2.25 \to x_2 = 2.5\).
Paso 2: Método de Euler
Fórmula: \(y_{n+1} = y_n + h \cdot f(x_n, y_n)\). Cada fila usa los valores de la columna \(y_{n+1}\) anterior como nuevo \(y_n\).
| \(n\) | \(x_n\) | \(y_n\) | \(f(x_n, y_n) = x_n y_n - 2\) | \(h \cdot f\) | \(y_{n+1} = y_n + h \cdot f\) |
|---|---|---|---|---|---|
| 0 | 2 | 5 | \(2 \times 5 - 2 = 8\) | \(0.25 \times 8 = 2\) | \(5 + 2 = 7\) |
| 1 | 2.25 | 7 | \(2.25 \times 7 - 2 = 13.75\) | \(0.25 \times 13.75 = 3.4375\) | \(7 + 3.4375 = 10.4375\) |
Paso 3: Método de Euler Mejorado (Heun)
Predictor: \(y^* = y_n + h \cdot f_0\) Corrector: \(y_{n+1} = y_n + \frac{h}{2}(f_0 + f_1)\)
Donde \(f_0 = f(x_n, y_n)\) y \(f_1 = f(x_{n+1}, y^*)\).
| \(n\) | \(x_n\) | \(y_n\) | \(f_0 = f(x_n, y_n)\) | \(y^* = y_n + h \cdot f_0\) | \(f_1 = f(x_{n+1},\, y^*)\) | \(y_{n+1} = y_n + \frac{h}{2}(f_0 + f_1)\) |
|---|---|---|---|---|---|---|
| 0 | 2 | 5 | 8 | \(5 + 0.25 \times 8 = 7\) | \(2.25 \times 7 - 2 = 13.75\) | \(5 + 0.125(8 + 13.75) = 7.71875\) |
| 1 | 2.25 | 7.71875 | 15.3672 | \(7.71875 + 0.25 \times 15.3672 = 11.5605\) | \(2.5 \times 11.5605 - 2 = 26.9014\) | \(7.71875 + 0.125(15.3672 + 26.9014) = 13.0023\) |
Paso 4: Método de Runge-Kutta de 4° orden
Se calculan 4 pendientes y se combinan con pesos 1:2:2:1. En la tabla, \(\hat{y}\) es el argumento \(y\) que se usa para evaluar cada \(k\):
- \(\hat{y}_2 = y_n + \frac{h}{2} k_1\) (argumento de \(k_2\), evaluado en \(x_n + h/2\))
- \(\hat{y}_3 = y_n + \frac{h}{2} k_2\) (argumento de \(k_3\), evaluado en \(x_n + h/2\))
- \(\hat{y}_4 = y_n + h\, k_3\) (argumento de \(k_4\), evaluado en \(x_n + h\))
Resultado: \(y_{n+1} = y_n + \frac{h}{6}(k_1 + 2k_2 + 2k_3 + k_4)\)
| \(n\) | \(x_n\) | \(y_n\) | \(k_1\) | \(\hat{y}_2\) | \(k_2\) | \(\hat{y}_3\) | \(k_3\) | \(\hat{y}_4\) | \(k_4\) | \(y_{n+1}\) |
|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 2 | 5 | 8 | 6 | 10.75 | 6.3438 | 11.4805 | 7.8701 | 15.7078 | 7.8404 |
| 1 | 2.25 | 7.8404 | 15.6408 | 9.7955 | 21.2642 | 10.4984 | 22.9337 | 13.5738 | 31.9345 | 13.5058 |
Verificación fila 1: \(\hat{y}_2 = 5 + 0.125 \times 8 = 6\).
\(k_2 = f(2.125,\,6) = 2.125 \times 6 - 2 = 10.75\). Etc.
\(y_1 = 5 + \frac{0.25}{6}(8 + 2(10.75) + 2(11.4805) + 15.7078)
= 5 + 0.04167 \times 68.1687 = 7.8404\).
Paso 5: Comparación de resultados
| Método | Orden | \(y(2.5)\) |
|---|---|---|
| Euler | 1° | 10.4375 |
| Euler Mejorado | 2° | 13.0023 |
| Runge-Kutta 4 | 4° | 13.5058 |
A mayor orden del método, la aproximación es más precisa (con el mismo \(h\)). Euler subestima significativamente porque usa solo la pendiente al inicio del intervalo. El valor más confiable es el de RK4.