2024-06-14 05:54:41 发布
网友
我正在学习如何使用Numpy。假设我有一个多项式的根。我使用 coeff = np.polynomial.polynomial.polyfromroots(roots) 得到多项式的系数作为一个数组。然后我用 print np.poly1d(coeff) 打印出多项式。让这个多项式
coeff = np.polynomial.polynomial.polyfromroots(roots)
print np.poly1d(coeff)
x^2 +3x + 2
现在我如何转换变量,使之
x is now 2/x
这就是等式
(2/x)^2 + 6/x + 2
在scilab中,我可以使用horner函数来实现这一点。在纽比有可能吗?在
在SymPy中,这很简单:
from sympy.abc import x f = x**2 + 3*x + 2 g = f.subs({x:2/x})
导致:
结果表达式is not a polynomial,和{a2}在这里可能是一个更好的选择。在
或者,你可以通过适当的数值因子来缩放多项式的系数
coeff *= np.power(factor, np.arange(len(coefs)-1, -1, -1)) # factor=2 here
然后使用numpy中的多项式函数,用变量1/x代替{}。在
1/x
在SymPy中,这很简单:
导致:
^{pr2}$结果表达式is not a polynomial,和{a2}在这里可能是一个更好的选择。在
或者,你可以通过适当的数值因子来缩放多项式的系数
然后使用numpy中的多项式函数,用变量}。在
1/x
代替{相关问题 更多 >
编程相关推荐