评估numpy chebychev多项式的导数

时间:2018-03-09 18:30:56

标签: python numpy

如何评估numpy chebychev多项式的导数?我发现它非常不直观。看起来chebval根本不提供此选项。在numpy's docs(在微积分部分的末尾),这是我尝试过的最合理的事情:

> import numpy as np
> xf = 3
> P = np.polynomial.Chebyshev([0, xf])
> P(np.linspace(0, 3, 5))
array([0.        , 2.35619449, 4.71238898, 7.06858347, 9.42477796])
> P(np.linspace(0, 3, 5)).deriv(1)
AttributeError: 'numpy.ndarray' object has no attribute 'deriv'

我似乎无法提供np.polynomial.Chebyshev系数。我只能使用chebval

P(np.linspace(0, 3, 5), [1,2,3])
TypeError: __call__() takes exactly 2 arguments (3 given)

我实际上也对文档感到困惑。如何提供np.polynomial.Chebyshev系数? chebval更加直观:

> np.polynomial.chebyshev.chebval(np.linspace(0, 3, 5), [3, 2, 1])
array([ 2.   ,  4.625,  9.5  , 16.625, 26.   ])
> np.polynomial.chebyshev.chebval(np.linspace(0, 3, 5), [3, 2, 1]).deriv(1)
AttributeError: 'numpy.ndarray' object has no attribute 'deriv'

所以,我很困惑。如何提供numpy chebychev系数和x点并获得导数,如chebval让我评估函数?

1 个答案:

答案 0 :(得分:1)

多项式本身的导数。那是P

P.deriv()