
function demo_GS

% demo relativa al metodo di Gauss-Seidel, per la  
% soluzione di sistemi lineari Ax=b.

% problema A*x=b
A=gallery('poisson',10); % matrice
sol=ones(size(A,1),1); % soluzione
b=A*sol; % termine noto

% preferenze
maxit=100000; % numero massimo di iterazioni
tol=10^(-6); % tolleranza
x0=zeros(size(b)); % vettore iniziale

% soluzione col metodo di Gauss-Seidel
[x,errs,iter,flag]=metodo_GS(A,x0,b,maxit,tol);

% norma 2 residuo relativo
err=norm(b-A*x,2)/norm(b);

% statistiche
fprintf('\n \t dimensione matrice: %6.0f', size(A,1));
fprintf('\n \t numero iterazioni : %6.0f', iter);
fprintf('\n \t flag              : %6.0f', flag);
fprintf('\n \t residuo relativo  : %1.2e', err);

fprintf('\n \n');