0% ont trouvé ce document utile (0 vote)
5 vues2 pages

Magistère de Mathématiques TP 3 - Méthodes Directes de Résolution de Et Méthodes Itératives

Le document présente un TP sur les méthodes directes et itératives pour résoudre des systèmes linéaires, en se concentrant sur la décomposition LU. Il décrit les algorithmes de résolution pour des systèmes triangulaires et compare différentes méthodes itératives telles que Jacobi, Gauss-Seidel et relaxation. Enfin, il aborde la résolution d'un problème de Poisson en 2D avec des conditions de Dirichlet.

Transféré par

thebestoussama254
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
5 vues2 pages

Magistère de Mathématiques TP 3 - Méthodes Directes de Résolution de Et Méthodes Itératives

Le document présente un TP sur les méthodes directes et itératives pour résoudre des systèmes linéaires, en se concentrant sur la décomposition LU. Il décrit les algorithmes de résolution pour des systèmes triangulaires et compare différentes méthodes itératives telles que Jacobi, Gauss-Seidel et relaxation. Enfin, il aborde la résolution d'un problème de Poisson en 2D avec des conditions de Dirichlet.

Transféré par

thebestoussama254
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

ENS de Rennes Année 2020 – 2021

Magistère de mathématiques
Algorithme de la factorisation LU.
TP 3 – Méthodes directes de résolution de Ax = b et méthodes Forme compacte
Pour k = 1, . . . , n − 1
itératives. Pour i = k + 1, . . . , n
Ai,k ← Ai,k /Ak,k
Les résolutions de systèmes linéaires n’utiliseront pas la commande [Link] Pour j = k + 1, . . . , n
durant ce TP. Ai,j ← Ai,j − Ai,k Ak,j
Fin pour j
Fin pour i
Théorème (Décomposition LU). Soit A ∈ Mn (K), dont tous les mineurs princi- Fin pour k.
paux sont non nuls, c’est-à-dire que pour tout k ∈ {1, . . . , n} la sous-matrice extraite
(Ai,j )1≤i,j≤k est inversible. • Programmer cet algorithme (on essayera si possible d’obtenir une programmation
Alors il existe un unique couple (L, U ) de matrices carrées d’ordre n tel que : concise, idéalement avec seulement une boucle sur k) et le tester sur la matrice de
· L est triangulaire inférieure avec uniquement des 1 sur la diagonale ; Pascal suivante  
1 1 1 1 1
· U est triangulaire supérieure avec des coefficients diagonaux tous non nuls ; 1 2 3 4 5 
· A = LU .  
P =1 3 6 10 15 .

Une fois cette décomposition connue, la résolution d’un système linéaire Ax = b est 1 4 10 20 35
équivalente à la résolution de deux systèmes linéaires triangulaires, élémentaires à ré- 1 5 15 35 70
soudre :
(Ax = b) ⇐⇒ (Ly = b et U x = y). Le but de la suite de ce TP est d’introduire et de comparer quelques méthodes itéra-
tives pour résoudre le système Ax = b.

Exercice 1. Résolution de systèmes triangulaires Principe : La matrice A est décomposée sous la forme A = M − N avec M facile et
• Programmer les algorithmes de descente et de remontée permettant de résoudre des peu coûteuse à inverser et la solution x est approchée par une suite (xk )k∈N d’éléments
systèmes triangulaires inférieurs (Ly = b) et supérieurs (U x = y) respectivement. de Rn :
x0 ∈ R n donné,
M xk+1 = N xk + b.
Exercice 2. Algorithme de décomposition LU
La matrice M −1 N est fondamentale dans l’analyse de convergence. En effet la solution
L’algorithme de construction des matrices L et U s’appuie sur les opérations d’élimi-
x est l’unique point fixe d’une application affine sur Rn dont la différentielle (constante)
nation du pivot de Gauss. Pour réduire de moitié la complexité en espace (forme com-
a pour matrice M −1 N . En particulier la convergence itérative de la méthode, requise
pacte), l’algorithme agit directement sur la matrice A, la matrice U étant construite
pour tout choix de l’initialisation x0 , est équivalente à la condition suivante sur le rayon
au fil des itérations dans la partie supérieure de A, et la matrice L correspondant aux
spectral :
opérations du pivot étant stockée dans la partie inférieure de A. On a ainsi à l’issue de
ρ(M −1 N ) < 1.
l’algorithme Ui,j = Ai,j si i ≤ j, et Li,j = Ai,j si i > j, les autres coefficients de L et U
étant nuls ou égaux à 1. Quelques possibilités pour construire M et N : écrivons A = D − E − F avec D la partie
diagonale de A, −E sa partie triangulaire inférieure stricte et −F sa partie triangulaire
supérieure stricte. Autrement dit

