function x=ak(a,b)%a为系数矩阵,b为初始向量(默认为零向量)
%e为精度(默认为1e-6),N为最大迭代次数(默认为100),x为返回解向量
n=length(b);
N=100;
e=1e-6;
x0=zeros(n,1)
1word格式支持编辑,如有帮助欢迎下载支持。
文档从互联网中收集,已重新修正排版,word格式支持编辑,如有帮助欢迎下载支持。
%生成一n*1阶零矩阵
x=x0;
x0=x+2*e;
k=0;
d=diag(diag(a));
%生成一个除对角线上元素不为零外其他元素皆为零的矩阵d,且d对角线上的元素为矩阵a对角线上的元素
l=-tril(a,-1);
%生成一个下三角矩阵
u=-triu(a,1);
%生成一个上三角矩阵
while norm(x0-x,inf)>e & k x0=x; 2word格式支持编辑,如有帮助欢迎下载支持。 文档从互联网中收集,已重新修正排版,word格式支持编辑,如有帮助欢迎下载支持。 x=inv(d)*(l+u)*x+inv(d)*b;%雅可比迭代公式 k disp(x') end if k==N warning('已达最大迭代次数'); end 3word格式支持编辑,如有帮助欢迎下载支持。 文档从互联网中收集,已重新修正排版,word格式支持编辑,如有帮助欢迎下载支持。 function X=BDD(f,x0,TOL) %X用来存储迭代过程所有的根; %f是符合不动点迭代要求的迭代方程; %x0设定的迭代初值; %TOL允许的误差值; x=feval(f,x0); n=1; 4word格式支持编辑,如有帮助欢迎下载支持。 文档从互联网中收集,已重新修正排版,word格式支持编辑,如有帮助欢迎下载支持。 X(:,n)=x; while abs(x-x0)>TOL x0=x; x=feval(f,x0); n=n+1; X(:,n)=x; end 5word格式支持编辑,如有帮助欢迎下载支持。 因篇幅问题不能全部显示,请点此查看更多更全内容