numpy.linalg.cond
-
numpy.linalg.cond(x, p=None)[source] -
Вычисление числа обусловленности матрицы.
Эта функция способна возвращать число обусловленности, используя одну из семи различных норм, в зависимости от значения
p(см. параметры ниже).Параметры: x : (..., M, N) array_like
Матрица, для которой требуется число обусловленности.
p : {None, 1, -1, 2, -2, inf, -inf, ‘fro’}, optional
Порядок нормы:
p норма для матриц None 2-норма, вычисляется напрямую с помощью SVD‘fro’ Норма Фробениуса 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-норма (наибольшее сингулярное значение) -2 наименьшее сингулярное значение inf означает объект numpy.inf, а норма Фробениуса — это норма корня из суммы квадратов.
Возвращаемое значение: c : {float, inf}
Число обусловленности матрицы. Может быть бесконечным.
См. также
Примечания
Число обусловленности матрицы
xопределяется как нормаxумноженная на норму обратнойx[R40]; норма может быть обычной L2-нормой (корень из суммы квадратов) или одной из ряда других матричных норм.Ссылки
[R40] (1, 2) Г. Стрэнг, Линейная алгебра и ее приложения, Орландо, ФЛ, Издательство Академической прессы, 1980, стр. 285. Примеры
>>> from numpy import linalg as LA >>> a = np.array([[1, 0, -1], [0, 1, 0], [1, 0, 1]]) >>> a array([[ 1, 0, -1], [ 0, 1, 0], [ 1, 0, 1]]) >>> LA.cond(a) 1.4142135623730951 >>> LA.cond(a, 'fro') 3.1622776601683795 >>> LA.cond(a, np.inf) 2.0 >>> LA.cond(a, -np.inf) 1.0 >>> LA.cond(a, 1) 2.0 >>> LA.cond(a, -1) 1.0 >>> LA.cond(a, 2) 1.4142135623730951 >>> LA.cond(a, -2) 0.70710678118654746 >>> min(LA.svd(a, compute_uv=0))*min(LA.svd(LA.inv(a), compute_uv=0)) 0.70710678118654746
© 2008–2017 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.13.0/reference/generated/numpy.linalg.cond.html