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

实数或复数取值参数

outndarray, 可选

函数结果的可选输出数组

返回值:
标量或 ndarray

指数积分的值

另请参阅

exp1

指数积分 \(E_1\)

expn

广义指数积分 \(E_n\)

说明

指数积分 \(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)