La méthode de Jacobi, due au mathématicien allemand Karl Jacobi, est une méthode iterative de résolution d'un système matriciel de la forme Ax=b. Pour cela, on utilise une suite x(k) qui converge vers un point fixe x, solution du système d'équations linéaires.
On cherche à construire l'algorithme pour x(0) donné, la suite x(k + 1) = F(x(k)) avec
A = M − N où M est une matrice inversible.
où F est une fonction affine.
Si x est solution de Ax = b alors x = M − 1Nx + M − 1b .
Soit e(k) le vecteur erreur
e(k + 1) = x(k + 1) − x(k) = M − 1N(x(k) − x(k − 1)) = M − 1Ne(k)
On pose B = M − 1N, ce qui donne e(k + 1) = Be(k) = B(k + 1)e(0).
L'algorithme converge si
Théorème : Une condition nécessaire et suffisante pour que
Théorème : La méthode converge quel que soit x(0) pour les systèmes linéaires dont la matrice est à diagonale strictement dominante.
On décompose la matrice A de la façon suivante : A = D-E-F avec D la diagonale, -E la partie en dessous de la diagonale et -F la partie au dessus. Dans la méthode de Jacobi, on choisit M = D et N = E+F (dans la méthode de Gauss-Seidel, M = D-E et N = F).
x(k + 1) = D − 1(E + F)x(k) + D − 1b
pour la ligne i de D − 1(E + F) :
Soit r(k) = De(k) le vecteur résidu. On peut écrire
Pour le test d'arrêt, on utilise le vecteur résidu, ce qui donne, pour une précision donnée ε :
Cette méthode a un coût de l'ordre de 3n²+2n par itération, elle est très facilement parallélisable contrairement à la méthode de Gauss-Seidel, mais qui converge plus vite.