- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验7矩阵与线性方程组
实验7 矩阵与线性方程组
实验目的:
1.掌握matlab求矩阵的秩命令.
2.掌握matlab求方阵的行列式命令.
3.理解逆矩阵概念,掌握matlab求逆矩阵命令.
4.会用matlab求解线性方程组.
实验内容:
1.矩阵的秩.
指令rank(A)将给出矩阵A的秩.
例1:a=[3 2 -1 -3 -2;2 -1 3 1 -3;7 0 5 -1 -8]
a =
3 2 -1 -3 -2
2 -1 3 1 -3
7 0 5 -1 -8
rank(a)
ans =
2
2.方阵的行列式.
指令det(A)给出方阵A的行列式.
例2:
b=[1 2 3 4;2 3 4 1;3 4 1 2;4 1 2 3];
det(b)
ans =
160
det(b)
ans =
160
c=b;c(:,1)=2*b(:,1);
det(c)
ans =
320
det(b(:,[3 2 1 4]))
ans =
-160
d=b;d(2,:);
det(d)
ans =
160
你能解释上例中的运算结果吗?在这里我们实际上验证了行列式的性质.
3.逆矩阵
指令inv(A)给出方阵A的逆矩阵,如果A不可逆,则inv(A)给出的矩阵的元素都是Inf.
例3:设,求的逆矩阵.
解:输入指令:
A=[1 2 3;2 2 1;3 4 3];
B=inv(A)
B =
1.0000 3.0000 -2.0000
-1.5000 -3.0000 2.5000
1.0000 1.0000 -1.0000
还可以用伴随矩阵求逆矩阵,打开m文件编辑器,建立一个名为companm的M-文件文件内容为:
function y=companm(x)
[n,m]=size(x);
y=[];
for j=1:n;
a=[];
for i=1:n;
x1=det(x([1:i-1,i+1:n],[1:j-1,j+1:n]))*(-1)^(i+j);
a=[a,x1];
end
y=[y;a];
end
利用该函数可以求出一个矩阵的伴随矩阵.
输入命令:
C=1/det(A)*companm(A)
C =
1.0000 3.0000 -2.0000
-1.5000 -3.0000 2.5000
1.0000 1.0000 -1.0000
利用初等变换也可以求出逆矩阵,构造n行2n列的矩阵(A E),并进行行初等变换,当把A变为单位矩阵时,E就变成了A的逆矩阵.利用matlab命令rref可以求出矩阵的行简化阶梯形.输入命令:
D=[A,eye(3)]
D =
1 2 3 1 0 0
2 2 1 0 1 0
3 4 3 0 0 1
rref(D)
ans =
1.0000 0 0 1.0000 3.0000 -2.0000
0 1.0000 0 -1.5000 -3.0000 2.5000
0 0 1.0000 1.0000 1.0000 -1.0000
线性方程组的求解是用矩阵除来完成的,,当且可逆时,给出唯一解.这时矩阵除相当于;当时,矩阵除给出方程的最小二乘解;当时,矩阵除给出方程的最小范数解.
例4:解方程组:
解:输入命令:
a=[1 -1 1 2;1 1 -2 1;1 1 1 0;1 0 1 -1];
b=[1;1;2;1];
x=a\b
x =
0.8333
0.7500
0.4167
0.2500
输入命令:
z=inv(a)*b
z =
0.8333
0.7500
0.4167
0.2500
文档评论(0)