|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
用欧拉模型算气液两相流 一般气泡直径都是固定值吧 现在我想算一个气泡直径在流场是变化的情况 各位有做过的吗 这个问题我都苦恼好几个月了 大家帮帮忙!下面有好几个问题:
1 我用气含率表示直径 程序本生没错 可是就是算不了啊 不过如果把表达式中的气含率改成其他的变量(如温度什么的)就可以算了 不知道是不是fluent内部的什么逻辑问题
#include"udf.h"
DEFINE_PROPERTY(dia,c,t)
{real dia,void_g;
void_g=C_VOF(c,t);
e_tur=C_D(c,t)
dia=0.001142*pow(void_g,0.65)*pow(e_tur,-0.4);
return dia;
}
2. 不直接改气泡直径 而是把曳力模型中的气泡直径值改成那个表达式,同上 还是不行~~~
#include"udf.h"
/*定义气液相间交换系数*/
DEFINE_EXCHANGE_PROPERTY(udf_drag,cell,mix_thread,s_col,f_col)
{
Thread*t_g,*t_l;
real x_vel_g,x_vel_l,y_vel_g,y_vel_l,abs_v,slip_x,slip_y,rho_g,rho_l,mu_l;
real e_tur,n_g,n_l,dia,rey,taup,void_g,cd,fdrgs,k_g_l;
t_l=THREAD_SUB_THREAD(mix_thread,s_col); /*液相线*/
t_g=THREAD_SUB_THREAD(mix_thread,f_col); /*气相线*/
/* phase velocity*/
x_vel_g=C_U(cell,t_g);
y_vel_g=C_V(cell,t_g);
x_vel_l=C_U(cell,t_l);
y_vel_l=C_V(cell,t_l);
slip_x=x_vel_g-x_vel_l;
slip_y=y_vel_g-y_vel_l;
abs_v=sqrt(slip_x*slip_x+slip_y*slip_y);
rho_g=C_R(cell,t_g); /*空气密度*/
rho_l=C_R(cell,t_l); /*水密度*/
mu_l=C_MU_T(cell,t_l); /*湍流粘度*/
e_tur=C_D(cell,t_l); /*湍流耗散率*/
void_g=C_VOF(cell,t_g); /*气含率*/
if (void_g==0)
dia=0.001;
else
dia=0.001142*pow(void_g,0.65)*pow(e_tur,-0.4); /*气泡直径*/
rey=rho_l*abs_v*dia/mu_l; /*雷诺数*/
taup=rho_g*dia*dia/18./mu_l; /*颗粒豫驰时间*/
/* 定义曳力系数*/
if(rey<=1000.)
cd=24.*(1.+0.15*pow(rey,0.687))/rey;
else
cd=0.44;
fdrgs=cd*rey/24.; /*曳力函数*/
k_g_l=void_g*rho_g*fdrgs/taup; /*交换系数*/
return k_g_l;
}
3 考虑气泡聚并破碎 用UDS引入界面浓度方程 算平衡以后,再用界面浓度和气含率来表示气泡直径 也不行
总之一句话 我想改改气泡直径 有没有做过这方面的大哥大姐帮帮忙吧,这个问题小妹我苦恼好几个月了 先在此谢啦 |
|