我正在尝试使用sympy帮助我在矩阵表达式中隔离矢量 . 我写了这段代码:
import sympy
from sympy import symbols, MatrixSymbol, Matrix
from sympy import Identity
Xp = MatrixSymbol('Xp', 3,1)
t = MatrixSymbol('t', 3,1)
n = MatrixSymbol('n', 3,1)
H = n.T*Xp*Identity(3) - t*n.T
我的意图是隔离n . 我不确定sympy是否可以做到这一点,但我已经得到了'ShapeError:Matrices n'* Xp并且我没有对齐',我认为这个错误不应该发生,因为n'* Xp是一个标量所以它应该是能够与矩阵相乘 .
如何才能使表达式 n.T*Xp*Identity(3)
有效?并且,能否同意帮助我在这个等式中分离出向量n?
1 回答
有维度签名
这显然是行不通的 .
可以工作 .
如果你想解决
对于
n
然后第一个评论是,这并不总是可行的 . 假设存在解决方案,请注意以便
其中
a
未知,b=1/(t.T*t)
. 插入原始等式给出要么
在右侧矩阵的每个非平凡分量中,它将给出
a
的值,但只有在所有这些值相同的情况下才存在解 .