numpy.atan#

numpy.atan(x, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature]) = <ufunc 'arctan'>#

逐元素计算三角反正切.

tan 的反函数,因此如果 y = tan(x) ,则 x = arctan(y) .

参数:
xarray_like
outndarray, None, or tuple of ndarray and None, optional

存储结果的位置.如果提供,则它必须具有输入广播到的形状.如果未提供或为None,则返回一个新分配的数组.一个元组(可能仅作为关键字参数)的长度必须等于输出的数量.

其中类数组,可选

此条件会在输入上进行广播.在条件为True的位置, out 数组将被设置为ufunc结果.否则, out 数组将保留其原始值.请注意,如果通过默认的 out=None 创建一个未初始化的 out 数组,则其中条件为False的位置将保持未初始化.

\kwargs

对于其他仅限关键字的参数,请参见 ufunc docs .

返回:
outndarray 或标量

Out 具有与 x 相同的形状.其实部位于 [-pi/2, pi/2] ( arctan(+/-inf) 返回 +/-pi/2 ).如果 x 是标量,则这是一个标量.

参见

arctan2

由 ( x , y ) 和正 x 轴形成的角度的"四个象限"反正切.

angle

复数值的辐角.

注释

arctan 是一个多值函数:对于每个 x ,有无穷多个数 z 使得 tan( z ) = x .约定是返回实部位于 [-pi/2, pi/2] 的角 z .

对于实值输入数据类型, arctan 总是返回实数输出.对于每个不能表示为实数或无穷大的值,它会产生 nan 并设置 invalid 浮点错误标志.

对于复数值输入, arctan 是一个复数解析函数,它具有 [ 1j, infj ] 和 [ -1j, -infj ] 作为分支切割,并且在前一个分支上从左侧连续,在后一个分支上从右侧连续.

反正切也称为 atan 或 tan^{-1}.

参考文献

Abramowitz, M. and Stegun, I. A., Handbook of Mathematical Functions, 10th printing, New York: Dover, 1964, pp. 79. https://personal.math.ubc.ca/~cbm/aands/page_79.htm

示例

我们期望 0 的反正切为 0,1 的反正切为 pi/4:

>>> import numpy as np
>>> np.arctan([0, 1])
array([ 0.        ,  0.78539816])
>>> np.pi/4
0.78539816339744828

绘制 arctan:

>>> import matplotlib.pyplot as plt
>>> x = np.linspace(-10, 10)
>>> plt.plot(x, np.arctan(x))
>>> plt.axis('tight')
>>> plt.show()
../../_images/numpy-atan-1.png