24小时热门版块排行榜    

查看: 5065  |  回复: 21
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

enigmafwj

捐助贵宾 (小有名气)

[求助] 【求助】FLUENT UDF 气液两相流 汽蚀 汽化潜热(问题详见内容)

为液相、气相质量方程和能量方程添加源项,UDF程序如下,汽化、液化由压力控制(压力条件判断),各物性参数用温度拟合。问题是:编译时,提示有语法错误(parse),并且fv为未声明的变量。请问如何解决?另:程序中有其他不妥之处,烦请指教,谢谢!
#include "udf.h"
#include "sg_mphase.h"

DEFINE_SOURCE(liq_m,c,l_t,dS,eqn)    /*液相质量输运源项*/
{
Thread *m_t,*v_t;                   /*计算区域指针*/
  m_t=THREAD_SUPER_THREAD(l_t);      /*混合区液相指针*/
  v_t=THREAD_SUB_THREAD(m_t,1);      /*单相区气相指针*/
real m_dot_l;                       /*液相质量输运量*/
real stc;                           /*液氧表面张力系数*/
real fv;                            /*气相质量分数*/
  fv=C_VOF(c,v_t)*C_R(c,v_t)/(C_VOF(c,v_t)*C_R(c,v_t)+C_VOF(c,l_t)*C_R(c,l_t));
real pres_vap,pres_sat,pres_turb;   /*液氧饱和蒸汽压(考虑湍流影响)*/
  if(C_T(c,m_t)>154.58)
    {
     stc=0;
     pres_sat=5.041e6;
    }
  else if(C_T(c,m_t)>54.36)
    {
     stc=0.038066*pow(1-C_T(c,l_t)/154.58,1.2136);
     pres_sat=133.322*pow(10,20.6695-526.97/C_T(c,l_t)-6.7062*log10(C_T(c,l_t))+0.012926*C_T(c,l_t)-C_T(c,l_t)*C_T(c,l_t)*(9.8832e-13));
    }
  else
    {
     stc=0.0225;
     pres_sat=146.041;
    }
  pres_turb=0.39*C_R(c,l_t)*C_K(c,m_t);
  pres_vap=pres_sat+0.5*pres_turb;
if(C_P(c,m_t)<=pres_vap)             /*液相汽化*/
   {
    m_dot_l=-0.02*sqrt(C_K(c,m_t))/stc*C_R(c,l_t)*C_R(c,v_t)*sqrt((2*(pres_vap-C_P(c,m_t)))/(3*C_R(c,l_t)))*(1-fv);
    dS[eqn]=-0.02*sqrt(C_K(c,m_t))/stc*C_R(c,l_t)*C_R(c,v_t)*sqrt((2*(pres_vap-C_P(c,m_t)))/(3*C_R(c,l_t)));
   }
else                                 /*气相液化*/
   {
    m_dot_l=0.01*sqrt(C_K(c,m_t))/stc*C_R(c,l_t)*C_R(c,l_t)*sqrt((2*(C_P(c,m_t)-pres_vap))/(3*C_R(c,l_t)))*fv;
    dS[eqn]=0;
   }
return m_dot_l;
}

DEFINE_SOURCE(vap_m,c,v_t,dS,eqn)    /*气相质量输运源项*/
{
Thread *m_t,*l_t;                   /*计算区域指针*/
  m_t=THREAD_SUPER_THREAD(v_t);      /*混合区气相指针*/
  l_t=THREAD_SUB_THREAD(m_t,0);      /*单相区液相指针*/
real m_dot_v;                       /*气相质量输运量*/
real stc;                           /*液氧表面张力系数*/
real fv;                            /*气相质量分数*/
  fv=C_VOF(c,v_t)*C_R(c,v_t)/(C_VOF(c,v_t)*C_R(c,v_t)+C_VOF(c,l_t)*C_R(c,l_t));
real pres_vap,pres_sat,pres_turb;   /*液氧饱和蒸汽压(考虑湍流影响)*/
  if(C_T(c,m_t)>154.58)
    {
     stc=0;
     pres_sat=5.041e6;
    }
  else if(C_T(c,m_t)>54.36)
    {
     stc=0.038066*pow(1-C_T(c,l_t)/154.58,1.2136);
     pres_sat=133.322*pow(10,20.6695-526.97/C_T(c,l_t)-6.7062*log10(C_T(c,l_t))+0.012926*C_T(c,l_t)-C_T(c,l_t)*C_T(c,l_t)*(9.8832e-13));
    }
  else
    {
     stc=0.0225;
     pres_sat=146.041;
    }
  pres_turb=0.39*C_R(c,l_t)*C_K(c,m_t);
  pres_vap=pres_sat+0.5*pres_turb;
if(C_P(c,m_t)<=pres_vap)             /*液相汽化*/
   {
    m_dot_v=0.02*sqrt(C_K(c,m_t))/stc*C_R(c,l_t)*C_R(c,v_t)*sqrt((2*(pres_vap-C_P(c,m_t)))/(3*C_R(c,l_t)))*(1-fv);
    dS[eqn]=0;
   }
else                                 /*气相液化*/
   {
    m_dot_l=-0.01*sqrt(C_K(c,m_t))/stc*C_R(c,l_t)*C_R(c,l_t)*sqrt((2*(C_P(c,m_t)-pres_vap))/(3*C_R(c,l_t)))*fv;
    dS[eqn]=-0.01*sqrt(C_K(c,m_t))/stc*C_R(c,l_t)*C_R(c,l_t)*sqrt((2*(C_P(c,m_t)-pres_vap))/(3*C_R(c,l_t)));
   }
return m_dot_v;
}

