UDF 贴壁气泡的动量源项,添加就出错。 另:x,y两个方向源项,用解释形式分别添加,只显示后添加的源项。
物理模型:垂直壁上附着一气泡,考虑tensionsurfaceforce和阿基米德力后,建立动量源项。**********************************...
物理模型:
垂直壁上附着一气泡,考虑tension surface force 和阿基米德力后,建立动量源项。
*****************************************
UDFs: y- 动量源项
******************************************/
#include"udf.h"
#include "sg_mphase.h" /*包括体积分数宏C_VOF(C,T)*/
DEFINE_SOURCE(ymom_source,c,pri_th,dS,index)
{
real vof_g; /*定义单元格气相体积分数变量*/
Thread *mix_th; /*定义计算区域的指针*/
real c_yar,yar;
face_t f;
real NV_VEC(A);
real v_m,v0, v0_m, bv_m; /*bv边界区气相体积*/
real source;
mix_th=THREAD_SUB_THREAD(pri_th,1); /*指向混合区主相即气相的指针*/
begin_c_loop(c,mix_th)
{
vof_g=C_VOF(c,mix_th);
if (vof_g>0.&&vof_g<1.) /*判断界面*/
{
F_AREA(A,f, mix_th);
c_yar = C_P(c, mix_th)*NV_MAG(A); /*单元格y方向的分力*/
yar+=c_yar; /*y方向的阿基米德力合力*/
bv_m+=vof_g*C_VOLUME(c,mix_th); /*29*/
}
else if(vof_g==1.)
{
v0=C_VOLUME(c,mix_th); /*33*/
v0_m+=v0*C_R(c,mix_th);
}
}
end_c_loop(c,mix_th);
v_m=v0_m+bv;
source=yar-v*C_R(c,mix_th)*9.8 ; /*42*/
return source;
}
请高手指点一下。
添加源项后错误提示:
Error:
FLUENT received fatal signal (ACCESS_VIOLATION)
1. Note exact events leading to error.
2. Save case/data under new name.
3. Exit program and restart to continue.
4. Report error to your distributor.
Error Object: ()
不添加动量源项,可以运算下去。
(1)怎么添加,x,y两个方向源项?
(2)求高手指点上面的程序。本人新手,这是我写第一个程序。
红色区是空气,蓝色区是液体。
考虑x、y方向的表面张力和阿基米德力,观察气泡的形为。
其中,气泡左壁的壁面单元如何判断?不太清楚。 展开
垂直壁上附着一气泡,考虑tension surface force 和阿基米德力后,建立动量源项。
*****************************************
UDFs: y- 动量源项
******************************************/
#include"udf.h"
#include "sg_mphase.h" /*包括体积分数宏C_VOF(C,T)*/
DEFINE_SOURCE(ymom_source,c,pri_th,dS,index)
{
real vof_g; /*定义单元格气相体积分数变量*/
Thread *mix_th; /*定义计算区域的指针*/
real c_yar,yar;
face_t f;
real NV_VEC(A);
real v_m,v0, v0_m, bv_m; /*bv边界区气相体积*/
real source;
mix_th=THREAD_SUB_THREAD(pri_th,1); /*指向混合区主相即气相的指针*/
begin_c_loop(c,mix_th)
{
vof_g=C_VOF(c,mix_th);
if (vof_g>0.&&vof_g<1.) /*判断界面*/
{
F_AREA(A,f, mix_th);
c_yar = C_P(c, mix_th)*NV_MAG(A); /*单元格y方向的分力*/
yar+=c_yar; /*y方向的阿基米德力合力*/
bv_m+=vof_g*C_VOLUME(c,mix_th); /*29*/
}
else if(vof_g==1.)
{
v0=C_VOLUME(c,mix_th); /*33*/
v0_m+=v0*C_R(c,mix_th);
}
}
end_c_loop(c,mix_th);
v_m=v0_m+bv;
source=yar-v*C_R(c,mix_th)*9.8 ; /*42*/
return source;
}
请高手指点一下。
添加源项后错误提示:
Error:
FLUENT received fatal signal (ACCESS_VIOLATION)
1. Note exact events leading to error.
2. Save case/data under new name.
3. Exit program and restart to continue.
4. Report error to your distributor.
Error Object: ()
不添加动量源项,可以运算下去。
(1)怎么添加,x,y两个方向源项?
(2)求高手指点上面的程序。本人新手,这是我写第一个程序。
红色区是空气,蓝色区是液体。
考虑x、y方向的表面张力和阿基米德力,观察气泡的形为。
其中,气泡左壁的壁面单元如何判断?不太清楚。 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询