Jacobi.m
Iz E-študij, proste zakladnice študentskega znanja
function out=jacobi(A,b,x0,k)
% komentar ...
if !(diagDom(A))
disp("Pozor: A ni diagonalno dominantna.\n Konvergenca ni zagotovljena.\n")
end
out=zeros(size(x0));
xtemp=x0;
for i=1:k
%Prva vrstica
out(1)=( b(1)-A(1,2:n)*xtemp(2:n) )/A(1,1);
%Vmes
for j=2:n-1
out(j) = ( b(j) - A(j,1:j-1)*xtemp(1:j-1) - A(j,j+1:n-1)*xtemp(j+1:n-1) )/ A(j,j);
end
%Zadnja vrstica
out(n)=( b(n)-A(n,1:n-1)*xtemp(1:n-1) )/A(n,n);
xtemp=out;
end