Dii = Aii , i = 1, . . . , n,
Eij = −Aij , 1 ≤ j < i ≤ n,
Fij = −Aij , 1 ≤ i < j ≤ n,
Année 2020 – 2021 ENS de Rennes

tous les autres termes étant nuls. Pour la construction de ces trois parties utilisera la Pour ce faire, on approche l’équation par différences finies. Soit N un entier naturel,
commande [Link]. on pose h = 1/(N + 1) le pas de discrétisation pour chacune des directions. Pour tout
0 ≤ i, j ≤ N + 1, ui,j désigne une approximation de la valeur u(xi , yj ), les points de la
Méthode de Jacobi : M = D et N = E + F .
grille étant xi = ih, yj = jh. L’EDP est approchée par des différences centrées :
Méthode de Gauss-Seidel : M = D − E et N = F .
ui+1,j − 2ui,j + ui−1,j ui,j+1 − 2ui,j + ui,j−1
1 1−ω + = f (xi , yj ), 1 ≤ i, j ≤ N,
Méthode de relaxation : M = ωD − E et N = ω D + F avec ω ∈ R+
∗. h2 h2
et les conditions de bord sont données : ui,j = 0 lorsque ij(N + 1 − i)(N + 1 − j) = 0.
a. Construire la matrice A de taille N 2 × N 2 permettant de définir le vecteur des
Exercice 3. Comparaison des méthodes de Jacobi, Gauss-Seidel et de relaxation inconnues U = (ui,j )1≤i,j≤N de RN ×N comme solution du problème
Soit la matrice carrée A de taille n, tridiagonale, intervenant dans le TP précédent,
AU = F.
définie par
−1
 
2 0 ... 0
 .. ..  b. En utilisant les méthodes itératives précédemment mises en œuvre, résoudre ce
−1
 2 −1 . . 
 problème pour le second membre f donné dans l’exemple de code ci-dessous.
A= 0
 .. .. .. 
c. Représenter la solution. On pourra adapter l’exemple suivant pour tracer une sur-
. . .0
face en 3 dimensions :
 
 . ..
 ..

. −1 2 −1
0 ... 0 −1 2 from mpl_toolkits.mplot3d import axes3d
from matplotlib import cm
a. Programmer les trois méthodes précedentes.
b. Application : utiliser ces trois méthodes sur la matrice A et le second membre fig = [Link]()
B = (1, 0, . . . , 0, 1)T , pour n = 10. On effectuera 100 itérations. Dans le cas de la ax = [Link](projection = ’3d’)
méthode de relaxation, on choisira ω = 23 . n = 20
X = [Link](0,1,n+2)
c. Dans le cas où n = 20, déterminer le paramètre optimal dans la méthode de
Y = X
relaxation, en représentant le rayon spectral de la matrice d’itération obtenue en fonction
X, Y = [Link](X, Y)
de ω.
def f(x,y):
d. Pour différentes valeurs de n, comparer le nombre d’itérations nécessaires pour return -(x-0.5)**2 - (y-0.5)**2
avoir une précision de 10−12 entre la solution approchée et la solution exacte. Quelle Z = f(X,Y)
relation y a t-il entre le nombre d’itérations et le rayon spectral ? surf = ax.plot_surface(X, Y, Z,cmap = [Link],linewidth = 0,
antialiased = False)
[Link]("La surface f(x,y)=-(x-0.5)**2-(y-0.5)**2")
Exercice 4. Résolution d’un problème de Poisson 2d [Link]()
On souhaite résoudre le problème de Poisson en dimension 2 d’espace où X et Y sont les vecteurs avec les coordonnées des points du plan, et Z est la matrice
2 2 contenant les valeurs f(X,Y).
∂ u ∂ u
+ 2 = f (x, y), (x, y) ∈ [0, 1]2 ,
∂x2 ∂y

assorti des conditions de Dirichlet au bord

u(x, y) = 0, (x, y) ∈ ∂[0, 1]2 .

Vous aimerez peut-être aussi