DEFINE_SOURCE(m_enrg,c,m_t,dS,eqn)   /*混合相能量方程输运源项*/
{
Thread *l_t,*v_t;                   /*计算区域指针*/
  l_t=THREAD_SUB_THREAD(m_t,0);      /*混合区液相指针*/
  v_t=THREAD_SUB_THREAD(m_t,1);      /*混合区气相指针*/
real m_dot;                         /*相变质量*/
real hc;                            /*汽化潜热*/
real source;                        /*能量方程源项*/
real stc;                           /*液氧表面张力系数*/
real fv;                            /*气相质量分数*/
  fv=C_VOF(c,v_t)*C_R(c,v_t)/(C_VOF(c,v_t)*C_R(c,v_t)+C_VOF(c,l_t)*C_R(c,l_t));
real pres_vap,pres_sat,pres_turb;   /*液氧饱和蒸汽压(考虑湍流影响)*/
  if(C_T(c,m_t)>154.58)
    {
     stc=0;
     pres_sat=5.041e6;
     hc=0;
    }
  else if(C_T(c,m_t)>54.36)
    {
     stc=0.038066*pow(1-C_T(c,l_t)/154.58,1.2136);
     pres_sat=133.322*pow(10,20.6695-526.97/C_T(c,l_t)-6.7062*log10(C_T(c,l_t))+0.012926*C_T(c,l_t)-C_T(c,l_t)*C_T(c,l_t)*(9.8832e-13));
     hc=8040*pow(1-C_T(c,l_t)/154.58,0.201);
    }
  else
    {
     stc=0.0225;
     pres_sat=146.041;
     hc=2523;
    }
  pres_turb=0.39*C_R(c,l_t)*C_K(c,m_t);
  pres_vap=pres_sat+0.5*pres_turb;
if(C_P(c,m_t)<=pres_vap)             /*液相汽化,温度升高,源项为正*/
   {
    m_dot=0.02*sqrt(C_K(c,m_t))/stc*C_R(c,l_t)*C_R(c,v_t)*sqrt((2*(pres_vap-C_P(c,m_t)))/(3*C_R(c,l_t)))*(1-fv);
    source=m_dot*hc;
    dS[eqn]=0;
   }
else                                 /*气相液化,温度降低,源项为负*/
   {
    m_dot=-0.01*sqrt(C_K(c,m_t))/stc*C_R(c,l_t)*C_R(c,l_t)*sqrt((2*(C_P(c,m_t)-pres_vap))/(3*C_R(c,l_t)))*fv;
    source=-m_dot*hc;
    dS[eqn]=0;
   }
return source;
}
回复此楼

» 收录本帖的淘贴专辑推荐

多相流UDF 传热传质

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

enigmafwj

捐助贵宾 (小有名气)

引用回帖:
2楼: Originally posted by kylafree at 2012-07-30 21:19:25
real fv;                            /*气相质量分数*/
   fv=C_VOF(c,v_t)*C_R(c,v_t)/(C_VOF(c,v_t)*C_R(c,v_t)+C_VOF(c,l_t)*C_R(c,l_t));
