Algoritmo para calcular la exponencial de una matriz de Hessenberg


9

Estoy interesado en calcular la solución de un sistema lage de EDO utilizando un método krylov como en [1]. Dicho método involucra funciones relacionadas con la exponencial (las llamadas funciones ). Básicamente consiste en calcular la acción de la función de matriz mediante la construcción de un subespacio de Krylov utilizando la iteración de Arnoldi y la proyección de la función en este subespacio. Esto reduce el problema para calcular el exponencial de una matriz de Hessenberg mucho más pequeña.φ

Soy consciente de que hay varios algoritmos para calcular el exponencial (ver [2] [3] y referencias en él). Me pregunto si hay un algoritmo especial para calcular el exponencial que puede aprovechar el hecho de que la matriz es Hessenberg.


[1] Sidje, RB (1998). Expokit: un paquete de software para calcular exponenciales de matriz. Transacciones ACM en software matemático (TOMS), 24 (1), 130-156.

[2] Moler, C. y Van Loan, C. (1978). Diecinueve formas dudosas de calcular el exponencial de una matriz. Revisión de SIAM, 20 (4), 801-836.

[3] Moler, C. y Van Loan, C. (2003). Diecinueve formas dudosas de calcular el exponencial de una matriz, veinticinco años después. Revisión de SIAM, 45 (1), 3-49.


Ha habido algunos trabajos más nuevos de Jitse Niesen que quizás también quieras ver.
Geoff Oxberry

¿Es la exponencial a pequeña escala realmente el cuello de botella de su algoritmo? Esperaría que su costo sea insignificante con respecto a la parte de Arnoldi.
Federico Poloni

Respuestas:


3

Dado que expokit parece usar un método de subespacio de Krylov, generalmente (al menos, la esperanza es que) las matrices superiores de Hessenberg son de pequeña dimensión, digamos . Para las matrices de estos tamaños, no debería haber ninguna diferencia importante en el tiempo de cálculo al usar cualquier método para el cálculo exponencial de matriz densa. Por ejemplo, 'expm' en MATLAB parece usar el método de escala y cuadratura con una aproximación Pade cercana a cero.m100

Si la dimensión del subespacio de Krylov es grande, entonces puede considerar preacondicionar http://link.springer.com/article/10.1023%2FA%3A1023219016301 o reiniciar el método del subespacio de Krylov http: //www.mathe.tu-freiberg .de / ~ Ernst / PubArchive / eiermannErnstKrylovExp.pdf

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.