Effacer les filtres
Effacer les filtres

Avoid using for loops as it results in ram crash and slow down

3 vues (au cours des 30 derniers jours)
Muhannad
Muhannad le 2 Déc 2015
Commenté : Muhannad le 15 Déc 2015
My code is:
for i = 1:n
for ii = 1:i-1
for iii = 1:ii-1
for iv = 1:iii-1
A = data(l([i ii iii iv 27]), 1:3);
% C(i,ii) = norm(A)*norm(inv(A));
% C(i,ii,iii) = norm(A)*norm(inv(A));
C(i,ii,iii, iv, 1) = cond(A);
% tmp = svd(A, 0);
% C(i,ii,iii,iv) = 0;
% vif{i,ii,iii} = diag(inv(A'*A));
% vif1{i,ii,iii} = diag(inv(A*A'));
end
end
end
i
end
The loop test for only 4 different wavelengths and here I am fixing the the 5th by using 27 in "A = data(l([i ii iii iv 27]), 1:3)", I am interested in adding the fifth as a loop or maybe 6th as well but the problem my ram is crashing and slow down the code a lot.
Any suggestion on how to solve this problem?
Regards,
  5 commentaires
Walter Roberson
Walter Roberson le 8 Déc 2015
Only allocate 200*200*200*200*1 as the maximum you use in the final dimension is 1.
Muhannad
Muhannad le 15 Déc 2015
Yes as I stated I am only using 4, but I want to use more for more wavelengths. Any suggestion on how can I do that without crashing the RAM?

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements 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