?? gauss_seidel.m
字號:
function Gauss_Seidel(A,b,n,x0,E,N)
k=1
x=zeros(n,1)';%構造列向量
fprintf('\n**********start**************\n',k);
for k=1:N
fprintf('%d\t',k);
%calculate x(1)
x(1)=b(1)/A(1,1);
for j=2:n
x(1)=x(1)-A(1,j)*x0(j)/A(1,1);
end
fprintf('%f\t',x(1));
%calculate x(i)
for i=2:n-1
x(i)=b(i)/A(i,i);
for j=1:i-1
x(i)=x(i)-A(i,j)*x(j)/A(i,i);
end
for j=i+1:n
x(i)=x(i)-A(i,j)*x0(j)/A(i,i);
end
fprintf('%f\t',x(i));
end
% calculate x(n)
x(n)=b(n)/A(n,n);
for j=1:n-1
x(n)=x(n)-A(n,j)*x(j)/A(n,n);
end
fprintf('%f\t',x(n));
if norm(x-x0)<E
break;
else
k=k+1;
x0=x;
end
fprintf('\n');
end
fprintf('\n***********end*************\n',k);
x0
x
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -