scipy.special.expm1#
- scipy.special.expm1(x, out=None) = <ufunc 'expm1'>#
计算
exp(x) - 1。当 x 接近零时,
exp(x)接近 1,因此计算exp(x) - 1的数值可能遭受灾难性的精度损失。expm1(x)的实现方式是为了避免在 x 接近零时发生的精度损失。- 参数:
- xarray_like
x 必须包含实数。
- outndarray, optional
可选的输出数组,用于存储函数值
- 返回:
- 标量或 ndarray
exp(x) - 1逐元素计算。
示例
>>> import numpy as np >>> 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