Too many input arguments with parfor loop
Afficher commentaires plus anciens
trying to run this instruction
>> Iteration('Al',[100:25:175],1.33)
function Iteration(type,data,n)
tic
length1 = length(data);
switch type
case 'Al'
parfor i = 1:length1 % line:21
if exist(sprintf('%d.mat',data(i)), 'file')==0
Slambda_Al(data(i),n);
end
fprintf('%d of %d\n',i,length1);
end
I get this error if the current directory contains a ".m" file otherwise runs without errors.
Error using Iteration (line 21)
Too many input arguments.
7 commentaires
Adel Sarhan
le 19 Avr 2019
Walter Roberson
le 19 Avr 2019
How many arguments does Slambda_Al accept?
Adel Sarhan
le 19 Avr 2019
Walter Roberson
le 19 Avr 2019
When you say that you get the problem when the directory contains a ".m" file, do you mean that you could set up a situation where the directory contained no .m files and the code would work, but if you were to create ThIsIsAnUnUsEdFiLe.m with empty content, then the parfor would fail ?
Adel Sarhan
le 19 Avr 2019
Walter Roberson
le 19 Avr 2019
For the purpose of debugging, try commenting out the SLambda_Al call, and instead displaying to i and n values, and seeing if the problem still happens. If it does not still happen then the problem would seem to be associated with the call to SLambda_Al , in which case you could try calling it with constant values like Slambda_al(1,1) and see if the problem still occurred.
I wonder if the problem is actually inside Slambda_al ?
Réponses (0)
Catégories
En savoir plus sur File Operations dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!