stringtranslate.com

Tamaño de paso adaptable

En matemáticas y análisis numérico , se utiliza un tamaño de paso adaptativo en algunos métodos para la solución numérica de ecuaciones diferenciales ordinarias (incluido el caso especial de integración numérica ) con el fin de controlar los errores del método y garantizar propiedades de estabilidad como A- estabilidad . El uso de un tamaño de paso adaptativo es de particular importancia cuando hay una gran variación en el tamaño de la derivada. Por ejemplo, al modelar el movimiento de un satélite alrededor de la Tierra como una órbita estándar de Kepler , un método de paso de tiempo fijo como el método de Euler puede ser suficiente. Sin embargo, las cosas son más difíciles si se desea modelar el movimiento de una nave espacial teniendo en cuenta tanto la Tierra como la Luna, como en el problema de los tres cuerpos . Allí surgen escenarios en los que se pueden tomar grandes pasos de tiempo cuando la nave espacial está lejos de la Tierra y la Luna, pero si la nave espacial está a punto de colisionar con uno de los cuerpos planetarios, entonces se necesitan pequeños pasos de tiempo. El método de Romberg y Runge-Kutta-Fehlberg son ejemplos de métodos de integración numérica que utilizan un tamaño de paso adaptativo.

Ejemplo

Para simplificar, el siguiente ejemplo utiliza el método de integración más simple, el método de Euler ; en la práctica, se prefieren los métodos de orden superior, como los métodos de Runge-Kutta, debido a sus propiedades superiores de convergencia y estabilidad.

Considere el problema del valor inicial.

donde y y f pueden denotar vectores (en cuyo caso esta ecuación representa un sistema de EDO acopladas en varias variables).

Se nos da la función f ( t , y ) y las condiciones iniciales ( a , y a ), y estamos interesados ​​en encontrar la solución en t  =  b . Sea y ( b ) la solución exacta en b y sea y b la solución que calculamos. Escribimos , ¿dónde está el error en la solución numérica?

Para una secuencia ( t n ) de valores de t , con t n = a + nh , el método de Euler da aproximaciones a los valores correspondientes de y ( t n ) como

El error de truncamiento local de esta aproximación se define por

y mediante el teorema de Taylor , se puede demostrar que (siempre que f sea suficientemente suave) el error de truncamiento local es proporcional al cuadrado del tamaño del paso:

donde c es una constante de proporcionalidad.

Hemos marcado esta solución y su error con un archivo .

No conocemos el valor de c . Apliquemos ahora el método de Euler nuevamente con un tamaño de paso diferente para generar una segunda aproximación a y ( t n +1 ). Obtenemos una segunda solución, que etiquetamos con un . Tome el nuevo tamaño del paso como la mitad del tamaño del paso original y aplique dos pasos del método de Euler. Esta segunda solución es presumiblemente más precisa. Como tenemos que aplicar el método de Euler dos veces, el error local es (en el peor de los casos) el doble del error original.

Aquí, asumimos que el factor de error es constante durante el intervalo . En realidad, su tasa de cambio es proporcional a . Restar soluciones da la estimación del error:

Esta estimación del error local tiene una precisión de tercer orden.

La estimación del error local se puede utilizar para decidir cómo se debe modificar el tamaño del paso para lograr la precisión deseada. Por ejemplo, si se permite una tolerancia local de , podríamos dejar que h evolucione así:

Es un factor de seguridad para garantizar el éxito en el próximo intento. El mínimo y el máximo son para evitar cambios extremos con respecto al tamaño del paso anterior. En principio, esto debería dar un error de aproximadamente en el siguiente intento. Si , consideramos que el paso fue exitoso y la estimación del error se utiliza para mejorar la solución:

En realidad, esta solución tiene una precisión de tercer orden en el ámbito local (segundo orden en el ámbito global), pero como no hay una estimación de error para ella, esto no ayuda a reducir el número de pasos. Esta técnica se llama extrapolación de Richardson .

Comenzando con un tamaño de paso inicial de , esta teoría facilita nuestra integración controlable de la ODE desde un punto a , utilizando un número óptimo de pasos dada una tolerancia de error local. Un inconveniente es que el tamaño del paso puede llegar a ser prohibitivamente pequeño, especialmente cuando se utiliza el método de Euler de orden bajo .

Se pueden desarrollar métodos similares para métodos de orden superior, como el método de Runge-Kutta de cuarto orden. Además, se puede lograr una tolerancia a errores globales escalando el error local al alcance global.

Estimaciones de error integradas

Los métodos adaptativos de tamaño de paso que utilizan la denominada estimación de error "incrustada" incluyen los métodos de Bogacki-Shampine , Runge-Kutta-Fehlberg , Cash-Karp y Dormand-Prince . Se considera que estos métodos son más eficientes computacionalmente, pero tienen menor precisión en sus estimaciones de error.

Para ilustrar las ideas del método integrado, considere el siguiente esquema que se actualiza :

El siguiente paso se predice a partir de la información anterior .

Para el método RK integrado, el cálculo incluye un método RK de orden inferior . El error entonces puede escribirse simplemente como

es el error no normalizado. Para normalizarlo, lo comparamos con una tolerancia definida por el usuario, que consta de la tolerancia absoluta y la tolerancia relativa:

Luego comparamos el error normalizado con 1 para obtener lo previsto :

El parámetro q es el orden correspondiente al método RK , que tiene orden inferior. La fórmula de predicción anterior es plausible en el sentido de que aumenta el paso si el error local estimado es menor que la tolerancia y lo reduce en caso contrario.

La descripción proporcionada anteriormente es un procedimiento simplificado utilizado en el control de tamaño de pasos para solucionadores RK explícitos. Se puede encontrar un tratamiento más detallado en el libro de texto de Hairer. [1] El solucionador ODE en muchos lenguajes de programación utiliza este procedimiento como estrategia predeterminada para el control adaptativo del tamaño de los pasos, que agrega otros parámetros de ingeniería para hacer que el sistema sea más estable.

Ver también

Referencias

  1. ^ E. Hairer, SP Norsett G. Wanner, "Resolución de ecuaciones diferenciales ordinarias I: problemas no rígidos", sec. II.

Otras lecturas