如何评估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
让我评估函数?
答案 0 :(得分:1)
取多项式本身的导数。那是P
:
P.deriv()