1、,5. 5. 2 SOR法的Matlab函数文件,5. 5. 1 Jacobi迭代法的Matlab函数文件,5. 5 迭代法的若干Matlab函数文件,function x=jacobi_f(A,b,x0,tol,max)%迭代终止准则|x| tol,最大迭代次数max。n,m=size(A)xold=x0;C=-A;for i=1:n C(i,i)=0;endfor i=1:n C(i,:)=C(i,:)/A(i,i);endfor i=1:n d(i,1)=b(i)/A(i,i);,5. 5. 1 Jacobi迭代法的Matlab函数文件,endi=1;while i=max xnew=C
2、*xold+d if norm(xnew-xold)=tol x=xnew disp(Jacobi迭代法收敛) return; else xold=xnew; end disp(ixnew);,i=i+1;enddisp(Jacobi迭代法不收敛);disp(最大迭代次数后的结果为)x=xnew;,5. 5. 2 SOR法的Matlab函数文件,function x=sor_f(A,b,x0,w,tol,max)n,m=size(A);x=x0;C=-A;for i=1:n C(i,i)=0;Endfor i=1:n,C(i,1:n)=C(i,1:n)/A(i,i);end for i=1:n r(i,1)=b(i)/A(i,i);Endi=1;while i=max xold=x; for j=1:n x(j)=(1-w)*xold(j)+w*(C(j,:)*x+r(j); endif norm(xold-x)=tol,disp(SOR法收敛);return; end disp(i x); i=i+1;enddisp(SOR法不收敛);,