欢迎来到天天文库
浏览记录
ID:44703413
大小:71.50 KB
页数:3页
时间:2019-10-25
《MATLAB实现列主元消去法求解任意线性方程组的解》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、%MATLAB实现列主元消去法求解任意线性方程组的解clearallcloseallclcformatlongedisp('请输入参数');K=input('维数n=');ticA=100*rand(K);%A元素是0-100fori=1:KA(i,i)=sum(abs(A(i,:)))+25*rand(1);%对角占优的量为0~25endb=zeros(K,1);fori=1:K;x=0;forr=1:K;x=x+A(i,r);endb(i,1)=x;end%产生b矩阵,b中的元素为A中对应行的和,目的是使方程解
2、全为1jd=input('控制精度jd=');A=[Ab];%矩阵增广fork=1:K-1B=A(k:K,k);%先将第k列可能作为主元的元素取出方至矩阵BP=max(abs(B));%%选主元Pif(P3、,k:K+1)=A(k+i,k:K+1)-m(i)*A(k,k:K+1);%消元按行进行endendendifA(K,K)==0disp('无解');%若矩阵A不满秩,则无解elsex(K)=A(K,K+1)/A(K,K);%由最后一行首先求出方程组的第一个解x(n)fori=K-1:-1:1%计算第i个解x(i)forj=1:1:K-i%利用回代思想A(i,K+1)=A(i,K+1)-A(i,i+j)*x(i+j);%减去已知部分endx(i)=A(i,K+1)/A(i,i);endenddisp('方程组的解'4、);x=x'%输出方程组的解toct=1:K;yy=abs(x'-1)/1;plot(t,yy);title('绝对误差图')
3、,k:K+1)=A(k+i,k:K+1)-m(i)*A(k,k:K+1);%消元按行进行endendendifA(K,K)==0disp('无解');%若矩阵A不满秩,则无解elsex(K)=A(K,K+1)/A(K,K);%由最后一行首先求出方程组的第一个解x(n)fori=K-1:-1:1%计算第i个解x(i)forj=1:1:K-i%利用回代思想A(i,K+1)=A(i,K+1)-A(i,i+j)*x(i+j);%减去已知部分endx(i)=A(i,K+1)/A(i,i);endenddisp('方程组的解'
4、);x=x'%输出方程组的解toct=1:K;yy=abs(x'-1)/1;plot(t,yy);title('绝对误差图')
此文档下载收益归作者所有