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