How To Prevent an Infinite Recursion?
2 views (last 30 days)
Show older comments
Answers (2)
Image Analyst
on 4 Dec 2018
What are you passing in as input arguments?
We don't have the mex file, so we can't run it ourselves.
Set a breakpoint at the mex file call. Run these lines of code, either in the m-file before the mex file call, or at the command line when you stop at the breakpoint there.
whos I
whos hwsize
whos sscale
whos iscale
What do you see in the command window?
Seems like they cause the mex file to try to create a gigantic array.
0 Comments
Yap emmanuel
on 26 Jan 2019
d_mx = 0;
idx = 0;
for a = 2:n-1
d = sqrt((x_np - Pts_in(1,2:n-1)).^2 + (y_np - Pts_in(2,2:n-1)).^2);
d_mx = max(d);
if d > d_mx;
idx = a;
d_mx = d;
end
end
k = length(d);
% % recursively call of the function
% for t = 1:k
if d_mx > epsilon
teil_1 = rdpa(Pts_in(:,1:idx),epsilon);
teil_2 = rdpa(Pts_in(:,idx:n-1),epsilon);
Pts_out = [teil_1(:,1:length(teil_1)-1) teil_2(:,1:length(teil_2))];
else
Pts_out = [Pts_in(:,1) Pts_in(:,n)];
end
end
For this code i receive the answer: Out of memory. The likely cause is
an infinite recursion within the
program.
Que faire s'il vous plait ca dure depuis un temps.
0 Comments
See Also
Categories
Find more on Logical 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!