cholesky_solve¶
对 A @ X = B 的线性方程求解,其中 A 是方阵,输入 x、y 分别是矩阵 B 和矩阵A 的 Cholesky 分解矩阵 u。
输入 x、y 是 2 维矩阵,或者 2 维矩阵以 batch 形式组成的 3 维矩阵。如果输入是 batch 形式的 3 维矩阵,则输出也是 batch 形式的 3 维矩阵。
参数¶
x (Tensor) - 线性方程中的 B 矩阵。是 2 维矩阵或者 2 维矩阵以 batch 形式组成的 3 维矩阵。
y (Tensor) - 线性方程中 A 矩阵的 Cholesky 分解矩阵 u,上三角或者下三角矩阵。是 2 维矩阵或者 2 维矩阵以 batch 形式组成的 3 维矩阵。
upper (bool,可选) - 输入 x 是否是上三角矩阵,True 为上三角矩阵,False 为下三角矩阵。默认值 False。
name (str,可选) - 具体用法请参见 Name,一般无需设置,默认值为 None。
返回¶
Tensor,线性方程的解 X。
代码示例¶
import paddle
u = paddle.to_tensor([[1, 1, 1],
[0, 2, 1],
[0, 0,-1]], dtype="float64")
b = paddle.to_tensor([[0], [-9], [5]], dtype="float64")
out = paddle.linalg.cholesky_solve(b, u, upper=True)
print(out)
# [-2.5, -7, 9.5]