xorbits.numpy.linalg.inv#

xorbits.numpy.linalg.inv(a, sparse=None)[source]#

Compute the (multiplicative) inverse of a matrix.

Given a square matrix a, return the matrix ainv satisfying dot(a, ainv) = dot(ainv, a) = eye(a.shape[0]).

Parameters

a ((..., M, M) array_like) – Matrix to be inverted.

Returns

ainv – (Multiplicative) inverse of the matrix a.

Return type

(…, M, M) ndarray or matrix

Raises

LinAlgError – If a is not square or inversion fails.

See also

scipy.linalg.inv

Similar function in SciPy.

Notes

New in version 1.8.0(numpy.linalg).

Broadcasting rules apply, see the numpy.linalg documentation for details.

Examples

>>> from numpy.linalg import inv  
>>> a = np.array([[1., 2.], [3., 4.]])  
>>> ainv = inv(a)  
>>> np.allclose(np.dot(a, ainv), np.eye(2))  
True
>>> np.allclose(np.dot(ainv, a), np.eye(2))  
True

If a is a matrix object, then the return value is a matrix as well:

>>> ainv = inv(np.matrix(a))  
>>> ainv  
matrix([[-2. ,  1. ],
        [ 1.5, -0.5]])

Inverses of several matrices can be computed at once:

>>> a = np.array([[[1., 2.], [3., 4.]], [[1, 3], [3, 5]]])  
>>> inv(a)  
array([[[-2.  ,  1.  ],
        [ 1.5 , -0.5 ]],
       [[-1.25,  0.75],
        [ 0.75, -0.25]]])
sparse: bool, optional

Return sparse value or not.

This docstring was copied from numpy.linalg.