下面是我的問(wèn)題。
如圖所示。兩個(gè)通道被一層膜隔開(kāi)(為了便于計(jì)算,這層膜用wall、wall2來(lái)表示)。上面通道內(nèi)走冷水,下層走熱水。紅色區(qū)域表示熱水側(cè)靠近 Wall 2 的一層網(wǎng)格,將這部分劃分為 cell zone3,而綠色區(qū)域表示冷水側(cè)靠近 Wall 的一層網(wǎng)格,將這部分劃分為 cell zone4 ,網(wǎng)格劃分方式相同。整個(gè)過(guò)程用fluent模擬。
問(wèn)題:現(xiàn)在需要在熱水側(cè)靠近Wall 2 的那層網(wǎng)格(cell zone3)加載能量源項(xiàng),而這個(gè)能量源項(xiàng)不僅與Cell zone3內(nèi)網(wǎng)格溫度有關(guān),還與其相對(duì)應(yīng)的Cell zone4內(nèi)網(wǎng)格溫度有關(guān).即
Source=f(T1, T0),我將其簡(jiǎn)化為Source=T1-T0 (如圖所示T1為Cell zone3中某個(gè)網(wǎng)格的溫度、T0為 Cell zone4中與紅色網(wǎng)格相對(duì)應(yīng)的綠色網(wǎng)格的溫度)
現(xiàn)在問(wèn)題的難點(diǎn)是如何在Cell zone3中提取到Cell zone4相對(duì)應(yīng)的(必須是相對(duì)應(yīng)的)網(wǎng)格溫度。下面是我自己的做法。
DEFINE_ADJUST(filter_adjust, domain)
{
cell_t c0, c1;
Thread*wall2_thread; /*膜下側(cè),即wall2*/
Thread*t0;
Thread*t1;
face_t wall2 =35;
mem_thread= Lookup_Thread(domain,mem);
begin_f_loop (wall2, wall2_thread)
{
c0= F_C0(wall2,wall2_thread);
c1= F_C1(wall2,wall2_thread);
t0= THREAD_T0(wall2_thread);
t1= THREAD_T1(wall2_thread); /*由fluent默認(rèn)可知c0為Cell zone3中某個(gè)網(wǎng)格,而c1為Cell zone4中與c0對(duì)應(yīng)的綠色網(wǎng)格*/
C_UDMI (c0,t0,0)=C_T(c0, t0) -C_T(c1, t1);
} /*將紅色網(wǎng)格及其對(duì)應(yīng)的綠色網(wǎng)格差值存儲(chǔ)在紅色網(wǎng)格中,也就是Cell zone3的網(wǎng)格中*/
end_f_loop (wall2,wall2_thread)
}
DEFINE_SOURCE(water_source,cell,thread,dS,eqn) /*加載在Cell zone3上*/
{
real source_en;
source_en=C_UDMI(c,t,0); /*感覺(jué)這里有問(wèn)題啊,指針問(wèn)題?*/
dS=0.;
return source_en;
}
最終可以加載上,不過(guò)沒(méi)有任何的作用,個(gè)人感覺(jué)是source_en=C_UDMI(c,t,0)與C_UDMI (c0,t0,0)=C_T(c0, t0) -C_T(c1, t1)不能進(jìn)行數(shù)據(jù)傳遞。希望高手能夠給予幫助,大家有更好的辦法的話,希望能不吝賜教。謝謝!





















