原文:https://docs.scipy.org/doc/numpy/reference/generated/numpy.i0.html
校对:(虚位以待)
numpy.
i0
(x)[source]修改Bessel函数的第一类,顺序为0。
通常表示为。此函数广播,但将不“up-cast”int dtype参数,除非附带至少一个float或complex dtype参数(参见下面的Raises)。
参数: | x:array_like,dtype float或complex
|
---|---|
返回: | out:ndarray,shape = x.shape,dtype = x.dtype
|
上升: | TypeError:数组无法安全地转换为必需类型
|
笔记
我们使用由Clenshaw [R29]发布并由Abramowitz和Stegun [R30]引用的算法,其中函数域被划分为两个区间[0,8]和(8,inf),并且在每个间隔中采用切比雪夫多项式扩展。使用IEEE算术在域[0,30]上的相对误差记录为具有5.8e-16的峰值,具有1.4e-16的rms(n = 30000)的[R31]。
参考文献
[R29] | (1, 2) C. W. Clenshaw, “Chebyshev series for mathematical functions”, in National Physical Laboratory Mathematical Tables, vol. 5,伦敦:女王陛下文具办公室,1962年。 |
[R30] | (1,2) M. Abramowitz和I.A. Stegun,Handbook of Mathematical Functions,第10次印刷,New York:Dover,1964,http://www.math.sfu.ca/~cbm/aands/page_379.htm |
[R31] | (1,2) http://kobesearch.cpan.org/htdocs/Math-Cephes/Math/Cephes.html |
例子
>>> np.i0([0.])
array(1.0)
>>> np.i0([0., 1. + 2j])
array([ 1.00000000+0.j , 0.18785373+0.64616944j])