{ } Raw JSON

bundles / numpy 2.4.4 / numpy / linalg / cond

_ArrayFunctionDispatcher

numpy.linalg:cond

source: /numpy/linalg/_linalg.py :1914

Signature

def   cond ( x p = None )

Summary

Compute the condition number of a matrix.

Extended Summary

This function is capable of returning the condition number using one of seven different norms, depending on the value of p (see Parameters below).

Parameters

x : (..., M, N) array_like

The matrix whose condition number is sought.

p : {None, 1, -1, 2, -2, inf, -inf, 'fro'}, optional

Order of the norm used in the condition number computation:

=====  ============================
p      norm for matrices
=====  ============================
None   2-norm, computed directly using the ``SVD``
'fro'  Frobenius norm
inf    max(sum(abs(x), axis=1))
-inf   min(sum(abs(x), axis=1))
1      max(sum(abs(x), axis=0))
-1     min(sum(abs(x), axis=0))
2      2-norm (largest sing. value)
-2     smallest singular value
=====  ============================

inf means the numpy.inf object, and the Frobenius norm is the root-of-sum-of-squares norm.

Returns

c : {float, inf}

The condition number of the matrix. May be infinite.

Notes

The condition number of x is defined as the norm of x times the norm of the inverse of x [1]; the norm can be the usual L2-norm (root-of-sum-of-squares) or one of a number of other matrix norms.

Examples

import numpy as np
from numpy import linalg as LA
a = np.array([[1, 0, -1], [0, 1, 0], [1, 0, 1]])
a
LA.cond(a)
LA.cond(a, 'fro')
LA.cond(a, np.inf)
LA.cond(a, -np.inf)
LA.cond(a, 1)
LA.cond(a, -1)
LA.cond(a, 2)
LA.cond(a, -2)
(min(LA.svd(a, compute_uv=False)) *
min(LA.svd(LA.inv(a), compute_uv=False)))

See also

numpy.linalg.norm

Aliases

  • numpy.linalg.cond

Referenced by