Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function x = GaussSeidel(A,b,x0,tol,maxiter)
- [n n] = size(A)
- xc = zeros(n,1);
- xp = x0;
- W = 1;
- for k = 1 : maxiter
- for i = 1 : n
- ok = 1;
- s1=0;
- s2=0;
- for j = 1: i-1
- s1 = s1 + A(i,j)*xc(j);
- endfor
- for j = i+1 : n
- s2 = s2 + A(i,j)*xp(j);
- endfor
- xc(i) = (b(i) - s1 - s2)/A(i,i);
- if xc - xp < tol
- W = 0;
- endif
- xp = xc;
- endfor
- if W = 0
- break;
- endif
- endfor
- x = xc;
- endfunction
Advertisement
Add Comment
Please, Sign In to add comment