如何计算矩阵中指定元素的对角线之和?

How do I get calculate the sum of the diagonal of a specified element in a matrix?

例如,如果我有一个矩阵

 4     5     9     8     3     8
 3     2     4    10     1     3
 1     9     9     6     7     7
 2     1     7     4     6     7
 2     6     3     5     4     2
 7     2     2     9     3     4

如果我有行索引和列索引,如何计算元素 10 的对角线之和?

所以输出应该是 9 + 10 + 7 + 7。

谢谢!

column = 4;
row = 2;
output = sum(diag(A, column - row));

给你:

>> x = [4,5,9,8,3 ,8
3,2,4,10,1, 3
1,9,9,6,7 ,7
2,1,7,4,6 ,7
2,6,3,5,4 ,2
7,2,2,9,3 ,4]
x =

    4    5    9    8    3    8
    3    2    4   10    1    3
    1    9    9    6    7    7
    2    1    7    4    6    7
    2    6    3    5    4    2
    7    2    2    9    3    4

>> xsum = sum(diag(x,4-2));
>> xsum
xsum =  33

参数化索引以防您需要多次使用它。