jax.lax.linalg.triangular_solve

jax.lax.linalg.triangular_solve#

jax.lax.linalg.triangular_solve(a, b, *, left_side=False, lower=False, transpose_a=False, conjugate_a=False, unit_diagonal=False)[source]#

三角求解。

求解矩阵方程

\[\mathit{op}(A) . X = B\]

如果 left_sideTrue

\[X . \mathit{op}(A) = B\]

如果 left_sideFalse

A 必须是下三角或上三角方阵,其中 \(\mathit{op}(A)\) 可以是如果 transpose_aTrue 则转置 \(A\) 和/或如果 conjugate_aTrue 则取其复共轭。

参数:
  • a (ArrayLike) – 形状为 [..., m, m] 的矩阵批次。

  • b (ArrayLike) – 如果 left_sideTrue,则形状为 [..., m, n] 的矩阵批次;否则形状为 [..., n, m]

  • left_side (bool) – 描述要解决的两个矩阵方程中的哪一个;见上文。

  • lower (bool) – 描述应使用 a 的哪个三角形。另一个三角形将被忽略。

  • transpose_a (bool) – 如果为 True,则转置 a 的值。

  • conjugate_a (bool) – 如果为 True,则在求解中使用 a 的复共轭。如果 a 为实数,则无效。

  • unit_diagonal (bool) – 如果为 True,则假设 a 的对角线为单位(全为 1),并且不访问。

返回:

b 形状和数据类型相同的矩阵批次。

返回类型:

数组