mars.tensor.arccos#

mars.tensor.arccos(x, out=None, where=None, **kwargs)[来源]#

三角函数逆余弦,逐元素。

余弦的反函数,所以,如果 y = cos(x),那么 x = arccos(y)

Parameters
  • x (数组类似) – x坐标在单位圆上。 对于实数参数,定义域是[-1, 1]。

  • out (Tensor, None, 或 tupleTensor 和 None, 可选) – 结果存储的位置。如果提供,它必须具有和输入相同的广播形状。如果未提供或None,将返回一个新分配的张量。元组(仅作为关键字参数可能)必须具有与输出数量相等的长度。

  • where (array_like, 可选) – 值为 True 表示在该位置计算 ufunc,值为 False 表示保持输出中的该值不变。

  • **kwargs

Returns

angle – 射线在给定x坐标处与单位圆相交的角度,以弧度表示 [0, pi]。如果x是一个标量,则返回一个标量, 否则返回与x相同形状的数组。

Return type

张量

另请参阅

cos, arctan, arcsin

备注

arccos 是一个多值函数:对于每个 x,都有无限多个数字 z 使得 cos(z) = x。约定返回的角度 z 的实部在 [0, pi] 范围内。

对于实值输入数据类型,arccos 始终返回实数输出。对于每个无法表示为实数或无穷大的值,它返回 nan 并设置 invalid 浮点错误标志。

对于复值输入,arccos 是一个复分析函数,具有分支切割 [-inf, -1][1, inf],在前者的上方是连续的,在后者的下方是连续的。

反函数 cos 也被称为 acos 或 cos^-1。

参考文献

M. Abramowitz 和 I.A. Stegun, “数学函数手册”, 第10次印刷, 1964年, 第79页。 http://www.math.sfu.ca/~cbm/aands/

示例

我们期望1的反余弦为0,-1的反余弦为π: >>> import mars.tensor as mt

>>> mt.arccos([1, -1]).execute()
array([ 0.        ,  3.14159265])

绘制反余弦函数:

>>> import matplotlib.pyplot as plt
>>> x = mt.linspace(-1, 1, num=100)
>>> plt.plot(x.execute(), mt.arccos(x).execute())
>>> plt.axis('tight')
>>> plt.show()