numpy.exp#
- numpy.exp(x, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature]) = <ufunc 'exp'>#
计算输入数组中所有元素的指数值。
- 参数:
- xarray_like
输入值。
- outndarray, None, 或 ndarray 和 None 的元组,可选
结果存储的位置。如果提供,它必须具有与输入广播到的形状兼容的形状。如果未提供或为 None,则返回一个新分配的数组。元组(只能作为关键字参数)的长度必须等于输出的数量。
- wherearray_like,可选
此条件会广播到输入。在条件为 True 的位置,out 数组将被设置为 ufunc 结果。在其他位置,out 数组将保留其原始值。请注意,如果通过默认的
out=None
创建未初始化的 out 数组,则其中条件为 False 的位置将保持未初始化状态。- **kwargs
有关其他仅关键字参数,请参阅ufunc 文档。
- 返回:
- outndarray 或标量
输出数组,x 的逐元素指数。如果 x 是标量,则这是一个标量。
备注
无理数
e
也称为欧拉数。它大约是 2.718281,是自然对数ln
的底(这意味着,如果 \(x = \ln y = \log_e y\),则 \(e^x = y\))。对于实数输入,exp(x)
始终为正。对于复数参数
x = a + ib
,我们可以写成 \(e^x = e^a e^{ib}\)。第一项 \(e^a\) 已知(它是上面描述的实数参数)。第二项 \(e^{ib}\) 是 \(\cos b + i \sin b\),一个幅值为 1 且具有周期性相位的函数。参考文献
[1]维基百科,“指数函数”,https://en.wikipedia.org/wiki/Exponential_function
[2]M. Abramovitz 和 I. A. Stegun,“数学函数手册,包含公式、图表和数学表格”,Dover,1964 年,第 69 页,https://personal.math.ubc.ca/~cbm/aands/page_69.htm
示例
绘制复平面中
exp(x)
的幅值和相位>>> import numpy as np
>>> import matplotlib.pyplot as plt >>> import numpy as np
>>> x = np.linspace(-2*np.pi, 2*np.pi, 100) >>> xx = x + 1j * x[:, np.newaxis] # a + ib over complex plane >>> out = np.exp(xx)
>>> plt.subplot(121) >>> plt.imshow(np.abs(out), ... extent=[-2*np.pi, 2*np.pi, -2*np.pi, 2*np.pi], cmap='gray') >>> plt.title('Magnitude of exp(x)')
>>> plt.subplot(122) >>> plt.imshow(np.angle(out), ... extent=[-2*np.pi, 2*np.pi, -2*np.pi, 2*np.pi], cmap='hsv') >>> plt.title('Phase (angle) of exp(x)') >>> plt.show()