一.
1.迭代方程式
雅可比迭代
Ax=b,对方程组,只要有解一般都能解出。
例:Ax=b 解方程组
11x16414.252.75x20.512.753.5x1.253
2.迭代M文件的程序
function x = Jacobi_f(A,b,x0,tol,max)
% Óà Jacobi µü´ú·¨Çó½â·½³Ì×éAx=b
% ÊäÈ룺AÊÇÒ»¸önXnϵÊý¾ØÕó£¬bÊÇnx1µÄÓÒ¶ËÏòÁ¿
% Êä³ö£ºxÊÇnx1µÄ½âÏòÁ¿
% tol Ϊµü´úÎó²îÈÝÏÞ£¬×î´óµü´ú´ÎÊýmax
[n,m]=size(A);
xold = x0;C= - A;
for i= 1:n
C(i,i)=0;
end
for i=1:n
C(i,:)=C(i,:)/A(i,i);
end
for i=1:n
d(i,1)=b(i)/A(i,i);
end
i=1;
while i <= max
xnew = C * xold + d;
if norm(xnew - xold) <= tol
x = xnew;
disp('Jacobi µü´ú·¨ÊÕÁ²')
return;
else
xold = xnew;
end
disp([xnew']);
i=i+1;
end
disp('Jacobi µü´ú·¨²»ÊÕÁ²')
disp('×î´óµü´ú´ÎÊýµÄ½á¹ûΪ')
x=xnew;
3. 迭代结果的程序
截屏的程序:
function x = Jacobi_f(A,b,x0,tol,max)
对任意的方程组只要出入A,b,x0,tol,max 参数就行了。
因篇幅问题不能全部显示,请点此查看更多更全内容