mindspore.ops.cholesky_solve
- mindspore.ops.cholesky_solve(input, input2, upper=False)[source]
Computes the solution of a set of linear equations with a positive definite matrix, according to its Cholesky decomposition factor input2 .
If upper is set to
True
and input2 is upper triangular, the output tensor is that:If upper is set to
False
and input2 is lower triangular, the output is that:Warning
This is an experimental API that is subject to change or deletion.
- Parameters
input (Tensor) – Tensor of shape
, indicating 2D or 3D matrices, with float32 or float64 data type.input2 (Tensor) – Tensor of shape
, indicating 2D or 3D square matrices composed of upper or lower triangular Cholesky factor, with float32 or float64 data type. input and input2 must have the same type.upper (bool, optional) – A flag indicates whether to treat the Cholesky factor as an upper or a lower triangular matrix. Default:
False
, treating the Cholesky factor as a lower triangular matrix.
- Returns
Tensor, has the same shape and data type as input.
- Raises
TypeError – If upper is not a bool.
TypeError – If dtype of input and input2 is not float64 or float32.
TypeError – If input is not a Tensor.
TypeError – If input2 is not a Tensor.
ValueError – If input and input2 have different batch size.
ValueError – If input and input2 have different row numbers.
ValueError – If input is not 2D or 3D matrices.
ValueError – If input2 is not 2D or 3D square matrices.
- Supported Platforms:
Ascend
GPU
CPU
Examples
>>> import mindspore >>> import numpy as np >>> from mindspore import Tensor, ops >>> input1 = Tensor(np.array([[1, 0, 0], [0, 1, 0], [0, 0, 1]]), mindspore.float32) >>> input2 = Tensor(np.array([[2, 0, 0], [4, 1, 0], [-1, 1, 2]]), mindspore.float32) >>> out = ops.cholesky_solve(input1, input2, upper=False) >>> print(out) [[ 5.8125 -2.625 0.625 ] [-2.625 1.25 -0.25 ] [ 0.625 -0.25 0.25 ]]