武汉科技大学本科毕业论文
real diff_solid;
diff_solid=(1-phi)*ks; /根据公式求出扩散系数/ return diff_solid; /返回扩散系数/
}
DEFINE_DIFFUSIVITY(solid_diffusivity, c, t, i) {
real phi=0.525; /惰性气体孔隙率/ real ks=0.0242 ; /惰性气体导热系数/ real cf=1040.67 ; /惰性气体比热/ real diff_fluid;
diff_solid=(1-phi)*ks; /根据公式求出扩散系数/ return diff_solid; /返回扩散系数/
}
UDS中的宏函数DEFINE_UDS_FLUX可以定义焦炭和气体能量方程中的对流项。具体程序代码如下所示,其中solid_flux表示焦炭对流项,fluid_flux表示气体对流项。 DEFINE_UDS_FLUX(solid_flux, f, t, i) {
cell_t c0, c1 = -1; Thread *t0, *t1 = NULL;
real NV_VEC(psi_vec), NV_VEC(A), flux = 0.0; real dens; c0 = F_C0(f,t);
t0 = F_C0_THREAD(f,t); F_AREA(A, f, t);
/* If face lies at domain boundary, use face values; */ /* If face lies IN the domain, use average of adjacent cells. */
if (BOUNDARY_FACE_THREAD_P(t)) /*Most face values will be available*/ {
/* Depending on its BC, density may not be set on face thread*/ if (NNULLP(THREAD_STORAGE(t,SV_DENSITY))) dens = F_R(f,t); /* Set dens to face value if available */ else
dens = C_R(c0,t0); /* else, set dens to cell value */
dens=1072.75;
NV_DS(psi_vec, =, 0,-0.001,0, *, dens);
7
武汉科技大学本科毕业论文
// Message(\
flux = NV_DOT(psi_vec, A); /* flux through Face */ } else {
c1 = F_C1(f,t); /* Get cell on other side of face */ t1 = F_C1_THREAD(f,t);
dens=1072.75;
NV_DS(psi_vec, =, 0,-0.001,0,*,dens); NV_DS(psi_vec, +=, 0,-0.001,0,*,dens);
flux = NV_DOT(psi_vec, A)/2.0; /* Average flux through face */ } return flux;
}
DEFINE_UDS_FLUX(fluid_flux, f, t, i) {
cell_t c0, c1 = -1; Thread *t0, *t1 = NULL;
real NV_VEC(psi_vec), NV_VEC(A), flux = 0.0;
c0 = F_C0(f,t);
t0 = F_C0_THREAD(f,t); F_AREA(A, f, t);
/* If face lies at domain boundary, use face values; */ /* If face lies IN the domain, use average of adjacent cells. */
If(BOUNDARY_FACE_THREAD_P(t))/*Most face values will be available*/ { real dens;
/* Depending on its BC, density may not be set on face thread*/ if (NNULLP(THREAD_STORAGE(t,SV_DENSITY))) dens = F_R(f,t); /* Set dens to face value if available */ else
dens = C_R(c0,t0); /* else, set dens to cell value */
NV_DS(psi_vec, =, F_U(f,t), F_V(f,t), F_W(f,t), *, dens); flux = NV_DOT(psi_vec, A); /* flux through Face */
8
武汉科技大学本科毕业论文
} Else {
c1 = F_C1(f,t); /* Get cell on other side of face */ t1 = F_C1_THREAD(f,t);
NV_DS(psi_vec, =, C_U(c0,t0),C_V(c0,t0),C_W(c0,t0),*,C_R(c0,t0)); NV_DS(psi_vec, +=, C_U(c1,t1),C_V(c1,t1),C_W(c1,t1),*,C_R(c1,t1));
flux = NV_DOT(psi_vec, A)/2.0; /* Average flux through face */ }
return flux; }
UDS中的DEFINE_SOURCE宏函数可以定义焦炭和惰性气体能量方程中的源项。具体程序代码如下所示,其中solid_soure表示焦炭的源项,gas_source表示气体的源项。
DEFINE_SOURCE(gas_source, c, t, dS, eqn) {
real S_fluid; real hv=1392;
real cf=1040.67;
S_fluid=hv*(C_UDSI(c,t,TS)-C_UDSI(c,t,TF))/cf; dS[eqn]=-hv/cf; return S_fluid; }
DEFINE_SOURCE(solid_soure, c, t, dS, eqn) {
real S_solid; real hv=1392; real cs=960;
S_solid=hv*(C_UDSI(c,t,TF)-C_UDSI(c,t,TS))/cs; dS[eqn]=-hv/cs; return S_solid; }
9
武汉科技大学本科毕业论文
3 干熄焦炉内固-气流动及传热的数学模型
3.1 几何模型
干熄焦炉模型主要由炉顶、预存室、斜道、冷却室和环形气道几部分组成。如图3.1为干熄焦炉的炉壳和炉膛流体域的三维几何模型,由于本次主要模拟焦炭与气体的流动和热交换,因此可以忽略气体入口处复杂的中心风冒区。高温的红焦从炉顶进入干熄焦炉,先在预存室内滞留,然后进入冷却室与低温的循环气体进行热交换,最后从炉底排出;低温的循环气体从底部进入干熄炉在冷却室吸收焦炭热量后从斜道、环形气道排出。
(a)炉壳 (b)炉膛流体域
图3.1 干熄焦炉的三维几何模型
干熄炉的主要的尺寸为:冷却室直径为Ф8900mm,冷却室高度为7430.8mm预存室直径为Ф7940mm,预存室高度为7390mm,斜道高度为2704mm,环形气道高度为4341mm。
3.2 基本假设
由于干熄焦炉内焦炭孔隙数量巨多,孔径较小,形状大小不一,实际中冷却气体在焦炭间的流动和传热非常复杂,为了能进行准确的数学描述和数值计算,需要对其进行平均化和统计化处理。把焦炭看作多孔介质,惰性气体通过焦炭的过程可以看作是流体通过多孔介质。因此,需要做以下假设:
(1)焦炉内的焦炭为各向同性的多孔介质,不考虑焦炭本身的多孔性及高温变形; (2)焦炉内焦炭的粒径是均匀分布的;
10
武汉科技大学本科毕业论文
(3)焦炭颗粒内外温度一致,即单个焦炭颗粒内部无温度梯度; (4)忽略冷却气体和焦炭的辐射传热,只考虑导热和对流传热; (5)焦炭和惰性气体换热不发生任何化学反应。
3.3 数学模型
干熄焦炉内高温的红焦从上往下运动、低温气体从下往上运动,两者反方向运动完成热交换。这个换热过程可以看成气体在焦炭颗粒组成的移动的多孔介质中进行强迫对流换热。由于焦炭和气体的温度恒不相等,可以采用局部非平衡方程,将焦炭和气体分别看作不同的连续介质,因此,气体和焦炭的连续性方程采用标准的连续性方程。根据Darcy-Brinkman-Forchheimer[14]的理论,得到干熄焦炉内循环气体流动和循环气体与焦炭换热的控制方程。
气体的连续方程:
焦炭的连续方程:
气体的标准动量方程:
?(?fVf)?t????fVfVf???Pf????f?Vf??Vf??s???(?sVs)?0 (3.2) ?t??f?t???(?fVf)?0 (3.1)
??T????fg?F (3.3)
考虑惯性损失和粘性阻力,需要在标准动量方程上添加一个源项,源项的表述式为
[15]
:
1???Si???Vi?C2?ViVi?2??? (3.4)
根据Ergun方程[16],计算出多孔介质的黏性阻力系数(1/α)和内部阻力系数(C2)为:
150?1?????dp2?313.5?1???3dp?2 (3.5)
焦炭的能量方程为:
C2? (3.6)
???sCsVs?Ts?(1??)???s?Ts??hvTs?Tf (3.7)
11
????