Matrix summation within a loop

2 vues (au cours des 30 derniers jours)
Keshav Dev Singh
Keshav Dev Singh le 18 Fév 2012
Hello Friends, I want to solve "Phi=Summation((1/ai^2)*V(:,i)*U(:,i)') for loop range i=1:100". At every iteration Phi is a 100x500 huge matrix.
How such huge matrix summation problem can be solve?
Any and all replies are really appreciated!
~Keshav

Réponse acceptée

Andrei Bobrov
Andrei Bobrov le 18 Fév 2012
Phi2 = zeros(size(V,2),size(U,1));
for j1 = 1:size(V,2)
Phi2(j1,:) = 1/ai^2*sum(V(:,j1)*U(:,j1).');
end
OR
without loop
Phi1 = 1/ai^2*sum(bsxfun(@times,permute(V,[2 3 1]),U.'),3)

Plus de réponses (1)

Keshav Dev Singh
Keshav Dev Singh le 18 Fév 2012
It's working. Thanks a lot Bobrov!
One think i m nt getting, whts is meaning of dot in "U." ?
Regards, KDSingh

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by