Qu'est-ce que la décomposition LU avec pivot partiel ?
La décomposition LU factorise une matrice carrée A en une matrice triangulaire inférieure L (avec des 1 sur sa diagonale) et une matrice triangulaire supérieure U. Avec le pivot partiel (pivot de ligne), on obtient en plus un vecteur de permutation des lignes P tel que \(P \cdot A = L \cdot U\). Le pivotage consiste à ramener la ligne dont le pivot a la plus grande valeur absolue à la bonne position : cela évite les divisions par zéro et améliore nettement la stabilité numérique. Il s'agit d'algèbre linéaire pure, dont les règles sont identiques partout dans le monde.
Comment utiliser le calculateur
Choisissez la taille n de la matrice (de 2 à 5), saisissez les coefficients de votre matrice carrée ligne par ligne, puis indiquez le nombre de chiffres significatifs à afficher. Cliquez sur « Calculer » pour obtenir L, U, le vecteur de pivot P (indexé à partir de 0) et le déterminant. Les cellules situées au-delà de la taille choisie sont ignorées.
L'algorithme
Pour chaque colonne k, on recherche la ligne p (avec \(p \ge k\)) qui maximise \(|M[p][k]|\), on l'échange avec la ligne k, puis pour chaque ligne i située sous k on calcule le multiplicateur \(\text{factor} = M[i][k] / M[k][k]\), on le stocke dans la partie inférieure et on met à jour les coefficients restants : \(M[i][j] \mathrel{-}= \text{factor} \cdot M[k][j]\). Une fois toutes les colonnes traitées, L correspond à la partie strictement inférieure de M avec une diagonale unitaire, et U à la partie supérieure diagonale comprise. Le déterminant est égal au signe de la permutation multiplié par le produit des éléments diagonaux de U :
$$\det(A) = \operatorname{sign}(P) \prod_{i} U_{ii}$$
Exemple détaillé
Pour \(A = [[2,1,1],[4,-6,0],[-2,7,2]]\), le premier pivot est la ligne 1 (\(|4|\) est la plus grande valeur), donc P devient \((1,0,2)\). L'élimination donne \(L = [[1,0,0],[0.5,1,0],[-0.5,1,1]]\) et \(U = [[4,-6,0],[0,4,1],[0,0,1]]\). Un seul échange correspond à un signe \(-1\), d'où $$\det(A) = -1 \times (4 \cdot 4 \cdot 1) = -16.$$
FAQ
Pourquoi L·U ne redonne-t-il pas ma matrice A d'origine ? À cause du pivotage, \(L \cdot U\) est égal à A dont les lignes ont été réordonnées selon P. Réordonnez d'abord les lignes de A avec P, et \(L \cdot U\) coïncidera.
Et si ma matrice est singulière ? Un zéro apparaît sur la diagonale de U et le déterminant vaut 0 ; la factorisation est néanmoins affichée.
Le vecteur de pivot est-il indexé à partir de 0 ? Oui. \(P[i]\) est l'indice de la ligne d'origine de A qui s'est retrouvée à la position i.