MATLAB符号矩阵的求逆运算:inv函数和det函数
这两种运算都要求所给的矩阵为方阵,在MATLAB语言中,分别使用inv函数和det函数来实现这两种功能。
·inv函数可以用来求方阵的逆,inv(X)命令所求值就是方阵X的逆。当X奇异或范数很小时,系统将给出错误信息。
·det函数可以求方阵的行列式,det(X)命令所求值就是方阵X的行列式。
例题 符号矩阵的求逆运算
>> a=sym(hilb(5))
a =
[ 1, 1/2, 1/3, 1/4, 1/5]
[ 1/2, 1/3, 1/4, 1/5, 1/6]
[ 1/3, 1/4, 1/5, 1/6, 1/7]
[ 1/4, 1/5, 1/6, 1/7, 1/8]
[ 1/5, 1/6, 1/7, 1/8, 1/9]
>> inv(a)
ans =
[ 25, -300, 1050, -1400, 630]
[ -300, 4800, -18900, 26880, -12600]
[ 1050, -18900, 79380, -117600, 56700]
[ -1400, 26880, -117600, 179200, -88200]
[ 630, -12600, 56700, -88200, 44100]
>> det(a)
ans =
1/266716800000
>> b=sym('[1,x;1/x;x^2]')
b =
[ 1, x]
[ 1/x, 0]
[ x^2, 0]
>> inv(b)
Error using mupadmex
Error in MuPAD command: Error: Expecting a square
matrix. [linalg::inverse]
Error in sym/inv (line 1528)
X = mupadmex('symobj::inv',A.s);
此时,由于b是奇异矩阵,系统给出错误警告。