Warning
This page was created from a pull request.
jax.numpy.linalg.solve¶
-
jax.numpy.linalg.
solve
(a, b)[source]¶ Solve a linear matrix equation, or system of linear scalar equations.
LAX-backend implementation of
solve()
. Original docstring below.Computes the “exact” solution, x, of the well-determined, i.e., full rank, linear matrix equation ax = b.
- Returns
x – Solution to the system a x = b. Returned shape is identical to b.
- Return type
{(.., M,), (.., M, K)} ndarray
- Raises
LinAlgError – If a is singular or not square.
See also
scipy.linalg.solve()
Similar function in SciPy.
Notes
New in version 1.8.0.
Broadcasting rules apply, see the numpy.linalg documentation for details.
The solutions are computed using LAPACK routine
_gesv
.a must be square and of full-rank, i.e., all rows (or, equivalently, columns) must be linearly independent; if either is not true, use lstsq for the least-squares best “solution” of the system/equation.
References
- 1
G. Strang, Linear Algebra and Its Applications, 2nd Ed., Orlando, FL, Academic Press, Inc., 1980, pg. 22.
Examples
Solve the system of equations
3 * x0 + x1 = 9
andx0 + 2 * x1 = 8
:>>> a = np.array([[3,1], [1,2]]) >>> b = np.array([9,8]) >>> x = np.linalg.solve(a, b) >>> x array([2., 3.])
Check that the solution is correct:
>>> np.allclose(np.dot(a, x), b) True