How do I stop this loop?
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Hello,
I have a simple question, and I really appreciate it if you could please help me. I have a for loop, and I'd like to stop it when my calculated value exceeds a certain number, but my attempts haven't been successful. This is my code:
for i=1:100
[ f_YC,fp_YC] = FD_YC( ycI,mu,C );
[XN,iter]=NR(xn,f_YC,fp_YC);
xI=XN;
my = 1./((-xI+(1-mu).*(xI+mu)./((xI+mu).^2+ycI).^(3/2) +mu.*(xI-1+mu)./((xI-1+mu).^2+ycI.^2).^(3/2))./( ycI -ycI.*(1-mu)./((xI+mu).^2+ycI.^2).^(3/2)- ycI.*mu./((xI-1+mu).^2+ycI.^2).^(3/2)));
X = my .* ycI + XN;
if xI > .82;
break
end
end
2 Commenti
Risposta accettata
Image Analyst
il 12 Lug 2016
That should stop it, if XN ever exceeds 0.82. Apparently it doesn't though. This is the way to find out why: http://blogs.mathworks.com/videos/2012/07/03/debugging-in-matlab/ Perhaps since you don't pass I into any of the arrays or functions in the first two lines, the values never change. Not sure since we don't have those arrays or functions to check them.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Loops and Conditional Statements in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!