норма

Векторные и матричные нормы

Синтаксис

n = norm(v)
n = norm(v,p)
n = norm(X)
n = norm(X,p)
n = norm(X,'fro')

Описание

пример

n = norm(v) возвращает Евклидову норму векторного v. Эта норма также называется 2-нормой, векторным значением или Евклидовой длиной.

пример

n = norm(X) возвращает 2-норму или максимальное сингулярное значение матричного X, который является приблизительно max(svd(X)).

пример

n = norm(X,p) возвращает p - норма матричного X, где p является 1, 2 или Inf:

пример

n = norm(X,'fro') возвращает норму Фробениуса матричного X.

Примеры

свернуть все

Создайте вектор и вычислите значение.

v = [1 -2 3];
n = norm(v)
n = 3.7417

Вычислите 1 норму вектора, который является суммой значений элемента.

X = [-2 3 -1];
n = norm(X,1)
n = 6

Вычислите расстояние между двумя точками как норма различия между векторными элементами.

Создайте два вектора, представляющие (x, y) координаты для двух точек на Евклидовой плоскости.

a = [0 3];
b = [-2 1];

Используйте norm, чтобы вычислить расстояние между точками.

d = norm(b-a)
d = 2.8284

Геометрически, расстояние между точками равно значению вектора, который расширяет от одной точки до другого.

a=0iˆ+3jˆb=-2iˆ+1jˆd(a,b)=||b-a||=(-2-0)2+(1-3)2=8

Вычислите 2-норму матрицы, которая является самым большим сингулярным значением.

X = [2 0 1;-1 1 0;-3 3 0];
n = norm(X)
n = 4.7234

Используйте 'fro', чтобы вычислить норму Фробениуса разреженной матрицы, которая вычисляет 2-норму вектор-столбца, S(:).

S = sparse(1:25,1:25,1);
n = norm(S,'fro')
n = 5

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

свернуть все

Входной вектор.

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

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

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

Тип нормы, заданный как 2 (значение по умолчанию), различный положительный целочисленный скаляр, Inf или -Inf. Допустимые значения p и что они возвращают, зависят от того, является ли первый вход к norm матрицей или вектором, как показано в таблице.

Примечание

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

pМатрицаВектор
1max(sum(abs(X)))sum(abs(X))
2 max(svd(X))sum(abs(X).^2)^(1/2)
Положительный, числовой p с действительным знакомsum(abs(X).^p)^(1/p)
Infmax(sum(abs(X')))max(abs(X))
-Infmin(abs(X))

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

свернуть все

Матричная или векторная норма, возвращенная как скаляр. Норма дает меру значения элементов. Условно, norm возвращает NaN, если вход содержит значения NaN.

Больше о

свернуть все

Евклидова норма

Евклидова норма (также названный векторным значением, Евклидовой длиной или 2-нормой) векторного v с элементами N задана

v=k=1N|vk|2.

Общая векторная норма

Общее определение для p-нормы векторного v, который имеет элементы N,

vp=[k=1N|vk|p] 1/p,

где p является любым положительным действительным значением, Inf или -Inf. Некоторые интересные значения p:

  • Если p = 1, то получившаяся 1 норма является суммой абсолютных значений векторных элементов.

  • Если p = 2, то получившаяся 2-норма дает векторное значение или Евклидову длину вектора.

  • Если p = Inf, то v=max i(|v(i)|).

  • Если p = -Inf, то v=mini(|v(i)|).

Максимальная абсолютная сумма столбца

Максимальная абсолютная сумма столбца m-by-n матричный Xm,n >= 2) задана

X1=max 1jn(i=1m|aij|).

Максимальная абсолютная сумма строки

Максимальная абсолютная сумма строки m-by-n матричный Xm,n >= 2) задана

X=max 1im(j=1n|aij|).

Норма Фробениуса

Норма Фробениуса m-by-n матричный Xm,n >= 2) задана

XF=i=1mj=1n|aij|2=трассировка(XX).

Советы

  • Используйте vecnorm, чтобы обработать матрицу или массив как набор векторов и вычислить норму в заданном измерении. Например, vecnorm может вычислить норму каждого столбца в матрице.

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

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

| | | | |

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