當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。