24小时热门版块排行榜    

查看: 5025  |  回复: 1

springer_

木虫 (著名写手)


[交流] 高斯消去法解线性方程组的MATLAB程序

高斯消去法的思想很朴素,方法是通过对增广矩阵实施消元变换,而在变换的过程中与
原方程保持等价,直到矩阵变为上三角矩阵,这时候可以采用上一节介绍的方法进行回代,
便得到方程组的解。

function [x] = gaussElimin(A,b)
n = length(b);
for k = 1:n-1
   for i= k+1:n
      if A(i,k) ~= 0
          alpha = A(i,k)/A(k,k);
          A(i,k+1:n) = A(i,k+1:n) - alpha*A(k,k+1:n);
          b(i)= b(i) - alpha*b(k);
       end
    end
end
for k = n:-1:1
   b(k) = (b(k) - A(k,k+1:n)*b(k+1:n))/A(k,k);
end
x = b;

end

[ Last edited by 月只蓝 on 2017-2-20 at 08:20 ]
回复此楼

» 猜你喜欢

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
简单回复
2017-02-19 21:09   回复  
springer_(金币+1): 谢谢参与
发自小木虫IOS客户端
相关版块跳转 我要订阅楼主 springer_ 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见