MATLAB: Matrix operation without for loop

indexingmatrix manipulationvectorization

I have a (n,m) matrix T and a (n,1) vector a. I want to divide all the elements of n-th row with the n-th element of the column. Since I want to vectorize the process, I have tried the following
i = (1:n)';
out(i,:) = T(i,:)./a(i);
could it work or am I missing something? The indexing here do work when no component-wise operation is performed.

Best Answer

>> T=ones(3);
>> a=1:3;a=a(:);
>> out=bsxfun(@rdivide,T,a)
out =
1.0000 1.0000 1.0000
0.5000 0.5000 0.5000
0.3333 0.3333 0.3333
>>