MATLAB符号矩阵的四则运算

2020年12月9日20:13:37MATLAB符号矩阵的四则运算已关闭评论

MATLAB符号矩阵的四则运算

·A+B和A-B命令可以实现符号阵列的加法和减法。若A与B为同型阵列时,A+B、A-B分别对对应分量进行加减;若A与B中至少有一个为标量,则把标量扩大为与另外一个同型的阵列,再按对应的分量进行加减。

·A*B命令可以实现符号矩阵的乘法。A*B为线性代数中定义的矩阵乘法。按乘法定义要求必须有矩阵A的列数等于矩阵B的行数或者至少有一个为标量时,方可进行乘法操作,否则系统将返回出错信息。

·A\B命令可以实现矩阵的左除法。X=A\B为符号线性方程组A*X=B的解。需要指出的是, A\B近似地等于inv(A)*B。若X不存在或者不唯一,则产生警告信息。矩阵A可以是矩形矩阵(即非正方形矩阵),但此时要求方程组必须是相容的。

·A/B命令可以实现矩阵的右除法。X=A/B为符号线性方程组X*A=B的解。需要指出的是, B/A粗略地等于B*inv(A)。若X不存在或者不唯一,则提示警告信息。矩阵A可以是矩形矩阵(即非正方形矩阵),但此时要求方程组必须是相容的。

例题 符号矩阵的四则运算

>> a=sym('[2*x,1/x,x^2,sin(x)]')

a =

[ 2*x, 1/x, x^2, sin(x)]

>> b=sym('[x,y,y^2,y*2]')

b =

[ x, y, y^2, 2*y]

>> a+b

ans =

[ 3*x, y + 1/x, x^2 + y^2, 2*y + sin(x)]

>> a-b

ans =

[ x, 1/x - y, x^2 - y^2, sin(x)- 2*y]

>> a'*b

ans =

[ 2*x*conj(x), 2*y*conj(x), 2*y^2*conj(x),  4*y*conj(x)]

[  x/conj(x),  y/conj(x),  y^2/conj(x), (2*y)/conj(x)]

[ x*conj(x)^2, y*conj(x)^2, y^2*conj(x)^2, 2*y*conj(x)^2]

[ x*sin(conj(x)), y*sin(conj(x)), y^2*sin(conj(x)), 2*y*sin(conj(x))]

>> a\b

ans =

[ 1/2, y/(2*x), y^2/(2*x), y/x]

[ 0,  0,  0, 0]

[ 0,  0,  0, 0]

[ 0,  0,  0, 0]

>> a/b

Warning: System is inconsistent. Solution does not exist.

ans =

Inf

由程序结果可见,由于a/b的结果不存在或者不唯一,所以系统提示错误信息,并将其值定为Inf。

  • 版权声明:本篇文章(包括图片)来自网络,由程序自动采集,著作权(版权)归原作者所有,如有侵权联系我们删除,联系方式(QQ:452038415)。