function [xk,scartov,iter] = seidel(Amat,bvet,x0,toll,imax) scarto=2*toll; iter=0; xk=x0; % inizailizzo vettore per i calcolo del residuo res=zeros(size(x0,1),1); Prec=tril(Amat); scartov=zeros(imax,1); while scarto > toll && iter < imax iter=iter+1; % calcolo residuo del sistema lineare res=bvet-Amat * xk; % applico lo schema di jacobi per % xkp1=xk + L^{-1} ( b - A*xk) % =xk + L^{-1} ( b - L*xk - D *xk - U*xk) % =xk + L^{-1} b - L^-1 ( D + U )* xk - xk % =L^{-1} b - L^-1 ( L + U )* xk xk= xk + Prec\res; scarto=norm(res)/norm(bvet); scartov(iter)=scarto; end scartov=scartov(1:iter);