- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
试验五线性方程组求解
实验五 线性方程组求解
线性方程组的求解问题是线性代数要解决的核心问题之一,运用Matlab来求解线性方程组的方案很多,本节我们尽可能多的全面详细地介绍这方面的问题。
一、实验目的
本实验旨在使同学熟练掌握运用Matlab求解线性方程组。
二、实验内容
1、判别线性方程组解的情况
要解线性方程组,首先要对其解的情况进行判别,是有解还是无解,有解时,是有唯一解还是无穷多解,这些是求解线性方程组的第一步,Matlab为此提供了必备的命令。下面我们就讨论这方面内容。
(1)运用命令行
例1:判别如下方程组解的情况
下面用Ab表示方程组的增广矩阵,A表示系数阵,判别的命令与结果如下:
Ab=[2 4 3 2 2;3 6 5 2 2;2 5 2 -3 3;4 5 14 14 11]
Ab =
2 4 3 2 2
3 6 5 2 2
2 5 2 -3 3
4 5 14 14 11
A=Ab(:,1:4) %A =
2 4 3 2
3 6 5 2
2 5 2 -3
4 5 14 14
r1=rank(Ab)
r1 =
4
r2=rank(A)
r2 =
4
由此可见,系数阵的秩与增广阵的秩相等并且等于未知数的个数,由判定定理我们有上述方程组有唯一解。
例2
下面用Ab表示方程组的增广矩阵,A表示系数阵,判别的命令与结果如下:
Ab=[1 1 1 1 1;1 2 3 4 0;2 3 4 5 -1]
Ab =
1 1 1 1 1
1 2 3 4 0
2 3 4 5 -1
A=Ab(:,1:4)
A =
1 1 1 1
1 2 3 4
2 3 4 5
rank(Ab)
ans =
3
rank(A)
ans =
2
由此,我们可见系数阵的秩为2增广阵的秩为3,故上述方程组无解。
例3
下面用Ab表示方程组的增广矩阵,A表示系数阵,判别的命令与结果如下:
Ab=[1 1 1 1 1;1 2 3 4 0;2 3 -1 5 -1]
Ab =
1 1 1 1 1
1 2 3 4 0
2 3 -1 5 -1
A=Ab(:,1:4)
A =
1 1 1 1
1 2 3 4
2 3 -1 5
rank(Ab)
ans =
3
rank(A)
ans =
3
由此,我们可见系数阵的秩为3增广阵的秩为3,但秩数小于未知数的个数,故上述方程组有解,且有无穷多解。
(2)自编程序
程序如下:
function fczj(Ab) % Ab为该方程组的增广阵
[m,n]=size(Ab);
A=Ab(:,1:n-1); % A为系数矩阵
r1=rank(A);
r2=rank(Ab);
if r1r2
disp(该方程组无解);
else
disp(该方程组有解);
if r1==n-1
disp(且有唯一解);
else
disp(且有无穷多解);
end
end
保存文件,运行如下:
Ab=[1 1 1 1 1;1 2 3 4 0;2 3 4 5 -1]
Ab =
1 1 1 1 1
1 2 3 4 0
2 3 4 5 -1
fczj(Ab)
该方程组有解
且有无穷多解
说明:只需输入方程组的增广阵即可。
2、有唯一解时求解
当我们判别了方程组有唯一解的时候求解的方法如下:
(1)利用左除
例:
通过前面的判别我们知道该方程组有唯一解,下面是求解的过程:
Ab=[2 4 3 2 2;3 6 5 2 2;2 5 2 -3 3;4 5 14 14 11]
Ab =
2 4
文档评论(0)