我有以下对称矩阵sympy
:
m = sympy.Matrix([[x**2, x**3, x**4],
[x**3, x**5, x**6],
[x**4, x**6, x**7]])
我的目标是获得这个矩阵的上三角形作为一个扁平数组,比如[x**2, x**3, x**4, x**5, x**6, x**7]
,可以由 处理lambdify
。
我用 Innumpy
来辅助实现这一点:
f = lambdify((x), sympy.Matrix(np.array(m)[np.triu_indices(m.shape[0])]))
所以这f(2.)
给出了:
[[ 4. 8. 16. 32. 64. 128.]]
问题是:
- 有没有本地方法可以做到这一点
sympy
?
奖金:
- 有没有办法获得 a
1D-array
而不是 amatrix
?