orth

Ортонормальный базис линейной оболочки столбцов матрицы

Синтаксис

Описание

пример

Q = orth(A) возвращает ортонормированный базис для области значений A. Столбцы Q векторы, которые порождают линейную оболочку столбцов A. Количество столбцов в Q равно рангу A.

Примеры

свернуть все

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

Задайте матрицу и найдите ранг.

A = [1 0 1;-1 -2 0; 0 1 -1];
r = rank(A)
r = 3

Начиная с A квадратная матрица полного ранга, ортонормированный базис, вычисленный orth(A) совпадает с матричным U вычисленный в сингулярном разложении, [U,S] = svd(A,'econ'). Это вызвано тем, что сингулярные значения A являются все ненулевыми.

Вычислите ортонормированный базис для области значений A использование orth.

Q = orth(A)
Q = 3×3

   -0.1200   -0.8097    0.5744
    0.9018    0.1531    0.4042
   -0.4153    0.5665    0.7118

Количество столбцов в Q равно rank(A). Начиная с A имеет полный ранг, Q и A одного размера.

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

E = norm(eye(r)-Q'*Q,'fro')
E = 1.0857e-15

Ошибка находится на порядке eps.

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

Задайте сингулярную матрицу и найдите ранг.

A = [1 0 1; 0 1 0; 1 0 1];
r = rank(A)
r = 2

Начиная с A имеет неполный ранг, ортонормированный базис, вычисленный orth(A) соответствия только первый r = 2 столбцы матричного U вычисленный в сингулярном разложении, [U,S] = svd(A,'econ'). Это вызвано тем, что сингулярные значения A не являются все ненулевыми.

Вычислите ортонормированный базис для области значений A использование orth.

Q = orth(A)
Q = 3×2

   -0.7071         0
         0    1.0000
   -0.7071         0

Начиная с A имеет неполный ранг, Q содержит тот меньше столбца, чем A.

Входные параметры

свернуть все

Введите матрицу.

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

Больше о

свернуть все

Область значений

Пробел столбца или область значений, матричного A набор всех линейных комбинаций столбцов A. Любой вектор, b, это - решение линейного уравнения, A*x = b, включен в область значений A поскольку можно также записать его как линейную комбинацию столбцов A.

Ранг

rank из матрицы равно размерности области значений.

Алгоритмы

orth получен из U в сингулярном разложении, [U,S] = svd(A,'econ'). Если r = rank(A), первый r столбцы U сформируйте ортонормированный базис для области значений A.

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

Смотрите также

| |

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