Soit des matrices réelles, carrées et denses. G et Q sont symétriques. Laisser
être une matrice hamiltonienne. Je veux calculer la matrice exponentielle de . J'ai besoin de l'exponentielle matricielle complète, e t H , pas seulement du produit matrice-vecteur. Existe-t-il des algorithmes ou des bibliothèques spécialisés pour calculer l'exponentielle d'une matrice hamiltonienne?
linear-algebra
matrix
dense-matrix
Max Behr
la source
la source
Réponses:
Réponse très rapide ...
L'exponentielle d'une matrice hamiltonienne est symplectique, une propriété que vous souhaitez probablement conserver, sinon vous utiliseriez simplement une méthode ne préservant pas la structure. En effet, il n'y a pas de réel avantage de vitesse à utiliser une méthode structurée, juste une préservation de la structure.
Un moyen possible de résoudre votre problème est le suivant. D' abord trouver une matrice symplectique de telle sorte que H = M - 1 H M = [ A - G 0 - A T ] est hamiltonien et bloquer triangulaire supérieure, et A a les valeurs propres dans le demi-plan gauche. Vous obtenez cette matrice par exemple en prenant [ I 0 X I ] , où X résout l'équation de Riccati associée à HH^=M−1HM=[A^0−G^−A^T] A^ [IX0I] X H , ou (plus stable car orthogonale) en réordonnant la décomposition de Schur de et en appliquant l'astuce de Laub (c'est-à-dire en remplaçant le facteur de Schur unitaire [ U 11 U 12 U 21 U 22 ] par [ U 11 - U 12 U 12 U 11 ] ). Vous pouvez avoir du mal à le faire si le hamiltonien a des valeurs propres sur l'axe imaginaire, mais c'est une longue histoire et pour l'instant je suppose que cela ne se produit pas dans votre problème.H [U11U21U12U22] [U11U12−U12U11]
Les trois facteurs sont alors exactement symplectiques. Il suffit de les utiliser séparément: ne calculez pas le produit ou vous perdrez cette propriété numériquement.
la source
Inconvénients de cette approche:
Positifs:
la source