Matrice inverse

Matrice inverse

Matrice inversible

En mathématiques et plus particulièrement en algèbre linéaire, une matrice carrée A d'ordre n est dite inversible ou régulière ou encore non singulière, s'il existe une matrice B d'ordre n telle que

AB = BA = In, ( AB = In suffit d'aprés le théoreme du rang )

In désigne la matrice unité d'ordre n. La multiplication est la multiplication ordinaire des matrices. Dans ce cas, la matrice B est unique et est appelée la matrice inverse de A, et est notée A−1.

Une matrice carrée qui n'est pas inversible est dite non inversible ou singulière. Tandis que dans les cas usuels, ces matrices sont à coefficients réels ou complexes, toutes ces définitions peuvent être données pour des matrices à coefficients dans un corps (et plus généralement dans un anneau) quelconque.

Sommaire

Théorème des matrices inversibles

Soit A une matrice carrée d'ordre n à coefficients dans un corps \mathbb{K} (par exemple le corps des réels \mathbb{R}). Les propositions suivantes sont équivalentes (on note X une matrice colonne à n éléments dans \mathbb{K}) :

  • A est inversible,
  • A est équivalente à la matrice unité In d'ordre n,
  • A possède n pivots,
  • le déterminant de A est non nul : det (A) ≠ 0,
  • 0 n'est pas valeur propre de A,
  • le rang de A est égal à n,
  • le système homogène AX = 0 a pour unique solution X = 0,
  • pour tout b dans \mathcal{M}_{n1}(\mathbb{K}), le système linéaire AX = b a au plus une solution,
  • pour tout b dans \mathcal{M}_{n1}(\mathbb{K}), le système linéaire AX = b a au moins une solution,
  • pour tout b dans \mathcal{M}_{n1}(\mathbb{K}), le système linéaire AX = b a exactement une solution,
  • les colonnes de A, considérées comme des vecteurs de \mathbb{K}^n, sont linéairement indépendantes,
  • les colonnes de A, considérées comme des vecteurs de \mathbb{K}^n, engendrent \mathbb{K}^n,
  • les colonnes de A, considérées comme des vecteurs de \mathbb{K}^n, forment une base de \mathbb{K}^n,
  • l'endomorphisme canoniquement associé à A (c’est-à-dire l'application linéaire de \mathbb{K}^n dans lui-même, notée can(A), qui a pour matrice A en base canonique) est injectif,
  • l'endomorphisme can(A) canoniquement associé à A est surjectif,
  • l'endomorphisme can(A) canoniquement associé à A est bijectif,
  • la matrice A est inversible à gauche, c'est-à-dire qu'il existe une matrice B carrée d'ordre n telle que BA = In,
  • la matrice A est inversible à droite, c'est-à-dire qu'il existe une matrice B carrée d'ordre n telle que AB = In,
  • la transposée tA de A est inversible,
  • il existe un polynôme annulateur de A dont 0 n'est pas racine,
  • 0 n'est pas racine du polynôme minimal de A.

Plus généralement, une matrice carrée à coefficients dans un anneau commutatif unifère est inversible si et seulement si son déterminant est inversible dans cet anneau.

Autres propriétés et résultats

La matrice inverse d'une matrice inversible A est elle-même inversible, et

(A−1)−1 = A

