null

Синтаксис

Описание

пример

Z = null(A) возвращает ортонормированный базис для пустого пробела A.

пример

Z = null(A,'r') возвращает "рациональный" базис для ядра A это обычно не ортонормировано. Если A небольшая матрица с маленькими целочисленными элементами, затем элементы Z отношения маленьких целых чисел. Этот метод численно менее точен, чем null(A).

Примеры

свернуть все

Используйте null функция, чтобы вычислить ортонормированные и рациональные базисные вектора для ядра матрицы. Ядро матрицы содержит векторы x это удовлетворяет Ax=0.

Создайте матрицу магического квадрата 4 на 4. Эта матрица имеет неполный ранг с одним из сингулярных значений, равных нулю.

A = magic(4)
A = 4×4

    16     2     3    13
     5    11    10     8
     9     7     6    12
     4    14    15     1

Вычислите ортонормированный базис для пустого пробела A. Подтвердите это Ax1=0, в ошибке округления.

x1 = null(A)
x1 = 4×1

    0.2236
    0.6708
   -0.6708
   -0.2236

norm(A*x1)
ans = 4.4019e-15

Теперь вычислите рациональный базис ядра. Подтвердите это Ax2=0.

x2 = null(A,'r')
x2 = 4×1

    -1
    -3
     3
     1

norm(A*x2)
ans = 0

x1 и x2 подобны, но нормированы по-другому.

Найдите одно конкретное решение недоопределенной системы, и затем получите общую форму для всех решений.

Недоопределенные линейные системы Ax=b включите больше неизвестных, чем уравнения. Недоопределенная система может иметь бесконечно много решений или никакое решение. Когда система имеет бесконечно много решений, они все лежат на линии. Точки на линии все получены с линейными комбинациями пустых векторов пробела.

Создайте 2 4 матрица коэффициентов и используйте обратную косую черту, чтобы решить уравнение Ax0=b, где b вектор из единиц. Обратная косая черта вычисляет решение методом наименьших квадратов к проблеме.

A = [1 8 15 67; 7 14 16 3]
A = 2×4

     1     8    15    67
     7    14    16     3

b = ones(2,1);
x0 = A\b
x0 = 4×1

         0
         0
    0.0623
    0.0010

Полное общее решение недоопределенной системы имеет форму x=x0+Ny, где:

  • N пустой пробел A.

  • y любой вектор из соответствующей длины.

  • x0 решение, вычисленное обратной косой чертой.

Вычислите пустой пробел A, и затем используйте результат создать другое решение системы уравнений. Проверяйте, что новое решение удовлетворяет Ax=b, до ошибки округления.

N = null(A)
N = 4×2

   -0.2977   -0.8970
   -0.6397    0.4397
    0.7044    0.0157
   -0.0769   -0.0426

x = x0 + N*[1; -2]
x = 4×1

    1.4963
   -1.5192
    0.7354
    0.0093

norm(A*x-b)
ans = 1.8291e-14

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

свернуть все

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

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

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

свернуть все

Вектора базиса ядра матрицы, возвращенные в столбцах матрицы. Z удовлетворяет свойствам:

  • A*Z имеет незначительные элементы.

  • size(Z,2) оценка ничтожности A.

Если rank(A) равно size(A,2), затем Z isempty.

Алгоритмы

null(A) вычисляет сингулярное разложение матрицы, [U,S,V] = svd(A,0). Столбцы V это не соответствует ненулевой форме сингулярных значений набор ортонормированных векторов базиса пустого пробела.

"Рациональный" базис для ядра null(A,'r') получен из приведенного ступенчатого по строкам вида матрицы A, как вычислено rref.

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

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

| | |

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