011_HeatExchanger.mw

熱交換器

イントロダクション

このワークシートでは、2 重構造のシリンダーから成るシリンダーの共通の設計を考えます。外部のシリンダーの中の冷えている液体は、内側のパイプの内部の熱いガスに対して反対方向に流れます。

[Inserted Image]

> restart;

問題の記述

水は熱の冷却液に使用され、中のパイプは空気を冷やすために含まれていると考えます。
空気の注入口の温度は T1in = 100°Cです。また、その排気口の温度 T1out は 80 ℃未満とします。

水の注入口の温度 T2in は 20℃ で、排気口の温度 T2out は 40 ℃ 以下とします。

熱伝達率 kA は 600W/K です。また、L はシリンダーの長さです。

熱容量 C1 は 1000 J/s です。熱容量 C2 は計算で得られます。

解決方法

熱について記述する微分方程式は以下のようになります:

> eq1 := diff(T1(x),x) = -(kA*(T1(x)-T2(x)))/(C1*L);
eq2 := diff(T2(x),x) = -(kA*(T1(x)-T2(x)))/(C2*L);

eq1 := diff(T1(x), x) = -kA*(T1(x)-T2(x))/(C1*L)

eq2 := diff(T2(x), x) = -kA*(T1(x)-T2(x))/(C2*L)

微分方程式を解くためには初期条件が必要で注入口の温度が x = 0 の時 T1in,x = L の時 T2in とします。

> T1in:=100: T2in:=20:

> sol:=dsolve({eq1, eq2, T1(0)=T1in, T2(L)=T2in}, {T1(x), T2(x)});

sol := {T2(x) = (20*(5*C1*exp(kA/C2)-C2*exp(kA/C1))*C2/(-C2*exp(kA/C1)+C1*exp(kA/C2))-80*C1*C2*exp(kA/C1)*exp(kA*(-C2+C1)*x/(L*C2*C1))/(-C2*exp(kA/C1)+C1*exp(kA/C2)))/C2, T1(x) = 20*(5*C1*exp(kA/C2)-C...sol := {T2(x) = (20*(5*C1*exp(kA/C2)-C2*exp(kA/C1))*C2/(-C2*exp(kA/C1)+C1*exp(kA/C2))-80*C1*C2*exp(kA/C1)*exp(kA*(-C2+C1)*x/(L*C2*C1))/(-C2*exp(kA/C1)+C1*exp(kA/C2)))/C2, T1(x) = 20*(5*C1*exp(kA/C2)-C...

これらの式に x = L, C1 = 1000, kA = 600 の値を挿入し、C2 の関数として T1out と T2out を得ます。

> T1out := unapply( simplify( subs(x=L, C1=1000, kA=600, subs(sol,T1(x))) ), C2);

T1out := proc (C2) options operator, arrow; -20*(-5000*exp(600/C2)+C2*exp(3/5)+4*C2*exp(600/C2))/(-C2*exp(3/5)+1000*exp(600/C2)) end proc

> T2out := unapply( simplify( subs(x=0, C1=1000, kA=600, subs(sol,T2(x))) ) ,C2);

T2out := proc (C2) options operator, arrow; 20*(5000*exp(600/C2)-C2*exp(3/5)-4000*exp(3/5))/(-C2*exp(3/5)+1000*exp(600/C2)) end proc

これらを C2 について解きます。

> fsolve(T1out(C2) = 80, C2);

312.7648825

> fsolve(T2out(C2) = 40, C2);

1610.054933

> C := %;

C := 1610.054933

両方の条件を満たしていなければならないので、上記の高い値の C2 を選択します。

解のグラフ表示

C2 に関する排気口の空気の温度をグラフで表示します。

> pl1:=plot([[[0,80],[2800,80]], T1out(C2)], C2=10..2800, style=line, thickness=2):
pl2:=plots[textplot]([2800,81,"Maximum Air Temperature at the Outlet"],
        align={ABOVE,LEFT}, color=red):
plots[display](pl1, pl2, title="Air Temperature at the Outlet",
        labels=["Heat Capacitance flow[J/s]","Temp. [°C]"]);

[Plot]

C2 に関する排気口の水温をグラフで表示します。

> pl1:=plot([[[0,40],[2800,40]],T2out(C2)], C2=10..2800,
        style=line, thickness=2):
pl2:=plots[textplot]([2800,41,"Max. Outlet Water Temp."],
        align={ABOVE,LEFT}, color=red):
plots[display](pl1,pl2, title="Water Temperature at the Outlet",
        labels=["Heat capacitance flow [J/s]","Temp. [°C]"]);

[Plot]

チューブに沿った距離の関数として温度をプロットします。

> T1b := unapply(simplify(subs(x = L,C1 = 1000,C2 = C,subs(sol,T1(x)))),kA);

T1b := proc (kA) options operator, arrow; 20.*(1440219730.*exp(0.6210968207e-3*kA)+1610054933.*exp(0.1000000000e-2*kA))/(1610054933.*exp(0.1000000000e-2*kA)-1000000000.*exp(0.6210968207e-3*kA)) end pr...

> T2b := unapply(simplify(subs(x = 0,C1 = 1000,C2 = C,subs(sol,T2(x)))),kA);

T2b := proc (kA) options operator, arrow; 200.*(-500000000.*exp(0.6210968207e-3*kA)+561005493.*exp(0.1000000000e-2*kA))/(1610054933.*exp(0.1000000000e-2*kA)-1000000000.*exp(0.6210968207e-3*kA)) end pr...

> pl1:=plot([T1b(kA),T2b(kA)], kA=0..600, color=[red,blue], thickness=2):
pl2:=plots[textplot]([600,T1b(600)," Air Temp."],
        align=RIGHT, color=red):
pl3:=plots[textplot]([600,T2b(600)," Water Temp."],
        align=RIGHT, color=blue):
plots[display](pl1,pl2,pl3,
        title="Temperature Distribution along the heate",
        labels=["Distance along heate","Temp. [°C] "]);

[Plot]

結論

シリンダーの熱を距離の関数として数学的なモデル式を作成し、水と空気の温度を計算する為に Maple を利用しました。

参考文献

Frank P. Incropera and David P. De Witt, Fundamentals of Heat and Mass Transfer, John Wiley & Sons.