Clear Filters
Clear Filters

Can I make this for loop fast?

2 views (last 30 days)
Hi, I have a for loop that do some matrix multplicaton. Here, max i and j is 2000, U_new is a matrix of size 200 by 20, K111 cell contains 2000 full matrices of size 200 by 200.
p = 0;
for i =1:max(size(K111))
for j =1:max(size(K111))
p = p + 1;
KQQ{p} = U_new'*K111{i}*K111{j}*U_new;
end
end
  2 Comments
Matt J
Matt J on 28 Nov 2018
Are the K111 matrices symmetric?
Mohammod Minhajur Rahman
Mohammod Minhajur Rahman on 28 Nov 2018
Hi Matt, Yes, the K111 matrices are symmetric

Sign in to comment.

Accepted Answer

Matt J
Matt J on 28 Nov 2018
Edited: Matt J on 28 Nov 2018
Here I make occasional use of MAT2TILES (Download),
UK=cell2mat( mat2tiles( U_new'*cell2mat(K111(:).') ,[20,200]).' );
KQQ= mat2tiles( UK*UK.' ,[20,20]);
KQQ=KQQ(:);

More Answers (0)

Community Treasure Hunt

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

Start Hunting!