gpt4 book ai didi

python - scipy 和 numpy 中切比雪夫多项式实现的区别

转载 作者:太空宇宙 更新时间:2023-11-03 14:54:23 24 4
gpt4 key购买 nike

谁能告诉我 numpy 中的 Chebyshev 之间的区别-

numpy.polynomial.Chebyshev.basis(deg) 

和切比雪夫的 scipy 解释-

scipy.special.chebyt(deg)

这会很有帮助。提前致谢!

最佳答案

scipy.special 多项式函数使用np.poly1dwhich is outdated and error prone - 特别是,它将 x0 的索引存储在 poly.coeffs[-1]

numpy.polynomial.Chebyshev 不仅以更合理的顺序存储系数,而且按照它们的基础来保存它们,从而提高精度。您可以使用 cast 方法进行转换:

>>> from numpy.polynomial import Chebyshev, Polynomial

# note loss of precision
>>> sc_che = scipy.special.chebyt(4); sc_che
poly1d([ 8.000000e+00, 0.000000e+00, -8.000000e+00, 8.881784e-16, 1.000000e+00])

# using the numpy functions - note that the result is just in terms of basis 4
>>> np_che = Chebyshev.basis(4); np_che
Chebyshev([ 0., 0., 0., 0., 1.], [-1., 1.], [-1., 1.])

# converting to a standard polynomial - note that these store the
# coefficient of x^i in .coeffs[i] - so are reversed when compared to above
>>> Polynomial.cast(np_che)
Polynomial([ 1., 0., -8., 0., 8.], [-1., 1.], [-1., 1.])

关于python - scipy 和 numpy 中切比雪夫多项式实现的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43740553/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com