Bonjour a vous
Je ne comprends pas le programme ci-dessous en effet il est supposé me faire une factorisation LU de la matrice reçue en paramètre j'obtiens bien la matrice L mais le problème est que la matrice U cela ne me donne rien en effet à la sortie de la boucle, la matrice A n'a pas été modifiée.
voici le code
Merci de votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 function [L,U]=GaussLU(B) % Le principe Ici est de prendre une matrice et la Factorisé il faut remarquer % que la matrice n'a pas a etre SDP global A; [n,m]=size(B); if n ~= m error('A Veillez entrer une matrice carre '); else A=B; Li=eye(n); Ui=zeros(n,n); for k=1:n-1 for i=k+1:n Li(i,k)=A(i,k)/A(k,k); for j=k+1 :n A(i,j)=A(i,j)-Li(i,k)*A(k,j); end end end L=Li; U=Ui; end end
Partager