欢迎来到天天文库
浏览记录
ID:50743099
大小:89.50 KB
页数:3页
时间:2020-03-14
《matlab迭代法解线性方程组.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、functionx=ak(a,b)%a为系数矩阵,b为初始向量(默认为零向量)%e为精度(默认为1e-6),N为最大迭代次数(默认为100),x为返回解向量n=length(b);N=100;e=1e-6;x0=zeros(n,1)%生成一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);%生成一个上三角矩阵whilenorm(x0-x,inf)>e&k<
2、N%norm(x0-x,inf)为矩阵(x0-x)的无穷范数k=k+1;x0=x;x=inv(d)*(l+u)*x+inv(d)*b;%雅可比迭代公式kdisp(x')endifk==Nwarning('已达最大迭代次数');endfunctionX=BDD(f,x0,TOL)%X用来存储迭代过程所有的根;%f是符合不动点迭代要求的迭代方程;%x0设定的迭代初值;%TOL允许的误差值;x=feval(f,x0);n=1;X(:,n)=x;whileabs(x-x0)>TOL x0=x; x=feval(f,x0); n=n+1;
3、X(:,n)=x;end
此文档下载收益归作者所有