Le produit de deux matrices inversibles A et B (de même ordre) est une matrice inversible et son inverse est donné par la relation suivante (on remarquera que l'ordre des matrices est inversé)

(AB)−1 = B−1A−1

Le produit d'un scalaire non nul k et d'une matrice inversible A est inversible, et son inverse est égal au produit de l'inverse de ce scalaire et de l'inverse de cette matrice.

(kA)−1 = k−1A−1

Des deux premières de ces propriétés, il résulte que l'ensemble des matrices carrées inversibles d'ordre n constitue un groupe multiplicatif (dont l'élément neutre est la matrice unité d'ordre n); on l'appelle groupe général linéaire et on le note habituellement GL_n(\mathbb{K}), où \mathbb{K} est le corps des scalaires.

En général, « presque toutes » les matrices carrées d'ordre n sont inversibles. Sur le corps des nombres réels, cela peut être formulé de façon plus précise: l'ensemble des matrices non inversibles, considéré comme sous-ensemble de \mathbb{R}^{n\times n}, est négligeable, c'est-à-dire de mesure de Lebesgue nulle. Intuitivement, cela signifie que si l'on choisit au hasard une matrice carrée d'ordre n à coefficients réels, la probabilité pour qu'elle soit non inversible est égale à zéro. La raison en est que les matrices non inversibles sont les racines (ou zéros) d'une fonction polynomiale donnée par le déterminant.

L'ensemble des matrices inversibles est dense dans l'ensemble des matrices carrées réelles ou complexes. En effet on peut approcher toute matrice de Mn(R) (ou Mn(C)) par une suite de matrices inversibles. Par exemple, considérons la suite de matrices de terme général M(k)=M-(1/k).I. Le déterminant de M(k) est une fonction polynomiale en k, il s'annule donc un nombre fini de fois. Ainsi il existe K tel que pour tout k > K , det(M(k)) soit non nul, et donc que M(k) soit inversible. On a donc bien en considérant la suite (M(k)) pour k>K une suite de matrices inversibles qui converge vers M une matrice quelconque, ce qui justifie la densité.

Méthodes d'inversion

Avant de décrire les méthodes usuelles d'inversion, notons qu'en pratique, il n'est pas nécessaire de calculer l'inverse d'une matrice pour résoudre un système d'équations linéaires. Il est toutefois nécessaire que la matrice considérée soit inversible. Des méthodes de décomposition comme la décomposition LU sont beaucoup plus rapides que l'inversion.

Élimination de Gauss-Jordan

Article détaillé : Élimination de Gauss-Jordan.

Méthode des cofacteurs

L'inverse d'une matrice A s'écrit sous une forme très simple à l'aide de la matrice complémentaire tcomA

A^{-1}=\frac1{\det A} \, {}^t{{\rm com} A} = \frac1{\det A} \, {}^t{\left(C_{ij}\right)} = \frac1{\det A} \, \begin{pmatrix}
C_{11} & C_{21} & \cdots & C_{j1} \\
C_{12} & \ddots &        & C_{j2} \\
\vdots &        & \ddots & \vdots \\
C_{1i} & \cdots & \cdots & C_{ji} \\
\end{pmatrix}

detA est le déterminant de A, comA est la comatrice de A et tA est la matrice transposée de A.

Cette écriture permet un calcul aisé de l'inverse d'une matrice de petite dimension. Pour des matrices de plus grande dimensions, cette méthode essentiellement récursive devient inefficace.

Inversion des matrices 2 x 2

L'équation des cofacteurs ci-dessus permet de calculer l'inverse des matrices de dimensions 2 x 2 : si  ad - bc \neq 0,


A = \begin{pmatrix}
a & b \\ c & d \\
\end{pmatrix} ,     \      

{\rm com} A = \begin{pmatrix}
d & -c \\ -b & a \\
\end{pmatrix} ,     \      

{}^t{{\rm com} A} = \begin{pmatrix}
d & -b \\ -c & a \\
\end{pmatrix}



A^{-1} = \begin{pmatrix}
a & b \\ c & d \\
\end{pmatrix}^{-1} =
\frac1{ad - bc} \begin{pmatrix}
d & -b \\ -c & a \\
\end{pmatrix}


EXEMPLE


C = \begin{pmatrix}
1 & 2 \\ 3 & 4 \\
\end{pmatrix} ,     \      
C^{-1} = \begin{pmatrix}
1 & 2 \\ 3 & 4 \\
\end{pmatrix}^{-1} =
\frac1{-2} \begin{pmatrix}
4 & -2 \\ -3 & 1 \\
\end{pmatrix}

Inversion des matrices 3 x 3

De même, l'inverse d'une matrice de dimensions 3 x 3 s'écrit :


\det A = a(ei-fh) - b(di-fg) + c(dh-eg) = a(ei-fh) - d(bi-ch) + g(bf-ce) = ... \


A^{-1} = \begin{pmatrix}
a & b & c\\ d & e & f \\ g & h & i \\
\end{pmatrix}^{-1} = {\frac1{\det A}}^{\ t}\! \begin{pmatrix}
ei - fh & fg - di & dh - eg \\
ch - bi & ai - cg & bg - ah \\
bf - ce & cd - af & ae - bd
\end{pmatrix} = 

\frac1{\det A} \begin{pmatrix}
ei - fh & ch - bi & bf - ce\\
fg - di & ai - cg &  cd - af\\
dh - eg  & bg - ah  & ae - bd
\end{pmatrix}

Inversion par bloc

L'inverse d'une matrice peut également être calculé par bloc, en utilisant la formule analytique suivante:

\begin{pmatrix} A & B \\ C & D \end{pmatrix}^{-1} = \begin{pmatrix} A^{-1}+A^{-1}B(D-CA^{-1}B)^{-1}CA^{-1} & -A^{-1}B(D-CA^{-1}B)^{-1} \\ -(D-CA^{-1}B)^{-1}CA^{-1} & (D-CA^{-1}B)^{-1} \end{pmatrix}

où A, B, C et D sont des blocs de taille arbitraire. Cette méthode peut se révéler avantageuse, par exemple, si A est diagonale et si son complément de Schur (DCA − 1B) est une matrice de petite dimension, puisque ce sont les seules matrices à inverser.

Cette technique a été inventée par Volker Strassen, connu également pour l'algorithme de Strassen sur le produit matriciel rapide.

Dérivée de l'inverse d'une matrice

Soient un intervalle I (d'intérieur non vide) de \mathbb{R} et une fonction matricielle A : I \to \mathrm{GL}_n(\mathbb{R}),\, t \mapsto A(t) dérivable sur I.

Alors la fonction matricielle A^{-1} : I \to \mathrm{GL}_n(\mathbb{R}),\, t \mapsto A(t)^{-1} est dérivable sur I et :

\forall\, t \in I,\,\frac{\mathrm{d}A^{-1}}{\mathrm{d}t}(t) = - A^{-1}(t)\, \frac{\mathrm{d}A}{\mathrm{d}t}(t)\, A^{-1}(t).

Cette relation découle de l'identité

\forall\, t \in I,\,A^{-1}(t)\, A(t) = I_n.

Généralisations

Certaines des propriétés des matrices inverses sont aussi vérifiées par les matrices pseudo-inverses qui peuvent être définies pour n'importe quelle matrice, même pour celles qui ne sont pas carrées.

Au cas où la matrice X n'est pas carrée, il est possible d'inverser grâce à une prémultiplication par le groupe de matrices  (X'X)^{-1}X' \, ou une postmultiplication par  X'(XX')^{-1} \,

On a bien:

 (X'X)^{-1}X'X=I \,
 XX'(XX')^{-1}=I \,

Implémentation en Java

Le code ci-dessous implémente la méthode du pivot de Gauss-Jordan pour inverser une matrice carrée inversible. Le type de retour de la fonction étant booléen, si la matrice n'est pas inversible, elle retourne « false », autrement elle retourne « true ». Cette fonction utilise une fonction de permutation des lignes (conformément à la méthode du pivot) en fin de code. Cette fonction de permutation est implémentée ci-dessous également.

public static boolean inversion(double[][] M, int m, int n, double[][] B) {
	if (m != n) 
	{
	    System.out.println("Matrice non carrée");
	    return false;
	}
 
        //Pour stocker les lignes pour lesquels un pivot a déjà été trouvé
	Vector<Integer> I = new Vector<Integer>();
 
        //Pour stocker les colonnes pour lesquels un pivot a déjà été trouvé
	Vector<Integer> J = new Vector<Integer>();  
 
        //Pour calculer l'inverse de la matrice initiale
	double[][] A = new double[m][n];
 
	//Copie de M dans A et Mise en forme de B : B=I
	for (int i=0; i<n; i++)
	{
	    for (int j=0; j<n; j++)
	    {
		A[i][j] = M[i][j];
		if (i==j)
		    B[i][j] = 1;
		else 
		    B[i][j] = 0;
	    }
	}
 
	//Paramètres permettant l'arrêt prématuré des boucles ci-dessous si calcul impossible	
	boolean bk = true;
	boolean bl = true;
 
	//Paramètres de contrôle pour la recherche de pivot
	int cnt_row = 0;
	int cnt_col = 0;
 
	//paramètre de stockage de coefficients
	double a, tmp;	
 
	for (int k=0; k<n && bk; k++) 
	{
	    if (!I.contains(k)) 
	    {
		I.addElement(k);
		cnt_row++;
		bl = true;
		for (int l=0; l<n && bl; l++) 
		{
		    if (!J.contains(l)) 
		    {
			a = A[k][l]; 			
			if (a != 0) 
			{
			    J.addElement(l);
			    cnt_col++;			    
			    bl = false; //permet de sortir de la boucle car le pivot a été trouvé
			    for (int p=0; p<n; p++)
			    {
				if (p != k)
				{
				    tmp = A[p][l];
				    for (int q=0; q<n; q++)
				    {
					A[p][q] = A[p][q] - A[k][q]*(tmp/a);
					B[p][q] = B[p][q] - B[k][q]*(tmp/a);
				    }
				}	
			    }
			}			
		    }
		}
		if (cnt_row != cnt_col) 
		{
		    //Matrix is singular";
                    //Pas de pivot possible, donc pas d'inverse possible! On sort de la boucle
		    bk = false;
		    k = n; 
		}	       
	    }
	}
 
	if (!bk)
	{
	    //Le pivot n'a pas pu être trouve précédemment, ce qui a donne bk = false
	    System.out.println("Matrix is singular");
	    for (int i=0; i<n; i++) {
		for (int j=0; j<n; j++) {
		    B[j][i] = M[j][i];
		}
	    }
	    return false;
	}
	else 
	{
	    //Réorganisation des colonnes de sorte que A=I et B=Inv(M). Méthode de Gauss-Jordan
	    for (int l=0; l<n; l++)
	    {
		for (int k=0; k<n; k++)
		{
		    a = A[k][l];
		    if (a != 0)
		    {
			A[k][l] = 1;
			for (int p=0; p<n; p++)
			{
			    B[k][p] = B[k][p]/a;
			}
			if (k != l)
			{
			    exchange_row(A,k+1,l+1,n,n);
			    exchange_row(B,k+1,l+1,n,n);
			}
			k = n; //Pour sortir de la boucle car le coefficient non nul a ete trouve
		    }
		}
	    }	    	    
	    return true;	
	}	
    }

La fonction ci-dessous permute deux lignes d'une matrice donnée. À noter que dans une matrice à m lignes et n colonnes, les numéros de lignes à permuter se notent k et lk et l sont strictement positifs et inférieurs ou égaux à m.

 /*To exchange two rows in a matrix*/
    public static void exchange_row(double[][] M, int k, int l, int m, int n) {
	if (k<=0 || l<=0 || k>n || l>n || k==l)
	    return;
	double tmp;
	for (int j=0; j<n; j++)
	{
	    tmp = M[k-1][j];
	    M[k-1][j] = M[l-1][j];
	    M[l-1][j] = tmp;
	}	
    }

Voir aussi

Liens externes

  • Portail des mathématiques Portail des mathématiques
Ce document provient de « Matrice inversible ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Matrice inverse de Wikipédia en français (auteurs)

Игры ⚽ Нужно решить контрольную?

Regardez d'autres dictionnaires:

  • matrice inverse — atvirkščioji matrica statusas T sritis fizika atitikmenys: angl. inverse matrix; reciprocal matrix vok. inverse Matrize, f; Kehrmatrix, f; reziproke Matrix, f rus. обратная матрица, f pranc. matrice inverse, f …   Fizikos terminų žodynas

  • Inverse d'une matrice — Matrice inversible En mathématiques et plus particulièrement en algèbre linéaire, une matrice carrée A d ordre n est dite inversible ou régulière ou encore non singulière, s il existe une matrice B d ordre n telle que AB = BA = In, ( AB = In… …   Wikipédia en Français

  • Matrice Inversible — En mathématiques et plus particulièrement en algèbre linéaire, une matrice carrée A d ordre n est dite inversible ou régulière ou encore non singulière, s il existe une matrice B d ordre n telle que AB = BA = In, ( AB = In suffit d aprés le… …   Wikipédia en Français

  • Matrice non singulière — Matrice inversible En mathématiques et plus particulièrement en algèbre linéaire, une matrice carrée A d ordre n est dite inversible ou régulière ou encore non singulière, s il existe une matrice B d ordre n telle que AB = BA = In, ( AB = In… …   Wikipédia en Français

  • Matrice régulière — Matrice inversible En mathématiques et plus particulièrement en algèbre linéaire, une matrice carrée A d ordre n est dite inversible ou régulière ou encore non singulière, s il existe une matrice B d ordre n telle que AB = BA = In, ( AB = In… …   Wikipédia en Français

  • inverse — [ ɛ̃vɛrs ] adj. et n. m. • 1611; envers XIIe; lat. inversus, de invertere « retourner » I ♦ Adj. 1 ♦ (Direction, ordre) Qui est exactement opposé, contraire. Dans l ordre inverse. Une relation inverse. Tourner dans le sens inve …   Encyclopédie Universelle

  • Inverse De La Matrice Du Tenseur Métrique — Articles scientifiques sur les tenseurs Généralités Tenseur Mathématiques Tenseur (mathématiques) Produit tensoriel ... de deux modules ... de deux applications linéaires Algèbre tensorielle Champ tensoriel Espace tensoriel …   Wikipédia en Français

  • Inverse de la matrice du tenseur metrique — Inverse de la matrice du tenseur métrique Articles scientifiques sur les tenseurs Généralités Tenseur Mathématiques Tenseur (mathématiques) Produit tensoriel ... de deux modules ... de deux applications linéaires Algèbre tensorielle Champ… …   Wikipédia en Français

  • Inverse de la matrice du tenseur métrique — Articles scientifiques sur les tenseurs Généralités Tenseur Mathématiques Tenseur (mathématiques) Produit tensoriel ... de deux modules ... de deux applications linéaires Algèbre tensorielle Champ tensoriel Espace tensoriel …   Wikipédia en Français

  • Matrice inversible — Pour les articles homonymes, voir Inverse (homonymie). En mathématiques et plus particulièrement en algèbre linéaire, une matrice carrée A d ordre n est dite inversible ou régulière ou encore non singulière, s il existe une matrice B d ordre n… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”