Я хочу суммировать все элементы матрицы в Matlab.Если бы у меня была матрица с именем A, я мог бы суммировать все элементы, вызывая
sum(A(:));
Но я бы хотел суммировать элементы, возвращающиеся из функции, подобной этой:
sum(gammaln(A)) % where gammaln is the logarithm of gamma function
КонечноЯ могу сделать это в два этапа:
B = gammaln(A);
sum(B(:));
Но здесь я создаю матрицу B, которая мне совсем не нужна.И также я могу сделать это следующим образом:
sum(sum(gammaln(A)))
Но количество сумм будет равно размеру моей матрицы.Это выглядит некрасиво, и размер матрицы может измениться.
Мне любопытно, есть ли способ сделать это.