scipy.special.expn#

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

广义指数积分 En。

对于整数 \(n \geq 0\) 和实数 \(x \geq 0\),广义指数积分定义为 [dlmf]

\[E_n(x) = x^{n - 1} \int_x^\infty \frac{e^{-t}}{t^n} dt.\]
参数:
narray_like

非负整数

xarray_like

实数参数

outndarray, 可选

函数结果的可选输出数组

返回:
标量或ndarray

广义指数积分的值

参见

exp1

\(E_n\) 的特例,对于 \(n = 1\)

expi

\(n = 1\) 时,与 \(E_n\) 相关

参考资料

[dlmf]

数学函数数字库,8.19.2 https://dlmf.nist.gov/8.19#E2

示例

>>> import numpy as np
>>> import scipy.special as sc

它的定义域是非负数 n 和 x。

>>> sc.expn(-1, 1.0), sc.expn(1, -1.0)
(nan, nan)

n = 1, 2 时,它在 x = 0 处有一个极点;对于较大的 n,它等于 1 / (n - 1)

>>> sc.expn([0, 1, 2, 3, 4], 0)
array([       inf,        inf, 1.        , 0.5       , 0.33333333])

对于 n 等于 0,它简化为 exp(-x) / x

>>> x = np.array([1, 2, 3, 4])
>>> sc.expn(0, x)
array([0.36787944, 0.06766764, 0.01659569, 0.00457891])
>>> np.exp(-x) / x
array([0.36787944, 0.06766764, 0.01659569, 0.00457891])

对于 n 等于 1,它简化为 exp1.

>>> sc.expn(1, x)
array([0.21938393, 0.04890051, 0.01304838, 0.00377935])
>>> sc.exp1(x)
array([0.21938393, 0.04890051, 0.01304838, 0.00377935])