Diagonaliser et s'en servir

Diagonaliser : méthode et condition

Diagonaliser une matrice, c'est trouver un point de vue — une base — dans lequel elle devient diagonale, donc triviale à manipuler.

L'idée

Si l'on dispose d'une base entièrement composée de vecteurs propres, alors dans cette base la matrice se contente d'étirer chaque axe indépendamment :

        base quelconque              base de vecteurs propres

        [ 3   1 ]                          [ 4   0 ]
        [ 2   2 ]                          [ 0   1 ]

   les axes se mélangent            chaque axe est simplement étiré

La formule

A = P D P⁻¹

où :

D = matrice DIAGONALE des valeurs propres
P = matrice de passage : ses COLONNES sont les vecteurs propres,
    dans le MÊME ORDRE que les valeurs propres de D

Sur l'exemple précédent (λ = 4 avec (1 ; 1), λ = 1 avec (1 ; -2)) :

P = [ 1   1 ]        D = [ 4   0 ]
    [ 1  -2 ]            [ 0   1 ]

L'ordre est la seule vraie source d'erreur : la première colonne de P doit être un vecteur propre de la première valeur propre de D.

La condition de diagonalisabilité

A est diagonalisable  <=>  il existe une BASE de vecteurs propres
                      <=>  la somme des dim E(λ) vaut n

En pratique, deux critères suffisent presque toujours :

1. n valeurs propres DISTINCTES  ->  diagonalisable, à coup sûr
2. matrice SYMÉTRIQUE réelle     ->  diagonalisable, à coup sûr
                                     (et même en base orthonormée)

Le premier critère règle l'exemple ci-dessus : deux valeurs propres distinctes en dimension 2, c'est fini.

Quand ça échoue

Le cas problématique est celui d'une valeur propre multiple à laquelle ne correspondent pas assez de vecteurs propres :

A = [ 1  1 ]      det(A - λI) = (1-λ)²   ->  λ = 1, multiplicité 2
    [ 0  1 ]

E(1) : (A - I)X = 0  ->  [ 0  1 ] [x]   [0]     ->  y = 0
                         [ 0  0 ] [y] = [0]

E(1) = Vect( (1 ; 0) )      dimension 1  <  2 = multiplicité

Il n'y a qu'une direction propre au lieu de deux : impossible de former une base. Cette matrice — un cisaillement — n'est pas diagonalisable. On lui applique alors la réduction de Jordan, qui la met sous une forme presque diagonale.

La méthode complète, en quatre étapes

1. calculer le polynôme caractéristique  det(A - λI)
2. en trouver les racines  ->  les valeurs propres
3. pour chaque λ, résoudre (A - λI)X = 0  ->  les vecteurs propres
4. si l'on obtient n vecteurs propres indépendants :
      P = leurs coordonnées en colonnes,  D = les λ dans le même ordre

Contrôle final possible : vérifier A P = P D, plus rapide que de calculer P⁻¹.

En résumé

  • Diagonaliser, c'est écrire A = P D P⁻¹ dans une base de vecteurs propres.
  • D contient les valeurs propres, P les vecteurs propres en colonnes, dans le même ordre.
  • Diagonalisable ⟺ il existe une base de vecteurs propres.
  • n valeurs propres distinctes → diagonalisable ; matrice symétrique réelle → diagonalisable.
  • Échec possible si une valeur propre multiple manque de vecteurs propres (ex. le cisaillement [[1, 1], [0, 1]]).
  • Contrôle rapide : A P = P D.