How create a interaction method to re-calculate a equation if a condition is not satisfied
Show older comments
I have a equation where i need to input a value and calculate some equations with this value.
In the end, i need to check if this value is ok.
If it's not, I need to input a new value and calculate the equation again with this new value.
Somebody can help me?
I tried this way.
I need to input "Tin" and calculate "Tw". In the end, i need check if the average between Tw and "Tb" in less than 10%. If it's not i neet to input a new value for "Tave".
clear
close all
Tin=input('Input T');
D=5;
t=0.362;
E=2.9e07;
ws=17.9148297590378;
R=1448.88;
alfa=1.96;
h=R*(1-(cos(alfa/2)));
I=pi*(D-t)*(D-t)*(D-t)*t/8;
teta=19.45;
L=495.73;
conv=teta*pi/180;
mis=0.3;
mil=0.05;
DRAG= 12*pi*D*L*mil;
Tb=8.89e4;
G=Tin;
for i=1:100
G(i)=Tin(i);
J=sqrt(E*I/G(i));
U=12*L/J;
X=3*L-(J/2)*tanh(U/2);
Y=18*L*L-J*J*(1-(1/cos(U/2)));
N=(12*G(i)*h-(ws/12)*cos(teta)*Y)/X;
frictc=N*mis;
ter=ws*L*sin(conv);
deltac=2*frictc+DRAG-ter;
Tw=deltac+Tb;
Tave(i)=(Tw+Tb)/2;
if Tave(i)>G(i)+G(i)*0.1
G(i)=Tave(i);
elseif Tave2(i)<G(i)-G(i)*0.1
G(i)=Tave2(i);
else
display(Tave2(i));
end
end
Accepted Answer
More Answers (2)
Walter Roberson
on 9 Dec 2013
need_to_continue = true;
while need_to_continue
Tin = input('Temperature In');
....
need_to_continue = (Tw + Tb)/2 > Tb/10; %average is more than 10% ?
end
Categories
Find more on Simscape Multibody 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!