声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 950|回复: 2

请教各位大虾

[复制链接]
发表于 2006-4-14 12:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
我的成序一直是死循环。大家帮我看一下。<BR>function [P_c,h_out]=condenser(Td,h_in,m_in,m_out,m_a,T_a_in)<BR>P_c=1730000;<BR>d=0.00952;<BR>L_con=2;<BR>%冷凝器的进口温度等于压缩机的排气温度,初始时刻假定空气的平均温度为室外温度,管壁的平均温度为室外温度.<BR>T_a_p_0=300;<BR>T_w_p_0=300;<BR>M_0=0.6 ;<BR>t=0;<BR>while t&lt;100<BR>%此处假设冷凝压力,并假设出口为饱和气体。<BR>T_out=BHQT(P_c);<BR>V_sat=BHQV(T_out);<BR>h_out=BHQH(T_out);<BR>V_gr=GRQV(V_sat,Td,T_out);<BR>Tcon_in=Td;<BR>T_sh_p_1=T_a_p_0+(Tcon_in-T_out)/log((Tcon_in-T_a_p_0)/(T_out-T_a_p_0));<BR>Ain=1.2 ;<BR>Aout=1.25;<BR>a_in=1230;<BR>a_out=623 ;<BR>dt=1;<BR>A1=a_out*Aout*dt;<BR>A2=a_in*Ain*dt;<BR>A3=2361;<BR>T_w_p_1=(A1*T_a_p_0+A2*T_sh_p_1+A3*T_w_p_0)/(A1+A2+A3);<BR>Ain_j=(m_out*h_out-m_in*h_in)/(a_in*(T_sh_p_1-T_w_p_1));<BR>%求取冷凝管的容积<BR>Vin_j=pi*(Ain_j/(2*pi*L_con))*L_con ;<BR>M_j=2/(V_sat+V_gr)*Vin_j;<BR>M=M_0+(m_in-m_out)*dt;<BR>dm= abs(M_j-M);<BR>while dm&gt;0.5<BR>    if M_j&gt;M<BR>        P_c=P_c-100,<BR>        T_out=BHQT(P_c);<BR>V_sat=BHQV(T_out);<BR>h_out=BHQH(T_out),<BR>V_gr=GRQV(V_sat,Td,T_out);<BR>%冷凝器的进口温度等于压缩机的排气温度<BR>Tcon_in=Td;<BR>%初始时刻假定空气的平均温度为室外温度<BR>T_a_p_0=300;<BR>T_sh_p_1=T_a_p_0+(Tcon_in-T_out)/log10((Tcon_in-T_a_p_0)/(T_out-T_a_p_0));<BR>Ain= 1.2 ;<BR>Aout= 1.25 ;<BR>a_in= 1230 ;<BR>a_out=623 ;<BR>dt=1 ;<BR>A1=a_out*Aout*dt;<BR>A2=a_in*Ain*dt;<BR>A3=2361;<BR>%初始时刻假定管壁的平均温度为室外温度<BR>T_w_p_0=300;<BR>T_w_p_1=(A1*T_a_p_0+A2*T_sh_p_1+A3*T_w_p_0)/(A1+A2+A3);<BR>Ain_j=(m_out*h_out-m_in*h_in)/(a_in*(T_sh_p_1-T_w_p_1));<BR>Vin_j=pi*(Ain_j/(2*pi*L_con))*L_con;<BR>M_j=2/(V_sat+V_gr)*Vin_j;<BR>M=M_0+(m_in-m_out)*dt;<BR>elseif M_j&lt;M<BR>    P_c=P_c+100,<BR>    T_out=BHQT(P_c);<BR>V_sat=BHQV(T_out);<BR>h_out=BHQH(T_out),<BR>V_gr=GRQV(V_sat,Td,T_out);<BR>Tcon_in=Td;<BR>%冷凝器的进口温度等于压缩机的排气温度<BR>T_a_p_0=300;<BR>%初始时刻假定空气的平均温度为室外温度<BR>T_sh_p_1=T_a_p_0+(Tcon_in-T_out)/log10((Tcon_in-T_a_p_0)/(T_out-T_a_p_0));<BR>Ain=1.2 ;<BR>Aout=1.25 ;<BR>a_in= 1230 ;<BR>a_out=623 ;<BR>dt= 1;<BR>A1=a_out*Aout*dt;<BR>A2=a_in*Ain*dt;<BR>A3=2361;<BR>T_w_p_0=300;<BR>%初始时刻假定管壁的平均温度为室外温度<BR>T_w_p_1=(A1*T_a_p_0+A2*T_sh_p_1+A3*T_w_p_0)/(A1+A2+A3);<BR>Ain_j=(m_out*h_out-m_in*h_in)/(a_in*(T_sh_p_1-T_w_p_1));<BR>Vin_j=pi*(Ain_j/(2*pi*L_con))*L_con;<BR>M_j=2/(V_sat+V_gr)*Vin_j;<BR>M=M_0+(m_in-m_out)*dt;<BR>end<BR>h_a_in=27.005 ;<BR>%Cp空气的定压比热<BR>Cp=1.005;<BR>T_a_out=(a_out*Aout*(T_a_p_0-2*T_w_p_1)+2*m_a*h_a_in)/(2*m_a*Cp-a_out*Aout);<BR>M_0=M,<BR>T_a_p_0=(T_a_out+T_a_p_0)/2,<BR>T_w_p_0=T_w_p_1,<BR>t=t+dt,<BR>end<BR>end<BR>我的qq号是:41362159。希望大家多交流。
回复
分享到:

使用道具 举报

发表于 2006-4-14 22:21 | 显示全部楼层

回复:(Drmeng)请教各位大虾

你这里只有两个循环,第一个循环应该不会出现死循环,你仔细检查一下第二个循环<BR>while dm&gt;0.5<BR><BR>其中dm有没有可能大于0.5<BR>建议最好少用while<BR>用for和if来实现比较好
 楼主| 发表于 2006-4-15 11:52 | 显示全部楼层

回复:(happy)回复:(Drmeng)请教各位大虾

<P>谢谢,以后大家多交流<BR></P>
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-14 09:44 , Processed in 0.065235 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表