MATLAB: Dot product of matrix with scalar

basic mathMATLAB

This is a trivial question.
I have a matrix
B = [1 1 1; 5 5 5; 9 9 9; 2 2 2; 6 6 6; 10 10 10; 3 3 3; 7 7 7; 11 11 11; 4 4 4; 8 8 8; 12 12 12];
n = [1,1,1]
How can I find the dot product of each row of B with n?
I know I can use for loops and do this for all rows of B:
row1 = dot(B(i,:),n);
But there should be a better method using indexing……right? Using for loops isn't efficient.

Best Answer

Hi,
multiplying each row with a vector is nothing else but the matrix vector multiplication:
B*n'
(n' since your n is a row vector).
Titus