I have 2 2D matrices. First one, A, is mxn where m=n*k and second one, B, is nxn. How do I do element-wise multiplication of every nxn square sub matrix of A with B without for loop? and sum all elements of every multiplied nxn matrix and get a nx1 vector? Below is what I did with for loop. I need to perform the for loop in one row.
n = 10;k = 5;A = rand(k*n,n);B = rand(n,n);results = zeros(k,1);for i=1:k results(i) = sum(B.*A(1+n*(i-1):i*n,:),'all');end
Best Answer