scipy.special.it2i0k0#

scipy.special.it2i0k0(x, out=None) = <ufunc 'it2i0k0'>#

与0阶修正贝塞尔函数相关的积分。

计算积分

\[\begin{split}\int_0^x \frac{I_0(t) - 1}{t} dt \\ \int_x^\infty \frac{K_0(t)}{t} dt.\end{split}\]
参数:
xarray_like

要在其上评估积分的值。

outndarray 元组,可选

用于函数结果的可选输出数组。

返回:
ii0标量或ndarray

i0 的积分

ik0标量或ndarray

k0 的积分

参考资料

[1]

S. Zhang 和 J.M. Jin,“特殊函数的计算”,Wiley 1996 年

示例

在一个点上评估函数。

>>> from scipy.special import it2i0k0
>>> int_i, int_k = it2i0k0(1.)
>>> int_i, int_k
(0.12897944249456852, 0.2085182909001295)

在几个点上评估函数。

>>> import numpy as np
>>> points = np.array([0.5, 1.5, 3.])
>>> int_i, int_k = it2i0k0(points)
>>> int_i, int_k
(array([0.03149527, 0.30187149, 1.50012461]),
 array([0.66575102, 0.0823715 , 0.00823631]))

绘制从 0 到 5 的函数。

>>> import matplotlib.pyplot as plt
>>> fig, ax = plt.subplots()
>>> x = np.linspace(0., 5., 1000)
>>> int_i, int_k = it2i0k0(x)
>>> ax.plot(x, int_i, label=r"$\int_0^x \frac{I_0(t)-1}{t}\,dt$")
>>> ax.plot(x, int_k, label=r"$\int_x^{\infty} \frac{K_0(t)}{t}\,dt$")
>>> ax.legend()
>>> ax.set_ylim(0, 10)
>>> plt.show()
../../_images/scipy-special-it2i0k0-1.png