numpy.i0#

numpy.i0(x)[原始碼]#

第一類零階修正貝索函數。

通常表示為 \(I_0\)

參數:
xfloat 類型的陣列型物件

貝索函數的引數。

傳回:
outndarray,形狀 = x.shape,dtype = float

x 的每個元素上評估的修正貝索函數。

註解

建議使用 scipy 實作來取代此函數:它是在 C 中編寫的適當 ufunc,速度快了一個數量級以上。

我們使用 Clenshaw [1] 發布並由 Abramowitz 和 Stegun [2] 參考的演算法,其中函數域劃分為兩個區間 [0,8] 和 (8,inf),並且在每個區間中使用 Chebyshev 多項式展開。使用 IEEE 算術在域 [0,30] 上的相對誤差記錄 [3] 為峰值 5.8e-16,均方根值為 1.4e-16 (n = 30000)。

參考文獻

[1]

C. W. Clenshaw,“數學函數的 Chebyshev 級數”,在國家物理實驗室數學表,第 5 卷,倫敦:女王陛下的文具辦公室,1962 年。

[2]

M. Abramowitz 和 I. A. Stegun,《數學函數手冊》,第 10 次印刷,紐約:Dover,1964 年,第 379 頁。https://personal.math.ubc.ca/~cbm/aands/page_379.htm

範例

>>> import numpy as np
>>> np.i0(0.)
array(1.0)
>>> np.i0([0, 1, 2, 3])
array([1.        , 1.26606588, 2.2795853 , 4.88079259])