function [c] = mvn_traceprod(A, B)
%MVN_TRACEPROD Compute Matrix trace of the matrix product of two symmetric matrices a and b.
% [c] = MVN_TRACEPROD(A, B) computes the trace of the symmetric matices
% c = trace(A*B) in an efficient way.
% (c) 2010-2011, Dominik Schnitzer, <email@example.com>
% This file is part of the MVN Octave/Matlab Toolbox
% MVN is free software: you can redistribute it and/or modify
% it under the terms of the GNU General Public License as published by
% the Free Software Foundation, either version 3 of the License, or
% (at your option) any later version.
% MVN is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
% GNU General Public License for more details.
% You should have received a copy of the GNU General Public License
% along with MVN. If not, see <http://www.gnu.org/licenses/>.
c = A(:).'*B(:);