exponenta event banner

конусовидный

Номер условия для инверсии

Синтаксис

Описание

пример

C = cond(A) возвращает номер условия 2-norm для инверсии, равный отношению наибольшего сингулярного значения A до мелочей.

пример

C = cond(A,p) возвращает значение p-norm номер условия, где p может быть 1, 2, Inf, или 'fro'.

Примеры

свернуть все

Вычислите номер условия матрицы и проверьте чувствительность к обратному расчету.

Создайте матрицу 2 на 2.

A = [4.1 2.8;
     9.7 6.6];

Вычислите 2-нормальное число условий A.

C = cond(A)
C = 1.6230e+03

Так как номер условия A намного больше 1, матрица чувствительна к обратному вычислению. Вычислить обратное значение A, а затем внести небольшое изменение во второй строке A и вычислить обратное снова.

invA = inv(A)
invA = 2×2

  -66.0000   28.0000
   97.0000  -41.0000

A2 = [4.1    2.8; 
      9.671  6.608]
A2 = 2×2

    4.1000    2.8000
    9.6710    6.6080

invA2 = inv(A2)
invA2 = 2×2

  472.0000 -200.0000
 -690.7857  292.8571

Результаты показывают, что внесение небольшого изменения в A может полностью изменить результат обратного расчета.

Вычислите номер условия 1-norm матрицы.

Создайте матрицу 3 на 3.

A = [1 0 -2;
     3 4  6;
    -1 5  7];

Вычислите 1-нормальное число условий A. Значение числа условий 1-norm для матрицы m-by-n равно

α1 (A) = | | A | | 1 | | A-1 | | 1,

где 1-norm - максимальная абсолютная сумма столбцов матрицы,

||A||1=max1≤j≤n∑i=1m'aij|.

C = cond(A,1)
C = 18.0000

Для этой матрицы номер условия не слишком велик, поэтому матрица не особенно чувствительна к обратному вычислению.

Входные аргументы

свернуть все

Входная матрица. A может быть квадратным или прямоугольным.

Типы данных: single | double
Поддержка комплексного номера: Да

Тип нормы, указанный как одно из значений, указанных в этой таблице. cond вычисляет номер условия с помощью norm(A,p) * norm(inv(A),p) для значений p кроме 2. См. раздел norm для получения дополнительной информации об этих типах норм.

Значение p

Тип нормы

1

Номер условия 1-norm

2

2-нормальный номер условия

Inf

Номер условия нормы бесконечности

'fro'

Номер условия нормы Фробениуса

Пример: cond(A,1) вычисляет номер условия 1-norm.

Выходные аргументы

свернуть все

Номер условия, возвращаемый как скаляр. Значения C около 1 указывают на хорошо кондиционированную матрицу, и большие значения C указывают на плохо кондиционированную матрицу. Сингулярные матрицы имеют номер условия Inf.

Подробнее

свернуть все

Номер условия для инверсии

Номер условия для матрицы и задачи вычисления измеряет, насколько чувствителен ответ к изменениям входных данных и ошибкам округления в процессе решения.

Номер условия инверсии матрицы измеряет чувствительность решения системы линейных уравнений к ошибкам в данных. Он дает указание на точность результатов инверсии матрицы и решения линейного уравнения. Например, число условий 2-norm квадратной матрицы равно

(A) =‖A A − 1 ‖.

В этом контексте большое число условий указывает, что небольшое изменение матрицы коэффициентов A может привести к большим изменениям в выходных данных b в линейных уравнениях Ax = b и xA = b. Крайний случай - когда A является настолько плохо обусловленным, что является сингулярным (бесконечное число условий), и в этом случае он не имеет обратной и линейное уравнение не имеет уникального решения.

Совет

  • rcond является более эффективным, но менее надежным методом оценки состояния матрицы по сравнению с cond.

Алгоритмы

Алгоритм для cond имеет три части:

  • Если p = 2, то cond использует разложение сингулярного значения, предоставленное svd чтобы найти отношение наибольшего и наименьшего сингулярных значений.

  • Если p = 1, Inf, или 'fro', то cond вычисляет номер условия, используя соответствующую норму входной матрицы и ее обратную norm(A,p) * norm(inv(A),p).

  • Если входная матрица разрежена, то cond игнорирует любые указанные p значение и вызовы condest.

Расширенные возможности

.
Представлен до R2006a