Observación desconcertante sobre la región de estabilidad del método Runge-Kutta de quinto orden

15

Me encontré con un comentario desconcertante en el periódico.

PJ van der Houwen, El desarrollo de los métodos de Runge-Kutta para ecuaciones diferenciales parciales, Appl. Num. Matemáticas. 20: 261, 1996

En las líneas 8ff en la página 264, van der Houwen escribe:

"Para los polinomios de Taylor, esto implica que el intervalo de estabilidad imaginario está vacío para "p=1,2,5,6,9,10,

donde el polinomio de Taylor se refiere al polinomio de estabilidad (expansión truncada de alrededor de ) del método Runge-Kutta y p es el orden (ver página 263). Supongo que no entiendo algo porque el método Runge-Kutta de quinto orden no tiene un intervalo de estabilidad imaginario vacío hasta donde yo sé. Por lo que recuerdo, el límite imaginario es de aproximadamente 3.4.x = 0exp(x)x=0 0

¿Cuál es mi malentendido?

Brian Zatapatique
fuente

Respuestas:

21

La declaración de van der Houwen es correcta, pero no es una declaración sobre todos los métodos Runge-Kutta de quinto orden. Los "polinomios de Taylor" a los que se refiere son (como parece saber) solo los polinomios de grado que se aproximan a para ordenar :exp ( z ) ppagExp(z)pag

PAGpag(z)=j=1pagzjj!

Para el polinomio de quinto orden, resulta que para pequeño , por lo que la región de estabilidad de un método que tiene como su polinomio de estabilidad no incluye ninguna vecindad del origen en el eje imaginario . Eso es, en términos precisos, lo que dice van der Houwen.ϵ P 5 ( z )El |PAG5 5(yoϵ)El |>1ϵPAG5 5(z)

La fuente más probable de su confusión es lo que se entiende por "el método Runge-Kutta de quinto orden". Hay (infinitamente) muchos métodos Runge-Kutta de quinto orden, pero los más conocidos no tienen como su polinomio de estabilidad. ¿Por qué? Como John Butcher demostró , un método Runge-Kutta de quinto orden debe tener al menos seis etapas . Por lo general, el polinomio de estabilidad de un método con seis (o más) etapas tendría un grado seis (o más). Por ejemplo, cada uno de los métodos de quinto orden enumerados en esta página de Wikipedia utiliza exactamente seis etapas y tiene un polinomio de estabilidad de grado seis.PAG5 5(z)

¿Es posible que un método de quinto orden tenga como su polinomio de estabilidad? Si; un método de extrapolación explícita de quinto orden (como los conocidos revisados ​​en este trabajo mío ) lo haría. Tenga en cuenta también que un método stage Runge-Kutta con polinomio de estabilidad será preciso en el orden 5 para EDO lineales, aunque no para EDO no lineales.PAG5 5(z)pagPAG5 5(z)

Finalmente, es fácil cometer errores al determinar la extensión del intervalo de estabilidad imaginario para los métodos de Runge-Kutta de alto orden. Esto se debe a que el límite de la región de estabilidad para tales métodos se encuentra extremadamente cerca del eje imaginario . Por lo tanto, los errores de redondeo pueden llevar a conclusiones incorrectas; solo se deben usar cálculos exactos (por supuesto, la relevancia del límite de la región de estabilidad para propósitos prácticos en estas circunstancias ciertamente podría debatirse).

Por ejemplo, aquí hay una gráfica de la región de estabilidad del método de quinto orden del par Fehlberg 5 (4): Región de estabilidad de Fehlberg

¡El intervalo de estabilidad imaginario está vacío, pero no se puede ver en la imagen con esta resolución! Tenga en cuenta que la región incluye claramente parte del eje imaginario, pero no hay intervalo sobre el origen.

Mientras tanto, aquí está la trama para el método de quinto orden del par Dormand-Prince 5 (4):

DP5 región de estabilidad

Tiene un intervalo de estabilidad imaginario de aproximadamente .[-1,1]

Para una caracterización precisa del límite de la región de estabilidad cerca del eje imaginario para (¡lo cual es bastante fascinante!), Vea mi artículo reciente .PAGpag(z)

También puede estar interesado en el paquete NodePy , que produjo los gráficos anteriores y que puede usarse para determinar con precisión cosas como el intervalo de estabilidad imaginario de un método (descargo de responsabilidad: creé NodePy).

David Ketcheson
fuente
David, gracias por tu excelente respuesta que aclaró un par de cosas. Estoy a punto de viajar por un par de días sin acceso. No quería dejar tu respuesta colgando así; Volveré a ello.
Brian Zatapatique