快捷方式

torch.polar

torch.polar(abs, angle, *, out=None) Tensor

構建一個複數張量,其元素是對應於極座標的笛卡爾座標,極座標具有絕對值 abs 和角度 angle

out=abscos(angle)+abssin(angle)j\text{out} = \text{abs} \cdot \cos(\text{angle}) + \text{abs} \cdot \sin(\text{angle}) \cdot j

注意

torch.polar 類似於 std::polar,不計算複數張量的極分解,這與 Python 的 cmath.polar 和 SciPy 的 linalg.polar 不同。如果 abs 為負或 NaN,或者 angle 為無窮大,則此函式的行為未定義。

引數
  • abs (Tensor) – 複數張量的絕對值。必須是 float 或 double 型別。

  • angle (Tensor) – 複數張量的角度。必須與 abs 的 dtype 相同。

關鍵字引數

out (Tensor) – 如果輸入是 torch.float32,則必須是 torch.complex64。如果輸入是 torch.float64,則必須是 torch.complex128

示例

>>> import numpy as np
>>> abs = torch.tensor([1, 2], dtype=torch.float64)
>>> angle = torch.tensor([np.pi / 2, 5 * np.pi / 4], dtype=torch.float64)
>>> z = torch.polar(abs, angle)
>>> z
tensor([(0.0000+1.0000j), (-1.4142-1.4142j)], dtype=torch.complex128)

文件

訪問 PyTorch 的全面開發者文件

檢視文件

教程

獲取面向初學者和高階開發者的深度教程

檢視教程

資源

查詢開發資源並獲得問題解答

檢視資源