How To Prevent an Infinite Recursion?
1 次查看(过去 30 天)
显示 更早的评论
回答(2 个)
Image Analyst
2018-12-4
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 个评论
Yap emmanuel
2019-1-26
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 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!