De vez en cuando la vida nos ofrece una ecuación diferencial:
y'(x) = f(x,y), y(x0)=y0irresoluble, que no sale por ninguno de los métodos analíticos.
La 1ra pregunta es ¿qué hacer?
* * *Hace 250 años Euler tiró una idea [bue, 250... Euler hizo todo en el año 1750 +/-30]:
se puede aproximar la derivada y'(x
0)
por el cociente incremental [y(x
0+h)-y(x
0)]/h,
y despejando, queday(x0+h) = y(x0) + h f(x0,y(x0))Parece fácil: conocemos la función en el punto x
0 porque es dato, y ahora con esta cuenta, la conocemos en el punto x
0+h. Llamando a h el
paso, hay que ir paso a paso, como dijo Mostaza, y uno llega así a calcular la solución en algún valor x
1 que nos interese.
La 2da pregunta es ¿en cuánto le estamos pifiando?
* * *Miremos de vuelta el pase de magia: y'(x
0) no es el cociente incremental [y(x
0+h)-y(x
0)]/h, hay un error que podemos llamar T, así que cuando despejamos, la cuenta queda
y(x0+h) = y(x0) + h f(x0,y(x0))+h T,y decimos que
el error es de orden h.
Uno puede quedarse tranquilo, pensando que cuando h es chico también el error es chico, y que uno entonces puede calcular con precisión casi arbitraria los valores de la ecuación sin muchos líos.
La 3ra pregunta es ¿en serio?
* * *La respuesta es
no. Para entender por qué, uno podría pensar en que x
0=0, y queremos calcular la solución en 1 con cierta precisión. Tomamos como h = 0.1, y hacemos diez pasos, pero resulta que ya en el primero el error es grande. Entonces, tomamos h=0.05, pero ahora tenemos que hacer el doble de pasos, y si bien el error de cada paso es más chico, como tenemos que hacer 20 pasos podría amplificarse. Y si hacemos h=0.01, ahora hay que hacer 100 pasos... Si se quiere, y simplificando mucho, cada vez le pifiamos por menos, pero como tenemos que hacer muchos pasos, la acumulación de esos pequeños errores puede ser terrible.
No voy a entrar en más detalles por ahora, pero que esto no pase es la
estabilidad del método, y en el fondo nos lleva al Teorema Fundamental del Análisis numérico: dada la consistencia de un método, es equivalente la convergencia a la estabilidad (la consistencia, para no complicarnos más la vida, es que nuestro método se aproxime a la ecuación diferencial cuando h tiende a cero).
La 4ta pregunta es: ¿y qué error se comete con el método de Euler al calcular valores?
* * *Un O(h), es de orden h. Si bien h dijimos que era el error de truncamiento, lo calculamos muy a lo bestia. Si hacemos Taylor,
y(x0+h) - y(x0)- h f(x0,y(x0))=y''(c)h2,el error real es de orden h
2. Pero si vamos, por ejemplo, de 0 a 1 con pasitos h, tenemos 1/h pasos, y el error se puede acumular tanto como
y''(c)h2 . 1/h = Cte . hLa 5ta pregunta es: ¿es normal no haber entendido un carajo?
* * *La respuesta es
sí. Para entender mejor estos temas conviene agarrar algún libro como la gente, alguno de los apuntes que andan por la red, o aunque más no sea, la
wikipedia.