关于Matlab下Jacobimatrix的转置问题
Hallo zusammen,想请教一个矩阵转置的问题。
我现在已经编出了Jacobian矩阵
J =
[ 2*x1, 2*y1, 0, 0, 0, 0]
[ 2*x1 - 2*x2, 2*y1 - 2*y2, 2*x2 - 2*x1, 2*y2 - 2*y1, 0, 0]
[ y3 - y2, x2 - x3, y1 - y3, x3 - x1, y2 - y1, x1 - x2]
为什么当它转置的时候,输入命令 J'
>> J'
ans =
[ 2*conj(x1), 2*conj(x1) - 2*conj(x2), conj(y3) - conj(y2)]
[ 2*conj(y1), 2*conj(y1) - 2*conj(y2), conj(x2) - conj(x3)]
[ 0, 2*conj(x2) - 2*conj(x1), conj(y1) - conj(y3)]
[ 0, 2*conj(y2) - 2*conj(y1), conj(x3) - conj(x1)]
[ 0, 0, conj(y2) - conj(y1)]
[ 0, 0, conj(x1) - conj(x2)]
为什么非零元素都是 复数?
如何得到正常的转置矩阵呢
谢谢回答 试试
J.' 本帖最后由 THOMAS_F 于 2010-8-11 13:48 编辑
并不是复数。用符号运算后,这是正常结果。因为你定义的符号xi,yi,虽然你自己知道是实数,但对系统来数它们都是变量,可能复数。 所以在运算时采用conj函数。 以确保计算正确。 用J.'则是做实数变化,系统以实数处理符号,就没了conj函数。
页:
[1]