结果运算出来x全是NaN,(这是我设b=(1 1 1 ..... 1)'的结果)(如果将b=(0 0 0 ..... 0)就会算出来x=(0 0 0 ....0))
function [x,iter]=mjacobi(A,b,x,ep,N)
if nargin<5, N=500; end
if nargin<4, ep=1e-6; end
if nargin<3, x=zeros(size(b)); end
D=diag(diag(A));
for iter=1:N
x=D\((D-A)*x+b);
err=norm(b-A*x)/norm(b);
if err<ep, break; end
end (这个算法我是按照书上吵的)
矩阵A=
[4 -1/3 -1/5 -1/3 4 ....... ;
-1/3 4 -1/3 -1/5 -1/3 ........ ;
-1/5 -1/3 -4 -1/3 -1/5 ........ ;
......... ];(20*20)