matlab数值分析程序--高等数学,数值代数的matlab实现-文字版, matlab电子书, 和matlab 有关的电子书:

3.2.2 解三角形方程组的MATLAB程序

3.2.2  解三角形方程组的MATLAB程序

解上三角形线性方程组的MATLAB程序

function [RA,RB,n,X]=shangsan(A,b)

B=[A b]; n=length(b); RA=rank(A); RB=rank(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); X(n)=b(n)/A(n,n);

for k=n-1:-1:1

 X(k)=(b(k)-sum(A(k,k+1:n)*X(k+1:n)))/A(k,k);

      end

    else

      disp('请注意:因为RA=RB<n,所以此方程组有无穷多解.')

end

end

 

例3.2.2   用解上三角形线性方程组的MATLAB程序解方程组

.

解    在MATLAB工作窗口输入程序

>>A=[5 -1 2 3;0 -2 7 -4;0 0 6 5;0 0 0 3];

b=[20; -7; 4;6];

[RA,RB,n,X]=shangsan(A,b)

运行后输出结果

请注意:因为RA=RB=n,所以此方程组有唯一解.

RA =       RB =

4,         4,

n =

4,

X =[2.4  -4.0  -1.0   2.0]’

欢迎转载,转载请注明来自一手册:http://yishouce.com/book/3/3030202.html
友情链接It题库(ittiku.com)| 版权归yishouce.com所有| 友链等可联系 admin#yishouce.com|粤ICP备16001685号-1