scipy.special.expm1

scipy.special.expm1(x) = <ufunc 'expm1'>

计算 exp(x) - 1

什么时候 x 接近于零, exp(x) 接近于1,所以数值计算 exp(x) - 1 可能会遭受灾难性的精度损失。 expm1(x) 是为了避免在执行以下操作时出现的精度损失而实现的 x 接近于零。

参数
xarray_like

x 必须包含实数。

退货
浮动

exp(x) - 1 按元素计算。

示例

>>> from scipy.special import expm1
>>> expm1(1.0)
1.7182818284590451
>>> expm1([-0.2, -0.1, 0, 0.1, 0.2])
array([-0.18126925, -0.09516258,  0.        ,  0.10517092,  0.22140276])

的精确值 exp(7.5e-13) - 1 是::

7.5000000000028125000000007031250000001318...*10**-13.

这就是我们要做的 expm1(7.5e-13) 提供:

>>> expm1(7.5e-13)
7.5000000000028135e-13

将其与 exp(7.5e-13) - 1 ,其中减法会导致精度的“灾难性”损失:

>>> np.exp(7.5e-13) - 1
7.5006667543675576e-13