Matrice tridiagonale

Cet article est une ébauche concernant les mathématiques.

Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.

En mathématiques, en algèbre linéaire, une matrice tridiagonale (ou trigonale) est une matrice dont tous les coefficients qui ne sont ni sur la diagonale principale, ni sur la diagonale juste au-dessus, ni celle juste en-dessous, sont nuls.

Par exemple, la matrice suivante est tridiagonale :

( 1 4 0 0 3 4 1 0 0 2 3 4 0 0 1 3 ) {\displaystyle {\begin{pmatrix}1&4&0&0\\3&4&1&0\\0&2&3&4\\0&0&1&3\\\end{pmatrix}}}

Définition

Une matrice A M n ( K ) {\displaystyle A\in {\mathcal {M}}_{n}\left(K\right)} , dont on note les coefficients ai,j, est dite tridiagonale si :

ai,j = 0 pour tous (i, j) tels que |ij| > 1,

autrement dit si c'est une matrice de Hessenberg à la fois supérieure et inférieure.

Propriétés

Si une matrice réelle tridiagonale A vérifie ak,k+1 × ak+1,k > 0 pour k = 1, 2, ..., n — c’est-à-dire si les signes de ses coefficients sont symétriques — alors elle est semblable à une matrice hermitienne, et donc toutes ses valeurs propres sont réelles. Cette dernière propriété est conservée si l'on considère plutôt la condition ak,k+1 × ak+1,k ≥ 0.

L'ensemble de toutes les matrices tridiagonales n × n est un espace vectoriel de dimension n + 2(n – 1) = 3n – 2 (le nombre de coefficients non nuls).

Utilisation

Algorithmes

De nombreux algorithmes d'algèbre linéaire nécessitent bien moins d'opérations lorsqu'on les exécute sur des matrices diagonales. Il est courant que ce gain se propage aux matrices tridiagonales.

Par exemple, le déterminant d'une matrice tridiagonale A n×n peut être calculé par la formule récursive suivante :

det A = a n , n det [ A ] { 1 , , n 1 } a n , n 1 a n 1 , n det [ A ] { 1 , , n 2 } {\displaystyle \det A=a_{n,n}\det \,[A]_{\{1,\ldots ,n-1\}}-a_{n,n-1}a_{n-1,n}\det \,[A]_{\{1,\ldots ,n-2\}}} ,

où l'on note det [A]{1,...,k} le k-ième mineur dominant, c'est-à-dire le déterminant de la matrice obtenue en ne gardant que les k premières lignes et colonnes de A. Le calcul du déterminant par cette méthode est linéaire en n pour les matrices tridiagonales, alors qu'il est en n3 dans le cas général.

Une transformation qui réduit une matrice quelconque à une matrice de Hessenberg réduira une matrice hermitienne à une matrice tridiagonale. Ainsi, de nombreux algorithmes de calcul des valeurs propres utilisent une étape de réduction sous la forme d'une matrice tridiagonale s'ils travaillent sur des matrices hermitiennes.

Mémoire

Une matrice tridiagonale peut être stockée de façon optimisée en utilisant une représentation particulière. Par exemple, la bibliothèque LAPACK enregistre une matrice non symétrique sous la forme de trois tableaux unidimensionnels, l'un contenant les coefficients diagonaux et les deux autres les éléments respectivement au-dessus et au-dessous de la diagonale.

Méthodes de résolution

Méthode numérique pour résoudre un système tridiagonal

Si l'on considère un système linéaire de la forme Ax = dA est une matrice tridiagonale, il est possible d'appliquer une méthode simplifiée reposant sur la décomposition LU sans stockage des matrices de la décomposition pour le résoudre numériquement[1]. Pour ce faire, on représente la matrice par :

A = ( a 1 b 1 0 0 c 2 a 2 b 2 0 c 3 a 3 b 3 0 b n 1 0 0 c n a n ) {\displaystyle A={\begin{pmatrix}a_{1}&b_{1}&0&\ldots &\ldots &0\\c_{2}&a_{2}&b_{2}&\ddots &&\vdots \\0&c_{3}&a_{3}&b_{3}&\ddots &\vdots \\\vdots &\ddots &\ddots &\ddots &\ddots &0\\\vdots &&\ddots &\ddots &\ddots &b_{n-1}\\0&\ldots &\ldots &0&c_{n}&a_{n}\\\end{pmatrix}}}

On construit alors les coefficients de proche en proche :

α 1 = a 1 , β 1 = d 1 α 1 {\displaystyle \alpha _{1}=a_{1},\beta _{1}={\frac {d_{1}}{\alpha _{1}}}}
i { 2 , . . . , n } , α i = a i c i b i 1 α i 1 , β i = d i c i 1 β i 1 α i {\displaystyle \forall i\in \{2,...,n\},\alpha _{i}=a_{i}-{\frac {c_{i}b_{i-1}}{\alpha _{i-1}}},\beta _{i}={\frac {d_{i}-c_{i-1}\beta _{i-1}}{\alpha _{i}}}} .

