从行列式到多项式

时间:2017-04-04 18:14:31

标签: python numpy math sympy

问题

您好,

我正在解决以下问题:

我有一个决定因素3x3。它充满了数字,其中有一个变量 x 。该行列式可以转移到单个多项式方程。我可以找到这个等式的根,然后f.e。由numpy.roots。然而,从行列式到多项式方程的转换肯定是有效的。

所以我的问题是:

是否有一种简单的方法可以用行列式多项式方程来制作? (f.e.使用sympy)

其他信息

你可以想象转移如下:

2]

对于更大的矩阵3x3,当每个成员可以是第三或第四度的多项式时,你可以有200个多项式来自行列式,你必须对它进行排序和求和。

1 个答案:

答案 0 :(得分:3)

sympy

中很简单
import sympy
import numpy as np

x = sympy.Symbol('x')
m = sympy.Matrix([[1 + x, 2], [x - 5, x**2 - 2*x + 3]])
print(m.det())
print(m.det().as_poly().coeffs())

打印:

x**3 - x**2 - x + 13
[1, -1, -1, 13]