aggiunto contatori di operazioni ai metodi iterativi di gauss-seidel e jacobi

This commit is contained in:
2014-11-19 11:19:45 +01:00
parent 84eca0228b
commit 922b2f22bf
4 changed files with 17 additions and 0 deletions

View File

@@ -21,6 +21,7 @@ function [x0,err,niter,ier] = gauss_seidel_abs (U,b,x0,toll,nmax)
niter = 0;
ier = 0;
err = inf;% err infinito per superare subito toll
counter = 0;
while ( niter < nmax ) && ( err >= toll)
x0_old = x0;
@@ -30,9 +31,11 @@ function [x0,err,niter,ier] = gauss_seidel_abs (U,b,x0,toll,nmax)
for k=1:i-1
partial_sum = partial_sum + ( U(i,k) * x0(k));
counter = counter + 1;
end
for k=i+1:n
partial_sum2 = partial_sum2 + ( U(i,k) * x0(k));
counter = counter + 1;
end
x0(i) = (b(i) - partial_sum - partial_sum2)/U(i,i) ;
end
@@ -45,5 +48,6 @@ function [x0,err,niter,ier] = gauss_seidel_abs (U,b,x0,toll,nmax)
disp('Warning: Massimo numero di step raggiunti')
ier = 1;
end
counter
end