solve

paddle.linalg. solve ( x, y, name=None ) [源代码]

计算线性方程组的解。

\(X\) 为一个或一批方阵,\(Y\) 一个或一批矩阵,则公式为:

\[Out = X ^ {-1} * Y\]

特别地,

  • 如果 X 不可逆,则线性方程组不可解。

参数

  • x (Tensor):输入的欲进行线性方程组求解的一个或一批方阵(系数矩阵),类型为 Tensor。 x 的形状应为 [*, M, M],其中 * 为零或更大的批次维度,数据类型为 float32, float64。

  • y (Tensor):输入的欲进行线性方程组求解的右值,类型为 Tensor。 y 的形状应为 [*, M, K],其中 * 为零或更大的批次维度,数据类型和 x 相同。

  • name (str,可选) - 具体用法请参见 Name,一般无需设置,默认值为 None。

返回

Tensor,这个(或这批)矩阵 xy 经过运算后的结果,数据类型和输入 x 的一致。

代码示例

>>> # a square system of linear equations:
>>> # 2*X0 + X1 = 9
>>> # X0 + 2*X1 = 8

>>> import paddle

>>> x = paddle.to_tensor([[3, 1],[1, 2]], dtype="float64")
>>> y = paddle.to_tensor([9, 8], dtype="float64")
>>> out = paddle.linalg.solve(x, y)

>>> print(out)
Tensor(shape=[2], dtype=float64, place=Place(cpu), stop_gradient=True,
[2., 3.])

使用本API的教程文档