快捷方式

torch.linalg.ldl_solve

torch.linalg.ldl_solve(LD, pivots, B, *, hermitian=False, out=None) Tensor

使用 LDL 分解計算線性方程組的解。

LDpivots 是 LDL 分解的緊湊表示,預計由 torch.linalg.ldl_factor_ex() 計算。此函式的 hermitian 引數應與 torch.linalg.ldl_factor_ex() 中的對應引數相同。

支援 float、double、cfloat 和 cdouble 資料型別的輸入。也支援矩陣的批處理,如果 A 是批處理矩陣,則輸出具有相同的批處理維度。

警告

此函式是“實驗性”的,將來發布的 PyTorch 版本中可能會發生變化。

引數
  • LD (張量) – 大小為 n times n 的矩陣或一批此類矩陣,大小為 (*, n, n),其中 * 表示一個或多個批處理維度。

  • pivots (張量) – 與 LD 的 LDL 分解對應的樞軸。

  • B (張量) – 形狀為 (*, n, k) 的右側張量。

關鍵字引數
  • hermitian (bool, 可選的) – 是否將分解後的矩陣視為 Hermitian 矩陣或對稱矩陣。對於實值矩陣,此開關無效。預設值: False

  • out (tuple, 可選的) – 輸出張量。B 可以作為 out 傳遞,結果會在 B 上原地計算。如果為 None 則忽略。預設值: None

示例

>>> A = torch.randn(2, 3, 3)
>>> A = A @ A.mT # make symmetric
>>> LD, pivots, info = torch.linalg.ldl_factor_ex(A)
>>> B = torch.randn(2, 3, 4)
>>> X = torch.linalg.ldl_solve(LD, pivots, B)
>>> torch.linalg.norm(A @ X - B)
>>> tensor(0.0001)

文件

訪問 PyTorch 全面的開發者文件

檢視文件

教程

獲取針對初學者和高階開發者的深入教程

檢視教程

資源

查詢開發資源並解答問題

檢視資源