next up previous contents
suivant: Factorisation monter: Résolution de systèmes linéaires précédent: Résolution de systèmes linéaires   Table des matières

Élimination de Gauss

function [A,b]=algo(A,b,k)
   
  n=size(A,'c')
  for i=k+1:n
    b(i)=b(i)-(A(i,k)/A(k,k))*b(k)
    for j=k+1:n
      A(i,j)=A(i,j)-(A(i,k)/A(k,k))*A(k,j)
    end;
    for j=1:k
      A(i,j)=0
    end
  end;
   
endfunction
 
function [A,b]=gauss(A,b)
// Methode  de Gauss
// On suppose que tous les pivots A(k,k) sont differents de 0.
// En entree il y a les coefficients de la matrice A et du vecteur b qui
// déterminent le système lineaire Ax=b
//  En  sortie le couple (A,b) determine un sytème lineaire equivalent,
//  mais numeriquement plus simple a resoudre, la matrice A etant
//  triangulaire superieure.
  n=size(A,'c')
  for k=1:n
    [A,b]=algo(A,b,k)
  end;
   
endfunction;


\begin{sessioncmd}
\par A=[3 -4 0;12 -9 -1;24 -4 8] \sleftarrow{\normalfont Défi...
...3. !
A1 =
\par ! 3. - 4. 0. !
! 0. 7. - 1. !
! 0. 0. 12. !
\par\end{sessioncmd}

Le système :

$\displaystyle A_{1}x=b_{1} ;
$

est plus facile à résoudre que (1) car la matrice $ A_{1}$ est triangulaire.



barty 2004-04-29