want to multiply two matrices each time in a particular position according to randperm matrix position

1 view (last 30 days)
hi all, i want to multiply 2 50 x 50 matrix, according to the position of reandperm matrix. i.e first i ll generate randperm matrix, it consists of 50 elements. Now according to the elements in randperm ie if the first element is 20,i want to multiply 20 th position element in the both matrix. like this i have to multiply all 50 positions and have to sum it. how to do it in matlab. If anyone know, Pls suggest me too.
  1 Comment
Cedric
Cedric on 3 Sep 2013
Edited: Cedric on 3 Sep 2013
What are you calling "20th element" of 50x50 matrices? Is it a linear index(?), an index related to diagonals(?), anything else?

Sign in to comment.

Answers (2)

Matt J
Matt J on 3 Sep 2013
Edited: Matt J on 3 Sep 2013
rp=randperm(50);
result = dot( Matrix1(rp), Matrix2(rp));

Matt J
Matt J on 3 Sep 2013
Edited: Matt J on 3 Sep 2013
rp=randperm(50);
result = Matrix1(rp,:)*Matrix2(:,rp);
or
result = Matrix1(:,rp)*Matrix2(rp,:);

Categories

Find more on Operating on Diagonal Matrices in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!