当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python SciPy special.chebyu用法及代码示例


本文简要介绍 python 语言中 scipy.special.chebyu 的用法。

用法:

scipy.special.chebyu(n, monic=False)#

第二类切比雪夫多项式。

定义为解决方案

是一次多项式

参数

n int

多项式的次数。

monic 布尔型,可选

如果为 True,则将前导系数缩放为 1。默认为 False。

返回

U orthopoly1d

第二类切比雪夫多项式。

注意

多项式 正交,权重函数为

参考

[AS]

Milton Abramowitz 和 Irene A. Stegun 合编。带有公式、图表和数学表格的数学函数手册。纽约:多佛,1972 年。

例子

第二类切比雪夫多项式 可以作为特定 矩阵的行列式获得。例如,我们可以检查从以下 矩阵的行列式获得的点如何准确地放置在 上:

>>> import numpy as np
>>> import matplotlib.pyplot as plt
>>> from scipy.linalg import det
>>> from scipy.special import chebyu
>>> 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 $U_3$')
>>> ax.plot(x, chebyu(3)(x), label=rf'$U_3$')
>>> for p in np.arange(-1.0, 1.0, 0.1):
...     ax.plot(p,
...             det(np.array([[2*p, 1, 0], [1, 2*p, 1], [0, 1, 2*p]])),
...             'rx')
>>> plt.legend(loc='best')
>>> plt.show()
scipy-special-chebyu-1_00_00.png

它们满足递归关系:

其中 是第一类切比雪夫多项式。让我们为 验证它:

>>> from scipy.special import chebyt
>>> x = np.arange(-1.0, 1.0, 0.01)
>>> np.allclose(chebyu(3)(x), 2 * chebyt(2)(x) * chebyu(1)(x))
True

我们可以为 的某些值绘制切比雪夫多项式

>>> x = np.arange(-1.0, 1.0, 0.01)
>>> fig, ax = plt.subplots()
>>> ax.set_ylim(-1.5, 1.5)
>>> ax.set_title(r'Chebyshev polynomials $U_n$')
>>> for n in np.arange(1,5):
...     ax.plot(x, chebyu(n)(x), label=rf'$U_n={n}$')
>>> plt.legend(loc='best')
>>> plt.show()
scipy-special-chebyu-1_01_00.png

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.special.chebyu。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。