使用DEFINE_INIT宏初始化两相体积, 出现了问题:
如图所示:
我的模型是一个长方体,沿z轴方向将模型分成两部分,z向坐标范围为(-0.1,0.3)
0
初始化后,检查相分布,看第二相体积分数与定义的一致(图2),而查看第一相体积分布,发现整个区域全为第一相(图1)
UDF如下:
#include "udf.h"
DEFINE_INIT(my_init,d)
{
cell_t c;
Thread *t;
real xc[ND_ND];
Thread *pri_th,*sec_th;
thread_loop_c(t,d)
{
pri_th = THREAD_SUB_THREAD(t,0);
sec_th = THREAD_SUB_THREAD(t,1);
begin_c_loop_all (c,t)
{
C_CENTROID(xc,c,t);
if(xc[2]>=0&&xc[2]<=0.3)
{
C_VOF(c,sec_th)=1;
C_T(c,t)=1820;}
else
{
C_VOF(c,sec_th)=0;
C_T(c,t)=300;
}
}
end_c_loop_all(c,t)
}
}
请高手帮忙看看是哪出现问题了,谢谢!
![]()
图片1.png
![]()
图片2.png |