Objectif de la sérié :
L’objectif de la sérié est d’étude quelque méthode directs
permettant de résoudre le système Ax=b où A ∈ Mn, l’ensemble
des matrices carrées n × n coefficients réels, et b est un vecteur
des réels. Une méthode directe est une méthode qui permet de
résoudre le système 1 en un nombre fini d’operateur et une
arithmétique exacte. Dans ce TP, on va présent les méthodes
suivantes :
I. La méthode d’élimination de Gausse
II. La méthode de LU
͟ Méthode de Gausse :
En utilise l’algorithme sauvant pour écrire une fonction
Gausse en MATLAB qui prend comme argument une matrices A
et un vecteur b et qui renvoie un vecteur x qui représente la
solution par la méthode de Gausse du système Ax=b
1 5 8 5
En pronos A= ( 2 −4 10
6 2 −5 ) () 1
et b= pour faire un test :
3
͟ Méthode de LC :
En utilise l’algorithme suivant pour écrire une fonction DLU en
MATLAB qui prend comme arguments qui renvoie deux matrices L et
U. cette fonction représente la décomposition LU de la matrice A.
1 5 8
En pronos A= ( 2 −4 10
6 2 −5 ) pour faire un test :
function [U,L]=DLU(A)
n=size(A,1);
L=eye(n);
U=zeros(n);
U(1,1:n)=A(1,1:n);
L(2:n,1)=A(2:n,1)/U(1,1);
for k=2:n
U(k,k:n)=A(k,k:n)-L(k,1:k-1)*U(1:k-1,k:n);
L(k+1:n,k)=(A(k+1:n,k)-L(K+1:n,1:k-1)*U(1:k-1,k))/U(k,k);
end
end
APELLE DE FONCTION :
clc;
clear all;
A=[1 5 8;2 -4 10;6 2 -5];
[U,L]=DLU(A);
U
L
function [X]=RLU(A,b)
[L,U]=DLU(A);
y(1)=b(1);
n=size(A,1);
for i=2:n
S=0;
for k=1:i-1
S=S+L(i,k)*y(k);
end
y(i)=b(i)-S;
end
X(n)=y(n)/U(n,n);
for i=n-1:-1:1
S=0;
for j=i+1:1
S=S+U(i,j)*X(j);
end
X(i)=(y(i)-S)/U(i,i);
end
end
APELLE DE FONCTION
clc;
clear all;
A=
b=
[X]=RLU(A,b)
U
L
X
inv(A)*b