jax.scipy.linalg.solve_triangular(a, b, trans=0, lower=False, unit_diagonal=False, overwrite_b=False, debug=None, check_finite=True)[source]#

Solve the equation a x = b for x, assuming a is a triangular matrix.

LAX-backend implementation of scipy.linalg._basic.solve_triangular().

Does not support the Scipy argument check_finite=True, because compiled JAX code cannot perform checks of array values at runtime.

Does not support the Scipy argument overwrite_*=True.

Original docstring below.

  • a ((M, M) array_like) – A triangular matrix

  • b ((M,) or (M, N) array_like) – Right-hand side matrix in a x = b

  • lower (bool, optional) – Use only data contained in the lower triangle of a. Default is to use upper triangle.

  • trans ({0, 1, 2, 'N', 'T', 'C'}, optional) –

    Type of system to solve:



    0 or β€˜N’

    a x = b

    1 or β€˜T’

    a^T x = b

    2 or β€˜C’

    a^H x = b

  • unit_diagonal (bool, optional) – If True, diagonal elements of a are assumed to be 1 and will not be referenced.

  • overwrite_b (bool) –

  • debug (Any) –

  • check_finite (bool) –


x – Solution to the system a x = b. Shape of return matches b.

Return type:

(M,) or (M, N) ndarray