diag

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

Описание

пример

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

пример

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

пример

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

пример

x = diag(A,k) возвращает kдиагональ th 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