angle¶
逐元素计算复数的相位角。对于非负实数,相位角为 0,而对于负实数,相位角为 \(\pi\).
\[angle(x) = arctan2(x.imag, x.real)\]
参数¶
x (Tensor) - 输入的Tensor,数据类型为:complex64, complex128 或 float32, float64。
name (str,可选) - 操作的名称(可选,默认值为None)。更多信息请参见 Name。
返回¶
输出实数Tensor,与 x
的数值精度一致。
代码示例¶
import paddle
x = paddle.to_tensor([-2, -1, 0, 1]).unsqueeze(-1).astype('float32')
y = paddle.to_tensor([-2, -1, 0, 1]).astype('float32')
z = x + 1j * y
print(z.numpy())
# [[-2.-2.j -2.-1.j -2.+0.j -2.+1.j]
# [-1.-2.j -1.-1.j -1.+0.j -1.+1.j]
# [ 0.-2.j 0.-1.j 0.+0.j 0.+1.j]
# [ 1.-2.j 1.-1.j 1.+0.j 1.+1.j]]
theta = paddle.angle(z)
print(theta.numpy())
# [[-2.3561945 -2.6779451 3.1415927 2.6779451]
# [-2.0344439 -2.3561945 3.1415927 2.3561945]
# [-1.5707964 -1.5707964 0. 1.5707964]
# [-1.1071488 -0.7853982 0. 0.7853982]]