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 或 ndarray 和 None 的元组,可选

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

wherearray_like,可选

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

**kwargs

有关其他仅限关键字的参数,请参阅 ufunc 文档

返回值:
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. 和 Stegun,I. A.,数学函数手册,第 10 版印刷,纽约:Dover,1964 年,第 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

绘制反正切

>>> 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