Hello Friends,
I have the following:
A = [1 2 3; 4 5 6; 7 8 9];B = [10 11 12; 13 14 15];[N1, D1] = size(A);[N2, D2] = size(B); A_sq = sum(A.^2, 2); B_sq = sum(B.^2, 2)';D = A_sq(:,ones(1,N2)) + B_sq(ones(1,N1),:) - 2.*(A*B');
where D is N1 x D1 matrix.
I want to write expression for D in one single step, i.e., something like this:
D = sum(A.^2,2)(:,ones(1,N2)) + sum(B.^2,2)(ones(1,N1),:) - 2.*(A*B');
or perhaps something like this is even better:
D = sum[(A.^2,2)(:,ones(1,N2)) + (B.^2,2)(ones(1,N1),:) - . . .];
I know that above expression is wrong because one needs to store sum in a temporary variable before indexing. However, it is just for illustration purpose that I want to write down this expression in one single step.
I will appreciate any advise.
Best Answer