Parfor with two loop variable
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hongbo Zhao
le 14 Mai 2018
Réponse apportée : Sid Jhaveri
le 17 Mai 2018
I would like to use the following code to run certain simulations labeled by “cases” number in parallel and also plot the result in consecutive subplots.
cases = [2,5,8];
parfor casenum = cases
result(casenum) = ...;
subplot(1,3,?)
end
In the example above, the question mark should be 1, 2, 3 for the three cases.
I know the following code doesn’t work because “result” is a sliced variable. And “result(casenum(i))” is not allowed.
cases = [2,5,8];
parfor i=1:length(cases)
result(cases(i)) = ...;
subplot(1,3,i)
end
Is there any way to work around this without having to resort to storing results with indexes 1 through 3?
0 commentaires
Réponse acceptée
Sid Jhaveri
le 17 Mai 2018
Hi,
You might want to try doing something like the code given below:
cases = [2,3,4];
result = zeros(1,4);
parfor i=cases
index = find(cases == i);
result(i) = i;
subplot(1,3,index)
end
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Parallel for-Loops (parfor) 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!