scipy.special.itairy#

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

Airy 函数的积分

计算从 0 到 x 的 Airy 函数的积分。

参数:
xarray_like

积分上限(浮点数)。

ndarray 的元组,可选

函数值的可选输出数组

返回:
Apt标量或ndarray

从 0 到 x 的 Ai(t) 的积分。

Bpt标量或ndarray

从 0 到 x 的 Bi(t) 的积分。

蚂蚁标量或ndarray

从 0 到 x 的 Ai(-t) 的积分。

Bnt标量或ndarray

从 0 到 x 的 Bi(-t) 的积分。

注释

由张善杰和金建铭创建的 Fortran 例程的包装器 [1]

参考文献

[1]

张善杰和金建铭。《特殊函数的计算》,John Wiley and Sons,1996年。https://people.sc.fsu.edu/~jburkardt/f_src/special_functions/special_functions.html

示例

计算 x=1. 处的函数。

>>> import numpy as np
>>> from scipy.special import itairy
>>> import matplotlib.pyplot as plt
>>> apt, bpt, ant, bnt = itairy(1.)
>>> apt, bpt, ant, bnt
(0.23631734191710949,
 0.8727691167380077,
 0.46567398346706845,
 0.3730050096342943)

通过为 x 提供一个 NumPy 数组,在多个点上计算函数。

>>> x = np.array([1., 1.5, 2.5, 5])
>>> apt, bpt, ant, bnt = itairy(x)
>>> apt, bpt, ant, bnt
(array([0.23631734, 0.28678675, 0.324638  , 0.33328759]),
 array([  0.87276912,   1.62470809,   5.20906691, 321.47831857]),
 array([0.46567398, 0.72232876, 0.93187776, 0.7178822 ]),
 array([ 0.37300501,  0.35038814, -0.02812939,  0.15873094]))

绘制从 -10 到 10 的函数。

>>> x = np.linspace(-10, 10, 500)
>>> apt, bpt, ant, bnt = itairy(x)
>>> fig, ax = plt.subplots(figsize=(6, 5))
>>> ax.plot(x, apt, label=r"$\int_0^x\, Ai(t)\, dt$")
>>> ax.plot(x, bpt, ls="dashed", label=r"$\int_0^x\, Bi(t)\, dt$")
>>> ax.plot(x, ant, ls="dashdot", label=r"$\int_0^x\, Ai(-t)\, dt$")
>>> ax.plot(x, bnt, ls="dotted", label=r"$\int_0^x\, Bi(-t)\, dt$")
>>> ax.set_ylim(-2, 1.5)
>>> ax.legend(loc="lower right")
>>> plt.show()
../../_images/scipy-special-itairy-1.png