高斯消元法解方程matlab程序,用高斯消元法解线性方程组 的MATLAB程序
生活随笔
收集整理的這篇文章主要介紹了
高斯消元法解方程matlab程序,用高斯消元法解线性方程组 的MATLAB程序
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
%function [RA,RB,n,X]=gaus(A,b)
A=[1 2 3;
1 4 9;
1 8 27];
b=[
1
2
3
];
B=[A b];
n=length(b);
RA=rank(A); %A的秩
RB=rank(B); %B的秩
zhica=RB-RA;
if zhica>0
disp('請注意:因為RA~=RB,所以此方程組無解.');
return;
end
if RA==RB %方程有唯一解
if RA==n
disp('請注意:因為RA=RB=n,所以此方程組有唯一解.')
X=zeros(n,1);
%生成上三角矩陣
for p= 1:n-1
for k=p+1:n
m= B(k,p)/ B(p,p); %要將B(k,p)化為零的系數
B(k,p:n+1)= B(k,p:n+1)-m* B(p,p:n+1); %整行乘以這個系數,最
end
end
b=B(1:n,n+1);
A=B(1:n,1:n);
%求解上三角矩陣
X(n)=b(n)/A(n,n);
for q=n-1:-1:1
X(q)=(b(q)-sum(A(q,q+1:n)*X(q+1:n)))/A(q,q);
end
else %多解
disp('請注意:因為RA=RB
end
end
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的高斯消元法解方程matlab程序,用高斯消元法解线性方程组 的MATLAB程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (转)浏览器兼容的JS写法总结
- 下一篇: matlab text固定,[转载] 控