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()