real pres_vap,pres_sat,pres_turb;   /*液氧饱和蒸汽压(考虑湍流影 ...

因为你所问的这两句,是在气相质量方程源项里的,DEFINE_SOURCE(vap_m,c,v_t,dS,eqn)里的thread:v_t在该宏应用于气相质量方程时指向了气相区。因为之后要用到混合区气相的参数,所以用THREAD_SUPER_THREAD(v_t)把指针恢复到混合区气相并传给m_t;
THREAD_SUB_THREAD(m_t,0)的意思是在m_t得到混合区气相指针后,m_t作为最高区域(混合区)的指针,可以用这个函数把单相区液相指针传给l_t,才能用l_t调用到液相区的参数,0指的是主相(液相),1指的是次相(气相)。
3楼2012-07-31 15:49:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

enigmafwj

捐助贵宾 (小有名气)

引用回帖:
4楼: Originally posted by kylafree at 2012-07-31 16:22:41
感谢兄台,受教了。我本来没做多相流,但对这个有点兴趣。
再问几个小白的问题可以不。比如我按下面这样理解对头不:
气相区----就是指这个区域的CELL只有气相;
液相区----就是指这个区域的CELL只有液相;
混 ...

你看下UDF帮助的第3章第11节的区域结构和第6章THREAD函数。
5楼2012-08-02 09:54:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

enigmafwj

捐助贵宾 (小有名气)

引用回帖:
4楼: Originally posted by kylafree at 2012-07-31 16:22:41
感谢兄台,受教了。我本来没做多相流,但对这个有点兴趣。
再问几个小白的问题可以不。比如我按下面这样理解对头不:
气相区----就是指这个区域的CELL只有气相;
液相区----就是指这个区域的CELL只有液相;
混 ...

照你的改完还是不行啊
6楼2012-08-02 09:55:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

enigmafwj

捐助贵宾 (小有名气)


xiegangmai: 金币+1, 鼓励分享解决经验,金币奖励! 2012-08-11 22:33:37
引用回帖:
7楼: Originally posted by kylafree at 2012-08-02 16:09:10
你干脆把出错代码贴出来大家都可以看到...

改好了。把变量声明全部放前面就OK了
8楼2012-08-02 21:54:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

enigmafwj

捐助贵宾 (小有名气)

引用回帖:
9楼: Originally posted by kylafree at 2012-08-02 22:00:06
那恭喜啊,有时间给我讲解下我的疑问啊?...

我刚学这些个东西,只是按自己的理解用它,你觉得这两函数是否是这样用的?
10楼2012-08-03 16:01:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

enigmafwj

捐助贵宾 (小有名气)

引用回帖:
11楼: Originally posted by kylafree at 2012-08-03 17:02:46
我不知道啊,正学习呢,自己现在没做多相流,但有兴趣,碰见机会正好学习下...

朋友,这个UDF在单机多核下最后会出现这样一个问题,能否麻烦你看看,恳请指教。
received suspend command for a pmi context that doesn't exist:unmatched id=2
unable to read the cmd header on the pmi context,Undefined dynamic error code.
The parallel FLUENT process could not be started.
job aborted:
rank:node:exit code[:error message]
0:***:-1073741819:process 0 exited without calling finalize
1:***:-1073741819:process 1 exited without calling finalize
2:***:123

注:1.***是计算机名
      2.瞬态计算
12楼2012-08-11 10:37:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 enigmafwj 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 豫北虫友互识 +3 xuhongli903 2024-06-18 3/150 2024-06-18 09:47 by Aaron_lee
[找工作] 药学硕士找不到工作,打算去做科研助理了 +6 pom戴墨镜 2024-06-14 16/800 2024-06-18 09:27 by pom戴墨镜
[基金申请] 最新消息:2024国自然下载文件名变了 +16 dream200606 2024-06-16 29/1450 2024-06-18 09:26 by 可7可D
[基金申请] 我标书代码变了 +49 学员NHuqdk 2024-06-16 64/3200 2024-06-18 08:47 by professorcx
[基金申请] 博后基金刷到的BUG,图片来的更直观 +12 carolloo 2024-06-17 13/650 2024-06-18 08:35 by q478652742
[硕博家园] 博士毕业高校和就业的相关问题 +7 SCITOPPP 2024-06-14 11/550 2024-06-18 07:51 by yinxing1995
[文学芳草园] 累并快乐着 +15 MYHLD521 2024-06-14 15/750 2024-06-18 01:28 by liyeqik
[找工作] 杭电、天津科技、青农和宁波工程学院如何选? +12 味道很好啊 2024-06-13 23/1150 2024-06-17 22:16 by 半简体
[硕博家园] 关于硕博连读的一些疑问? +4 Lwenter 2024-06-14 5/250 2024-06-17 20:42 by Lwenter
[论文投稿] 审稿问题:为什么荧光激发波长和紫外吸收波长差的大? 10+5 sdawege 2024-06-14 10/500 2024-06-17 18:54 by HH-探针
[基金申请] BO4的YQ答辩通知发布了吗? +6 博学笃行 2024-06-11 6/300 2024-06-15 16:04 by 悲催科研狗
[考研] 物理化学一对一辅导 +3 林大diao 2024-06-12 5/250 2024-06-14 20:57 by 林大diao
[基金申请] 博士后基金需要结题吗? +8 zhouchuck 2024-06-13 8/400 2024-06-14 17:27 by liuyupu132
[考博] 申博找导师 +4 疏影横斜水清浅3 2024-06-13 6/300 2024-06-14 14:31 by zxl_1105
[基金申请] 国自然基金公布的时候基金号有吗 +8 潇洒怡惜 2024-06-13 11/550 2024-06-14 11:24 by JRfei
[基金申请] 工材E10口函评结束了吗 10+3 我1的飞翔 2024-06-13 5/250 2024-06-14 06:35 by nono2009
[考博] 博导选择 +3 bing85977 2024-06-12 3/150 2024-06-13 15:34 by 我是邱尧
[有机交流] 原料反应完了,怎么知道是产物还是中间体 +6 小胡在努力 2024-06-11 8/400 2024-06-13 13:33 by 091602
[论文投稿] with editor日期变更 +3 慎独的小花卷 2024-06-12 8/400 2024-06-13 11:00 by 慎独的小花卷
[基金申请] 博后特助这周出结果吗?往年都是啥时候啊? +13 jsqy 2024-06-12 17/850 2024-06-12 19:55 by Lynn212
信息提示
请填处理意见