Soit \(n \geq 3\), \(\varepsilon >0\) et \(A_\varepsilon\) la matrice pentadiagonale définie par
\[A_\varepsilon = \begin{pmatrix} 1 & \varepsilon & \varepsilon^2 & & & \\ \varepsilon & 1 & \varepsilon & \varepsilon^2 & & \\ \varepsilon^2 & \ddots & \ddots & \ddots & & \\ & \ddots & & & \varepsilon & \varepsilon^2 \\ & & & \varepsilon &1 &\varepsilon \\ & & & \varepsilon^2 & \varepsilon & 1 \\ \end{pmatrix}\] et on s’intéresse au système \(A_\varepsilon x = b\) où \(x,b \in \mathbb{R}^n\).
Ecrire une fonction Python qui génère la matrice \(A_\varepsilon\) pour tout \(n\) et \(\varepsilon\) :
def epsmatrice(n, epsilon):
...
return ...
✅ Solution
Donner un intervalle de valeurs de \(\varepsilon\) pour lesquelles \(A_\varepsilon\) est à diagonale strictement dominante.
Que permet de calculer la fonction suivante où matrice est une matrice carrée de taille \(n\) quelconque ?
def rs(matrice):
return max(abs(eigvals(matrice)))
✅ Solution
On reconnaît le calcul du rayon spectral de la matrice.
Ecrire une fonction Python qui génère la matrice \(b_{\varepsilon} = A_\varepsilon\overline{x}\) où \(\overline{x} = (1,...,1) \in \mathbb{R}^n\).
def epsb(n, epsilon):
...
return b
La méthode de Jacobi est-elle convergente pour \(n=10\) et \(\varepsilon = 0.2\) ? Si oui, résoudre le système \(A_\varepsilon x = b_{\varepsilon}\) par cette méthode et donner le nombre d’itérations nécessaire pour une erreur de \(10^{-8}\) et un vecteur initial \(x_0 = 0\).
Soit \(B\) la matrice d’itération associée à la méthode de Jacobi pour la matrice \(A_\varepsilon\). Pour \(n=20\) fixé, représenter graphiquement le rayon spectral de \(B\) en fonction de \(\varepsilon \in [0;1]\).
Faire de même pour la méthode de Gauss-Seidel.