norm

Функция определении нормы вектора или матрицы.

Синтаксис:

n = norm(Ar);
n = norm(Ar,p);
n = norm(M,str);

Аргументы:

Имя Тип данных Описание
Ar array/matrix Массив вещественых чисел, вектор или матрица;
p integer Целое число, порядок нормы; если Ar - матрица, то p = 1 или 2
M matrix Матрица вещественных чисел
str string Строковый аргумент, может принимать значения "fro" или "inf"

Описание:

norm(Ar) – функция вычисляет вторую норму вектора или матрицы Ar (Евклидова норма, наибольшее сингулярное число матрицы);

norm(Ar,p) - функция вычисляет норму порядка p для вектора или матрицы Ar; если Ar - вектор, то p - любое положительное вещественное число; если Ar - матрица, то если:
  • p = 1, тогда функция определяет максимальную сумму столбцов матрицы;
  • p = 2, тогда функция определяет вторую норму матрицы (то же, что norm(Ar) выше);

norm(M,str) - если str = "fro", то функция определяет норму Фробениуса для матрицы M; если str = "inf", то функция определяет максимальную сумму строк матрицы M.

Результат:

Имя Тип данных Описание
n double

Функция возвращает скалярное вещественное значение нормы матрицы или вектора

Пример:

M = [[1, 0, -3];[3, 1, 2];[3, 5.15, 0];[-1, 1, 2]];   // матрица
V = [5, 4, -3, 2, 0, 1];                              // вектор

n1 = norm(V);      	// 2-норма вектора 
n2 = norm(V,3);    	// 3-норма вектора
n3 = norm(M);      	// 2-норма матрица (макс сингулярное число матрицы)
n4 = norm(M,1);      // 1-норма матрицы
n5 = norm(M,"inf");  // Inf-норма матрицы
n6 = norm(M,"fro");  // норма Фробениуса

В скрипте примера происходит вычисление различных норм для исходных массивов.

Дополнительные материалы

Норма порядка p для вектора v, имеющего N элементов:

Максимальная сумма столбцов матрицы X размерностью m×n (m,n>=2 ):
Максимальная сумма строк матрицы X размерностью m×n (m,n>=2 ):
Норма Фробениуса матрицы X размерностью m×n (m,n>=2 ):