三种迭代法matlab程序 数值分析
function X=gseid(A,b,P,delta,max1) %A是n维非奇异阵。%b是n维向量。%P是初值。 %delta是误差界。%max1是给定的迭代最高次数。%X为所求的方程组AX=b的近似解。 N=length(b); for k=1:max1 for j=1:N if j==1 X(1)=(b(1)-A(1,2:N)*P(2:N))/A(1,1); elseif j==N X(N)=(b(N)-A(N,1:N-1)*(X(1:N-1))')/A(N,N); else X(j)=(b(j)-A(j,1:j-1)*X(1:j-1)-A(j,j+1:N)*P(j+1:N))/A(j,j); end end err=abs(norm(X'-P)); P=X'; if(err