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, 或 tuple 的 Tensor 和 None, 可选) – 结果存储的位置。如果提供,它必须具有和输入相同的广播形状。如果未提供或None,将返回一个新分配的张量。元组(仅作为关键字参数可能)必须具有与输出数量相等的长度。
where (array_like, 可选) – 值为 True 表示在该位置计算 ufunc,值为 False 表示保持输出中的该值不变。
**kwargs –
- Returns
angle – 射线在给定x坐标处与单位圆相交的角度,以弧度表示 [0, pi]。如果x是一个标量,则返回一个标量, 否则返回与x相同形状的数组。
- Return type
张量
备注
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()