matlab之列主元素高斯消去法

技术小白的我第一次接触MATLAB这个软件,今早上课学习了高斯列主元素高斯消去法,不是很熟练,决定用matlab写一个可以完成这个算法的小程序以加深自己对这个算法的印象。借鉴了网上给的各种代码,基本大致地照搬别人的代码,自己写了一个:%高斯消去法
disp('方程AX=b为')
A
b
disp('----------------')
n=length(b);
eps=10^-9;
for i=1:n
[c,index]=max(abs(A(i:n,i)));
if c<eps
disp('列主元素太小');
break;
elseif index>i
temp=A(:,i);
A(:,i)=A(:,index);
A(:,index)=temp;
end
for j=i+1:n
m=A(j,i)/A(i,i);
A(j,i:n)=A(j,i:n)-m*A(j,i:n);
b(i)=b(i)-m*b(i);
end
end
%回代
b(n)=b(n)/A(n,n);
for k=n-1:-1:1
b(k)=(b(k)-sum(A(k,k+1:n).*b(k+1:n)'))/A(k,k)
end
clear x;
x=b;
disp('方程的解为')
x

(记录学习的每一步,所借鉴的代码作学习用,不涉及侵权)

  • 7
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值