scipy.special.expi#
- scipy.special.expi(x, out=None) = <ufunc 'expi'>#
指数积分 Ei。
对于实数 \(x\),指数积分定义为 [1]
\[Ei(x) = \int_{-\infty}^x \frac{e^t}{t} dt.\]对于 \(x > 0\) ,积分被理解为柯西主值。
通过在区间 \((0, \infty)\) 上对函数进行解析延拓,将其扩展到复平面。复数变体在负实轴上有一个分支切割。
- 参数:
- xarray_like
实数或复数值参数
- 出ndarray,可选
函数结果的可选输出数组
- 返回:
- 标量或ndarray
指数积分的值
注释
指数积分 \(E_1\) 和 \(Ei\) 满足以下关系
\[E_1(x) = -Ei(-x)\]对于 \(x > 0\)。
参考文献
[1]数学函数数字图书馆,6.2.5 https://dlmf.nist.gov/6.2#E5
示例
>>> import numpy as np >>> import scipy.special as sc
它与
exp1
相关。>>> x = np.array([1, 2, 3, 4]) >>> -sc.expi(-x) array([0.21938393, 0.04890051, 0.01304838, 0.00377935]) >>> sc.exp1(x) array([0.21938393, 0.04890051, 0.01304838, 0.00377935])
复杂变体在负实轴上有一个分支切割。
>>> sc.expi(-1 + 1e-12j) (-0.21938393439552062+3.1415926535894254j) >>> sc.expi(-1 - 1e-12j) (-0.21938393439552062-3.1415926535894254j)
当复杂变量接近分支切割时,其实部接近实变量的值。
>>> sc.expi(-1) -0.21938393439552062
SciPy 的实现对于分支切割上的复数值返回实数变体。
>>> sc.expi(complex(-1, 0.0)) (-0.21938393439552062-0j) >>> sc.expi(complex(-1, -0.0)) (-0.21938393439552062-0j)