How do I stop this loop?

1 visualización (últimos 30 días)
Salar
Salar el 12 de Jul. de 2016
Comentada: Salar el 27 de Jul. de 2016
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 comentarios
Azzi Abdelmalek
Azzi Abdelmalek el 12 de Jul. de 2016
What is the problem?
Salar
Salar el 27 de Jul. de 2016
I got it solved. Thank you anyways!

Iniciar sesión para comentar.

Respuesta aceptada

Image Analyst
Image Analyst el 12 de Jul. de 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.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by