how to iterate until the difference between variable is equal to zero
9 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
SITI AISHAH
el 28 de Mzo. de 2019
Comentada: SITI AISHAH
el 29 de Mzo. de 2019
tf = 140
V = (1.5800e-08)*exp((1.1575e+03)/(tf + 95))
S = (625)^2*((V*(N/60))/160)
delta_T = (0.349109 + (6.0094*S)+(0.047467*(S^2)))*(160)/9.7
t_ave = 120 + (delta_T/2)
tff = (tf + t_ave)/2
delta = tf-t_ave
while tf-t_ave >0
tf = tff
t_ave = 120 +(delta_T/2)
end
i want to make the value of tff as the new value for tf and keep on until tf and tff got the same value of number.
2 comentarios
Alex Mcaulley
el 28 de Mzo. de 2019
N is not defined. By the way, your while loop never finishes (tf - t_ave have allways the same value), unless
tf <= t_ave || tff <= t_ave
What do you exactly want to do? Because the answer to your question is trivial:
tf = t_ave
tff = t_ave
And no while loop is needed.
Respuesta aceptada
Alex Mcaulley
el 29 de Mzo. de 2019
The iteration is not clear. You need to update the values of tf and t_ave inside the while loop. I guess that is an optimization problem and you want tf-t_ave = 0, and following your image I can see that tf is updated in each iteration by
tf = tf - (tf-t_ave)/2
There aremore efficient options for optimization problems than this while loop, but the code that implements the iterations you have in the image is as follows:
tol = 1e-2;
tf = 140
N = 1.7501e+03;
V = (1.5800e-08)*exp((1.1575e+03)/(tf + 95))
S = (625)^2*((V*(N/60))/160)
delta_T = (0.349109 + (6.0094*S)+(0.047467*(S^2)))*(160)/9.7
t_ave = 120 + (delta_T/2)
% tff = (tf + t_ave)/2
while abs(tf-t_ave) > tol
delta = (tf-t_ave)/2;
tff = tf;
tf = tf-delta
V = (1.5800e-08)*exp((1.1575e+03)/(tf + 95));
S = (625)^2*((V*(N/60))/160);
delta_T = (0.349109 + (6.0094*S)+(0.047467*(S^2)))*(160)/9.7;
t_ave = 120 + (delta_T/2)
end
Más respuestas (0)
Ver también
Categorías
Más información sobre Computer Vision with Simulink 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!