Too many input arguments with parfor loop
Show older comments
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 Comments
Adel Sarhan
on 19 Apr 2019
Walter Roberson
on 19 Apr 2019
How many arguments does Slambda_Al accept?
Adel Sarhan
on 19 Apr 2019
Walter Roberson
on 19 Apr 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
on 19 Apr 2019
Walter Roberson
on 19 Apr 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 ?
Answers (0)
Categories
Find more on File Operations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!