线性代数Matlab开卷考试
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
线性代数开卷考试题目Matlab解析过程:
1.习题1第4题(1)
>> A=[1,2,0,-1;-1,-4,1,2;1,-4,3,1;2,-10,7,3];B=[-1,3,1,4]';
>> C=[A,B];
>> rank(A) %求系数矩阵的秩
ans =
3
>> rank(C) %求增广矩阵的秩
ans =
3
>> rref(C) %用rref()函数求解,最后一列即为解
ans =
1.0000 0 1.0000 0 1.0000
0 1.0000 -0.5000 0 1.0000
0 0 0 1.0000 4.0000
0 0 0 0 0
说明:如果用用除法求X的值或者用inv()函数求解会出现警告:Warning: Matrix is close to singular or badly scaled. Results may be inaccurate.
RCOND = 4.440892e-18.
而且两者的计算结果都为x =
4.0000
-0.5000
-3.0000
4.0000
原因是:矩阵奇异!所以不能求逆!结果可能不准确!必须换成不用求逆的算法
查阅资料如下:
奇异矩阵的判断方法:首先,看这个矩阵是不是方阵(即行数和列数相等的矩阵。若行数和列数不相等,那就谈不上奇异矩阵和非奇异矩阵)。然后,再看此方阵的行列式|A|是否等于0,若等于0,称矩阵A为奇异矩阵;若不等于0,称矩阵A为非奇异矩阵。同时,由|A|≠0可知矩阵A可逆,这样可以得出另外一个重要结论:可逆矩阵就是非奇异矩阵,非奇异矩阵也是可逆矩阵。如果A为奇异矩阵,则AX=0有无穷解,AX=b有无穷解或者无解。如果A为非奇异矩阵,则AX=0有且只有唯一零解,AX=b有唯一解。
如果A(n×m)为奇异矩阵(singular matrix)<=> A的秩Rank(A) 如果A(n×m)为非奇异矩阵(nonsingular matrix)<=> A满秩,Rank(A)=n. 2.(1)当a取值为学号时 >> A=[1,-1,-2,3;1,-3,-6,2;1,5,0,-10;3,1,7,4];B=[0,-1,112,8]'; % 当a取值为学号时>> C=[A,B]; >> rank(A) %求系数矩阵的秩 ans = 4 >> rank(C) %求增广矩阵的秩 ans = 4 >> x=A\B %用除法求X的值 x = 14.6167 11.4100 -4.4467 -4.0333 >> reef(C) %用rref()函数求解,最后一列即为解 Undefined function 'reef' for input arguments of type 'double'. >> rref(C) ans = 1.0000 0 0 0 14.6167 0 1.0000 0 0 11.4100 0 0 1.0000 0 -4.4467 0 0 0 1.0000 -4.0333 >> x=inv(A)*B %用inv()函数求解 x = 14.6167 11.4100 -4.4467 -4.0333 2.(2)当a取值为常数a时 >> syms a %syms表示定义一个符号变量a,用于进行公式的化简和计算。 >> A=[1,-1,-2,3;1,-3,-6,2;1,5,0,-10;3,1,7,4];B=[0,-1,a,8]'; >> C=[A,B]; >> rank(A) %求系数矩阵的秩 ans = 4 >> rank(C) %求增广矩阵的秩 ans = 4 >> rref(C) %用rref()函数求解,最后一列即为解 ans = [ 1, 0, 0, 0, (7*conj(a))/60 + 31/20] % 说明:y = conj(x)其中x是一个n维的数值数[ 0, 1, 0, 0, (11*conj(a))/100 - 91/100] % 组。该调用将返回x中每个复数的共轭复数。[ 0, 0, 1, 0, 39/50 - (7*conj(a))/150] [ 0, 0, 0, 1, - conj(a)/30 - 3/10] >> x=A\B %用除法求X的值 x = (7*conj(a))/60 + 31/20 (11*conj(a))/100 - 91/100 39/50 - (7*conj(a))/150 - conj(a)/30 - 3/10 >> x=inv(A)*B %用inv()函数求解x = (7*conj(a))/60 + 31/20 (11*conj(a))/100 - 91/100 39/50 - (7*conj(a))/150 - conj(a)/30 - 3/10