Une fois ces coefficients formés, on peut trouver la solution x = (x1,...,xn) :

x n = β n ,   i { n 1 , . . . , 1 } , x i = β i b i x i + 1 α i {\displaystyle x_{n}=\beta _{n},\ \forall i\in \{n-1,...,1\},x_{i}=\beta _{i}-{\frac {b_{i}x_{i+1}}{\alpha _{i}}}} .

Matrices de Toeplitz tridiagonales

Soit une matrice de Toeplitz tridiagonale d'ordre n à coefficients complexes,

T = ( a b 0 0 0 c 0 0 0 0 0 0 b 0 0 0 c a ) {\displaystyle T={\begin{pmatrix}a&b&0&0&0\\c&\ddots &\ddots &0&0\\0&\ddots &\ddots &\ddots &0\\0&0&\ddots &\ddots &b\\0&0&0&c&a\end{pmatrix}}} ,

telle que bc = d2 ≠ 0. Les valeurs propres de T sont les λk = a + 2d coskπ/n + 1 pour k = 1, 2, … , n, un vecteur propre xk associé à λk ayant pour composantes xk,j = (d/b) j sinj k π/n + 1 (j = 1, 2, … , n)[2].

Si a, b et c sont réels et bc > 0, T est donc diagonalisable non seulement sur ℂ mais sur ℝ.

Démonstration

Puisque les n nombres λk proposés sont distincts, il suffit de vérifier que (pour k = 1, 2, … , n) : T(xk) = λkxk. On peut, sans perte de généralité, supposer que a = 0. Il suffit alors de vérifier que pour k = 1, 2, … , n :

{ b x k , 2 = λ k x k , 1 c x k , j 1 + b x k , j + 1 = λ k x k , j ( j = 2 , , n 1 ) c x k , n 1 = λ k x k , n {\displaystyle {\begin{cases}bx_{k,2}=\lambda _{k}x_{k,1}\\cx_{k,j-1}+bx_{k,j+1}=\lambda _{k}x_{k,j}\quad (j=2,\dots ,n-1)\\cx_{k,n-1}=\lambda _{k}x_{k,n}\end{cases}}} ,

c.-à-d., en notant θ = kπ/n + 1, de vérifier que :

{ sin ( 2 θ ) = 2 cos θ sin θ sin ( ( j 1 ) θ ) + sin ( ( j + 1 ) θ ) = 2 cos θ sin ( j θ ) ( j = 2 , , n 1 ) sin ( ( n 1 ) θ ) = 2 cos θ sin ( n θ ) . {\displaystyle {\begin{cases}\sin(2\theta )=2\cos \theta \sin \theta \\\sin \left((j-1)\theta \right)+\sin \left((j+1)\theta \right)=2\cos \theta \sin(j\theta )\quad (j=2,\dots ,n-1)\\\sin \left((n-1)\theta \right)=2\cos \theta \sin(n\theta ).\end{cases}}}

Ces égalités se déduisent d'identités trigonométriques classiques.

Applications

Les matrices tridiagonales sont courantes dans l'étude des splines cubiques. Elles sont également souvent des solutions au problème de Sturm-Liouville.

D'autre part, un système linéaire impliquant une matrice tridiagonale, de la forme :

A x = b R n {\displaystyle Ax=b\in \mathbb {R} ^{n}}

peut être résolu au travers d'algorithmes spécifiques, qui nécessitent O(n) opérations[3].

Notes et références

  • (en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Tridiagonal matrix » (voir la liste des auteurs).
  1. (en) Carnahan, Luther et Wilkes, Applied Numerical Methods.[réf. incomplète]
  2. (en) Albrecht Böttcher (de) et Sergei M. Grudsky, Spectral Properties of Banded Toeplitz Matrices, SIAM, , 411 p. (ISBN 978-0-89871-785-3, lire en ligne), p. 35.
  3. (en) Gene H. Golub et Charles F. Van Loan, Matrix Computations, Johns Hopkins University Press, , 3e éd., 694 p. (ISBN 978-0-8018-5414-9, lire en ligne).

Voir aussi

Articles connexes

Bibliographie

(en) Roger A. Horn (en) et Charles R. Johnson, Matrix Analysis, Cambridge University Press, , 561 p. (ISBN 978-0-521-38632-6, lire en ligne)

Lien externe

(en) Tridiagonal and Bidiagonal Matrices dans le manuel de LAPACK

v · m
Matrices
Forme
Transformée
Relation
Propriété
Famille
Associée
Résultats
Décompositions
Articles liés
  • icône décorative Portail de l’algèbre