Expression analytique pour les vecteurs propres d'une matrice symétrique réelle 3x3?

11

J'écris un algorithme qui traite des images 3D en fonction du moment d'inertie local.

J'ai une vraie matrice symétrique 3x3, à partir de laquelle j'ai besoin de trouver les valeurs propres. J'ai trouvé une variété d'algorithmes génériques pour la diagonalisation des matrices, mais je n'ai pas pu savoir s'il existe une expression analytique pour les 3 vecteurs propres d'une telle matrice.

Est-ce que quelqu'un compétent en mathématiques le sait?


ÉDITER

Pour mémoire, voici ce que j'ai trouvé sur la question moi-même. Comme l'a dit Matthias Odisio, vous ne pouvez pas passer à une simple expression analytique dès que vous avez une matrice 3x3.

J'ai cependant trouvé un article dédié au cas particulier des matrices hermitiennes 3x3, où différentes approches numériques spécialisées sont comparées:

http://arxiv.org/abs/physics/0610206

Voici le code C et Fortran du papier:

http://www.mpi-hd.mpg.de/personalhomes/globes/3x3/index.html

Jean-Yves
la source

Réponses:

8

Wolfram | Alpha a rendu ces choses faciles :

entrez la description de l'image ici

Matthias Odisio
la source
Agréable. Je ne savais pas que vous pouviez faire des choses comme ça dans l'outil en ligne gratuit. Je vais devoir le vérifier pour voir combien de Mathematica il vous donne.
Jason R
Aie! Je suppose que c'est pourquoi les gens se tournent vers la résolution numérique. C'est à peine lisible. En plus de cela, j'y vois des nombres imaginaires. Je suppose que j'aurais dû ajouter que a, bc, d, e et f étaient réels. Pouvez-vous faire cela dans Mathematica?
Jean-Yves
Mathematica dispose d'une méthode complète pour définir des "opérateurs fondamentaux" (Sqrt, Power, Log, etc.) pour les nombres complexes (problèmes de coupure de branche, etc.). Soyez assuré que quelles que soient les valeurs réelles avec lesquelles vous remplacez les symboles 'a', ..., 'f' par, les vecteurs propres seront réels (c'est-à-dire que leurs parties imaginaires seront inférieures à, disons, 10 ^ -12).
Matthias Odisio
J'ai découvert que vous pouvez intégrer de telles hypothèses en utilisant une syntaxe comme "un [Élément] Reals". Mais à partir de maintenant, j'ai besoin d'une licence Mathematica, que je n'ai pas;)
Jean-Yves
2
Il est nécessaire d'exprimer les quantités en utilisant des nombres complexes, même si les entrées a, ..., f sont des nombres réels. Un collègue m'a indiqué en.wikipedia.org/wiki/Casus_irreducibilis qui explique le problème.
Matthias Odisio