MATLAB中的交互方法

时间:2013-12-09 23:01:59

标签: matlab

我有一个等式,我需要输入一个值并用这个值计算一些方程式。

最后,我需要检查该值是否在一定的容差范围内。如果不是,我需要输入一个新值并用这个新值再次计算等式。

有人可以帮助我吗?

我试过这种方式。

我需要输入“Tin”并计算“Tw”。最后,我需要检查Tw和“Tb”之间的平均值是否小于10%。如果不是我需要为“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

0 个答案:

没有答案