scipy.special.
chebyt#
- scipy.special.chebyt(n, monic=False)[source]#
第一类切比雪夫多项式。
定义为
\[(1 - x^2)\frac{d^2}{dx^2}T_n - x\frac{d}{dx}T_n + n^2T_n = 0;\]\(T_n\) 是 \(n\) 度多项式。
- 参数:
- nint
多项式的度。
- monicbool, optional
如果为 True,缩放首项系数为 1。默认值为 False。
- 返回:
- Torthopoly1d
第一类切比雪夫多项式。
另请参见
chebyu
第二类切比雪夫多项式。
注意事项
多项式 \(T_n\) 在权函数 \((1 - x^2)^{-1/2}\) 下正交于 \([-1, 1]\)。
引用
[AS]Milton Abramowitz 和 Irene A. Stegun 编著,带公式、图表和数学表格的数学函数手册。纽约:Dover,1972 年。
示例
一类\(n\)阶切比雪夫多项式可以作为特定\(n \times n\)矩阵的行列式得到。作为示例,我们可以检查如下\(3 \times 3\)矩阵行列式得到的点如何恰好位于\(T_3\)上
>>> import numpy as np >>> import matplotlib.pyplot as plt >>> from scipy.linalg import det >>> from scipy.special import chebyt >>> x = np.arange(-1.0, 1.0, 0.01) >>> fig, ax = plt.subplots() >>> ax.set_ylim(-2.0, 2.0) >>> ax.set_title(r'Chebyshev polynomial $T_3$') >>> ax.plot(x, chebyt(3)(x), label=rf'$T_3$') >>> for p in np.arange(-1.0, 1.0, 0.1): ... ax.plot(p, ... det(np.array([[p, 1, 0], [1, 2*p, 1], [0, 1, 2*p]])), ... 'rx') >>> plt.legend(loc='best') >>> plt.show()
它们还通过以下关系与雅可比多项式\(P_n^{(-0.5, -0.5)}\)相关
\[P_n^{(-0.5, -0.5)}(x) = \frac{1}{4^n} \binom{2n}{n} T_n(x)\]让我们对\(n = 3\)验证它
>>> from scipy.special import binom >>> from scipy.special import jacobi >>> x = np.arange(-1.0, 1.0, 0.01) >>> np.allclose(jacobi(3, -0.5, -0.5)(x), ... 1/64 * binom(6, 3) * chebyt(3)(x)) True
我们可以绘制一些\(n\)值的切比雪夫多项式\(T_n\)
>>> x = np.arange(-1.5, 1.5, 0.01) >>> fig, ax = plt.subplots() >>> ax.set_ylim(-4.0, 4.0) >>> ax.set_title(r'Chebyshev polynomials $T_n$') >>> for n in np.arange(2,5): ... ax.plot(x, chebyt(n)(x), label=rf'$T_n={n}$') >>> plt.legend(loc='best') >>> plt.show()