symjax.tensor.linalg.cho_solve

symjax.tensor.linalg.cho_solve(c_and_lower, b, overwrite_b=False, check_finite=True)[source]

Solve the linear equations A x = b, given the Cholesky factorization of A.

LAX-backend implementation of cho_solve(). Original docstring below.

(c, lower) : tuple, (array, bool)
Cholesky factorization of a, as given by cho_factor
b : array
Right-hand side
overwrite_b : bool, optional
Whether to overwrite data in b (may improve performance)
check_finite : bool, optional
Whether to check that the input matrices contain only finite numbers. Disabling may give a performance gain, but may result in problems (crashes, non-termination) if the inputs do contain infinities or NaNs.
x : array
The solution to the system A x = b

cho_factor : Cholesky factorization of a matrix

>>> from scipy.linalg import cho_factor, cho_solve
>>> A = np.array([[9, 3, 1, 5], [3, 7, 5, 1], [1, 5, 9, 2], [5, 1, 2, 6]])
>>> c, low = cho_factor(A)
>>> x = cho_solve((c, low), [1, 1, 1, 1])
>>> np.allclose(A @ x - [1, 1, 1, 1], np.zeros(4))
True