11 De ecuaciones a trayectorias

LECCION 11 | ~25 min

De ecuaciones a trayectorias

El metodo de Euler y los primeros pasos de la integracion numerica

El problema fundamental

Todo lo que hemos visto hasta ahora -- el atractor de Lorenz, sus alas de mariposa, la sensibilidad a condiciones iniciales -- se describe mediante ecuaciones diferenciales. Pero hay un problema: las ecuaciones diferenciales que gobiernan los sistemas caoticos no tienen solucion analitica.

Cuando escribimos \(\frac{dx}{dt} = f(x)\), estamos diciendo: "conozco la velocidad del sistema en cada punto, pero no conozco la trayectoria". Es como tener un mapa de vientos pero no saber por donde volara la hoja. Necesitamos convertir esas velocidades instantaneas en una trayectoria paso a paso.

Ese proceso -- convertir una ecuacion diferencial en una secuencia de puntos que aproxima la solucion -- es la integracion numerica. Y es la base de todo lo que vemos en ChaosLab.

Que significa integrar?

En calculo, integrar una funcion significa encontrar la funcion original a partir de su derivada. Si sabemos que \(\frac{dx}{dt} = 2t\), podemos integrar analiticamente y obtener \(x(t) = t^2 + C\). Pero para un sistema como Lorenz:

$$\frac{dx}{dt} = \sigma(y - x), \quad \frac{dy}{dt} = x(\rho - z) - y, \quad \frac{dz}{dt} = xy - \beta z$$

No existe formula cerrada. Las tres ecuaciones estan acopladas: cada derivada depende de las otras variables. La unica forma de avanzar es discretizar el tiempo. En lugar de tiempo continuo \(t\), trabajamos con pasos discretos \(t_0, t_1, t_2, \ldots\) separados por un intervalo \(h\) (tambien llamado \(\Delta t\) o \(dt\)).

En cada paso, usamos la informacion que tenemos (la posicion actual y la derivada) para estimar donde estara el sistema un instante despues. Acumulando miles de estos pasos, construimos la trayectoria completa.

El metodo de Euler

El metodo de Euler es el algoritmo de integracion mas simple que existe. Su idea es directa: si conozco la posicion actual \(x_n\) y la velocidad \(f(t_n, x_n)\), entonces en un pequeno intervalo de tiempo \(h\), la nueva posicion sera aproximadamente:

$$x_{n+1} = x_n + h \cdot f(t_n, x_n)$$

Esto es simplemente una aproximacion lineal. Estamos diciendo: "sigue recto en la direccion de la derivada actual durante un tiempo \(h\)". Es como conducir mirando solo un metro adelante: funciona si vas despacio (h pequeno), pero si la carretera curva bruscamente, te sales del camino.

Leonhard Euler propuso este metodo en 1768. A pesar de su simplicidad, contiene la esencia de toda la integracion numerica: evaluar la derivada, multiplicar por el paso temporal, sumar al estado actual. Los metodos mas sofisticados que veremos despues (como RK4) son refinamientos de esta misma idea.

La integracion numerica convierte ecuaciones continuas en secuencias discretas. Cada paso usa la derivada actual para estimar el siguiente punto de la trayectoria.

Euler paso a paso

Veamos el metodo en accion con la ecuacion diferencial mas simple posible:

$$\frac{dx}{dt} = x, \quad x(0) = 1$$

Esta ecuacion dice: "la velocidad de crecimiento es proporcional al valor actual". Su solucion exacta es \(x(t) = e^t\). Usemos Euler con paso \(h = 0.2\) y veamos los primeros 5 pasos:

Paso 0: Partimos de \(x_0 = 1\) en \(t_0 = 0\). La derivada es \(f(x_0) = x_0 = 1\).

Paso 1: \(x_1 = x_0 + h \cdot f(x_0) = 1 + 0.2 \times 1 = 1.200\). Exacto: \(e^{0.2} = 1.2214\).

Paso 2: \(x_2 = 1.200 + 0.2 \times 1.200 = 1.440\). Exacto: \(e^{0.4} = 1.4918\).

Paso 3: \(x_3 = 1.440 + 0.2 \times 1.440 = 1.728\). Exacto: \(e^{0.6} = 1.8221\).

Paso 4: \(x_4 = 1.728 + 0.2 \times 1.728 = 2.0736\). Exacto: \(e^{0.8} = 2.2255\).

Paso n \(t_n\) \(x_n\) (Euler) \(x\) exacto Error
0 0.0 1.0000 1.0000 0.0000
1 0.2 1.2000 1.2214 0.0214
2 0.4 1.4400 1.4918 0.0518
3 0.6 1.7280 1.8221 0.0941
4 0.8 2.0736 2.2255 0.1519
5 1.0 2.4883 2.7183 0.2300

Observa como el error crece con cada paso. Al final de solo 5 pasos, Euler subestima el valor real en un 8.5%. Y esto es para la ecuacion mas simple posible. Para Lorenz, con sus trayectorias curvadas y caoticas, el error se amplifica mucho mas rapido.

Error de truncamiento

Para entender por que Euler comete errores, expandimos la solucion exacta en serie de Taylor:

$$x(t + h) = x(t) + h \cdot x'(t) + \frac{h^2}{2} x''(t) + \frac{h^3}{6} x'''(t) + \cdots$$

El metodo de Euler solo usa los dos primeros terminos: \(x(t) + h \cdot x'(t)\). Todo lo demas se descarta. Esto significa que en cada paso individual, el error es del orden de \(h^2\):

$$\text{Error local} = \frac{h^2}{2} x''(t) + \mathcal{O}(h^3) \approx \mathcal{O}(h^2)$$

Pero cuidado: para recorrer un intervalo fijo de tiempo \(T\), necesitamos \(N = T/h\) pasos. Cada paso contribuye un error de \(\mathcal{O}(h^2)\), y hay \(\mathcal{O}(1/h)\) pasos, asi que el error global es:

$$\text{Error global} = N \cdot \mathcal{O}(h^2) = \frac{T}{h} \cdot \mathcal{O}(h^2) = \mathcal{O}(h)$$

Por eso decimos que Euler es un metodo de orden 1: el error global es proporcional a \(h\). Si reducimos el paso a la mitad, el error se reduce a la mitad. Parece razonable, pero para sistemas caoticos donde los errores se amplifican exponencialmente, necesitamos metodos mucho mas precisos. Esa sera la motivacion de RK4.

Ejercicios

  1. Aplica el metodo de Euler durante 5 pasos a la ecuacion \(\frac{dx}{dt} = -x\) con \(x_0 = 1\) y \(dt = 0.1\). Calcula \(x_1, x_2, \ldots, x_5\) a mano.
  2. Compara tus resultados con la solucion exacta \(x(t) = e^{-t}\). Cual es el error porcentual en \(t = 0.5\)?
  3. Repite el ejercicio 1 con \(dt = 0.5\) (un solo paso para llegar a \(t = 0.5\)). Como cambia el error? Que concluyes sobre la relacion entre \(dt\) y precision?

LAB: Euler paso a paso

Visualiza el metodo de Euler sobre \(dx/dt = x\). La curva azul es la solucion exacta \(e^t\); los segmentos rojos son los pasos de Euler. Ajusta dt con el slider o avanza paso a paso.

0.20
n=0 | t=0.00 | x=1.000