trace

Сумма диагональных элементов

Синтаксис

Описание

пример

b = trace(A) вычисляет сумму диагональных элементов матрицы A:

tr(A)=i=1naii=a11+a22+...+ann.

Примеры

свернуть все

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

A = [1 -5 2; 
    -3  7 9; 
     4 -1 6];

b = trace(A)
b = 14

Результат tr(A)=14 соглашается с вычислением вручную.

A=[a11a12a13a21a22a23a31a32a33]=[1-52-3794-16],

tr(A)=i=13aii=a11+a22+a33=1+7+6=14.

Проверьте несколько свойств трассировки матрицы (до ошибки округления).

Создайте две матрицы. Проверьте, что tr(A+B)=tr(A)+tr(B).

A = magic(3);
B = rand(3);
trace(A+B) 
ans = 17.4046
trace(A) + trace(B)
ans = 17.4046

Проверьте, что tr(A)=tr(AT)).

trace(A)
ans = 15
trace(A')
ans = 15

Проверьте, что tr(ATB)=tr(ABT).

trace(A'*B) 
ans = 22.1103
trace(A*B')
ans = 22.1103

Проверьте, что tr(cA)=ctr(A) для скаляра c.

c = 5;
trace(c*A) 
ans = 75
c*trace(A)
ans = 75

Проверьте, что трассировка равна сумме собственных значений tr(A)=iλi.

trace(A)
ans = 15
sum(eig(A))
ans = 15.0000

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

свернуть все

Входная матрица, заданная как квадратная матрица. A может быть полным или разреженным.

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

Алгоритмы

trace извлекает диагональные элементы и добавляет их вместе с командой sum(diag(A)). Значение трассировки совпадает (вплоть до ошибки округления) с суммой собственных значений матрицы sum(eig(A)).

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

..

См. также

| |

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