Vector form of for loop?

1 vue (au cours des 30 derniers jours)
Sadiq Akbar
Sadiq Akbar le 21 Nov 2022
Commenté : Sadiq Akbar le 22 Nov 2022
I have a piece of code that works fine. But it has a for loop as below:
M=5;
N=10;
abc=0.0;
for m1=1:M*N
abc=abc+(abs(yo(m1,1)-ye(m1,1))).^2;
end
abc=abc/(M*N);
e=abc;
What will be its vectored form to reduce the execution time?
  1 commentaire
Torsten
Torsten le 21 Nov 2022
Modifié(e) : Torsten le 21 Nov 2022

Connectez-vous pour commenter.

Réponse acceptée

Matt J
Matt J le 21 Nov 2022
Modifié(e) : Matt J le 21 Nov 2022
e=norm(yo-ye).^2/M/N
  4 commentaires
Matt J
Matt J le 21 Nov 2022
Modifié(e) : Matt J le 21 Nov 2022
Also is it true for any lenght of vector u?
Yes, try it.
can you make me understand on the line:
Perhaps an example,
steerA=randi(5,3,2)
steerA = 3×2
5 4 4 2 5 2
steerB=randi(50,3,2);
%original version
steerM = zeros(size(steerA, 1)*size(steerB, 1), size(steerA,2));
for idxK = 1 : size(steerM,2)
steerM(:, idxK) = kron(steerB(:, idxK), steerA(:, idxK));
end
%new version
steerM2=steerA.*permute(steerB,[3,2,1]);
%compare
steerM,steerM2
steerM = 9×2
30 176 24 88 30 88 160 104 128 52 160 52 160 20 128 10 160 10
steerM2 =
steerM2(:,:,1) = 30 176 24 88 30 88 steerM2(:,:,2) = 160 104 128 52 160 52 steerM2(:,:,3) = 160 20 128 10 160 10
Sadiq Akbar
Sadiq Akbar le 22 Nov 2022
Thanks a lot dear Matt J for your kind help.Regards,

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Matrices and Arrays 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