exponenta event banner

диагональ

Создание диагональной матрицы или получение диагоналей из символьных матриц

Описание

пример

D = diag(v) возвращает квадратную диагональную матрицу с вектором v в качестве основной диагонали.

пример

D = diag(v,k) размещает вектор v на kВосьмая диагональ. k = 0 представляет главную диагональ, k > 0 находится над главной диагональю, и k < 0 находится ниже основной диагонали.

пример

x = diag(A) возвращает главную диагональ A.

пример

x = diag(A,k) возвращает значение kвосьмая диагональ A.

Примеры

свернуть все

Создание символьной матрицы с главной диагональю, заданной вектором v.

syms a b c
v = [a b c];
diag(v)
ans =
[ a, 0, 0]
[ 0, b, 0]
[ 0, 0, c]

Создание символьной матрицы со второй диагональю под главной диагональю, заданной вектором v.

syms a b c
v = [a b c];
diag(v,-2)
ans =
[ 0, 0, 0, 0, 0]
[ 0, 0, 0, 0, 0]
[ a, 0, 0, 0, 0]
[ 0, b, 0, 0, 0]
[ 0, 0, c, 0, 0]

Извлеките главную диагональ из квадратной матрицы.

syms x y z
A = magic(3).*[x, y, z];
diag(A)
ans =
 8*x
 5*y
 2*z

Извлеките первую диагональ над главной диагональю.

syms x y z
A = magic(3).*[x, y, z];
diag(A,1)
ans =
   y
 7*z

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

свернуть все

Диагональные элементы, определяемые как символический вектор. Если v является вектором с N элементы, затем diag(v,k) - квадратная матрица порядка N + abs(k).

Входная матрица, заданная как символьная матрица.

Диагональное число, указанное как целое число. k = 0 представляет главную диагональ, k > 0 находится над главной диагональю, и k < 0 находится ниже основной диагонали.

Совет

  • trace матрицы равно sum(diag(A)).

См. также

|

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