24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 2014  |  回复: 4
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

bianboshen

新虫 (初入文坛)

[交流] UDF源项编写中如何调用壁面温度

楼主新人,目前想写一个液滴的能量源项,但是在源项中不知道如何调用壁面温度,代码如下,可以编译,但无法运行。
DEFINE_SOURCE(liq_enrg_src, c, sec_th, dS, eqn)
{

  Thread *mix_th, *pri_th, *t;
  Domain *domain=Get_Domain(1);
  int zone_ID=18;/*wall ID*/
  real m_dot_d=0;
  real kd=0;
  real Cnt=0;
  real a;
  real b;
  real d=0;
  real vg=0;
  real Reg=0;
  real tr=0;
  real Enrg_Source=0;
  face_t f;
  mix_th = THREAD_SUPER_THREAD(sec_th);
  pri_th = THREAD_SUB_THREAD(mix_th,0);
  t=Lookup_Thread(domain,zone_ID);

  begin_f_loop(f, t)
{
  Cnt=(1.0-C_VOF(c,pri_th))*C_R(c,sec_th);
  a=Cnt/C_R(c,pri_th);
  if(a<0.3)
  {
          kd=0.18*sqrt(0.026/(C_R(c,pri_th)*0.008));
  }
  else
  {
          kd=pow(a,-0.85)*sqrt(0.026/(C_R(c,pri_th)*0.008));
  }
  m_dot_d=kd*Cnt;

    dS[eqn]=0;

  vg=sqrt(pow(C_U(c,pri_th),2)+pow(C_V(c,pri_th),2)+pow(C_W(c,pri_th),2));

  Reg=C_R(c,pri_th)*vg*0.008/C_MU_EFF(c,pri_th);

  d=0.00796*0.026/C_R(c,pri_th)/pow(C_VOF(c,pri_th)*vg,2)*pow(Reg,2/3)*pow(C_R(c,pri_th)/C_R(c,sec_th),-1/3)*pow(C_MU_EFF(c,pri_th)/C_MU_EFF(c,sec_th),2/3);

  tr=3.14*sqrt(C_R(c,sec_th)*d*d*d/16/0.026);

  b=pow(18*pow(C_K_L(c,pri_th)*tr,3)*C_R(c,pri_th)*LAT_HT*pow(m_dot_d,5)/pow(C_R(c,sec_th),4)/C_MU_EFF(c,pri_th)/(1.0-C_VOF(c,pri_th))/(F_T(f,t)-T_SAT),0.25);

  Enrg_Source=(F_T(f,t)-T_SAT)*b*4/0.008;

  if(C_T(c,mix_th)<T_SAT)
  {  
   return 0;
   }
   else
   {
   return Enrg_Source;
   }
   }
回复此楼

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

博士科研新路历程

» 猜你喜欢

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

bianboshen

新虫 (初入文坛)

引用回帖:
4楼: Originally posted by sfbook at 2016-12-28 10:46:57
可以实现,但是要遍历一遍所有网格,按照坐标判断cell位置,然后判断取用与否。
相对的,只把udf加载到壁面上倒是很容易实现。...

这个是我重新写的,不知是否已经实现我所说的功能,另我这个源项加进去是要模拟液滴与壁面之间的对流换热,所以我的想法是给壁面液体设置一个正能量源项,给气体设置一个负的能量源项。
DEFINE_SOURCE(liq_enrg_src, c, sec_th, dS, eqn)
{

  Thread *mix_th, *pri_th, *t;
  Domain *domain=Get_Domain(1);
  int zone_ID=18;/*wall ID*/
  real m_dot_d=0;
  real kd;
  real Cnt;
  real a;
  real Area[ND_ND];
  real b;
  real d;
  real vg;
  real Reg;
  real tr;
  real Enrg_Source=0;
  face_t f;
  mix_th = THREAD_SUPER_THREAD(sec_th);
  pri_th = THREAD_SUB_THREAD(mix_th,0);
  t=Lookup_Thread(domain,zone_ID);
  begin_f_loop(f, t)
{
if(c == F_C0(f,t))
        {
  Cnt=(1.0-C_VOF(c,pri_th))*C_R(c,sec_th);
  a=Cnt/C_R(c,pri_th);
  if(a<0.3)
  {
          kd=0.18*sqrt(0.026/(C_R(c,pri_th)*0.008));
  }
  else
  {
          kd=pow(a,-0.85)*sqrt(0.026/(C_R(c,pri_th)*0.008));
  }
  m_dot_d=kd*Cnt;
  vg=sqrt(pow(C_U(c,pri_th),2)+pow(C_V(c,pri_th),2)+pow(C_W(c,pri_th),2));

  Reg=C_R(c,pri_th)*vg*0.008/C_MU_L(c,pri_th);

  d=0.00796*0.026/C_R(c,pri_th)/pow(C_VOF(c,pri_th)*vg,2)*pow(Reg,2/3)*pow(C_R(c,pri_th)/C_R(c,sec_th),-1/3)*pow(C_MU_L(c,pri_th)/C_MU_L(c,sec_th),2/3);

  tr=3.14*sqrt(C_R(c,sec_th)*d*d*d/16/0.026);

b=pow(18*pow(C_K_L(c,pri_th)*tr,3)*C_R(c,pri_th)*LAT_HT*pow(m_dot_d,5)/pow(C_R(c,sec_th),4)/C_MU_EFF(c,pri_th)/(1.0-C_VOF(c,pri_th))/(F_T(f,t)-T_SAT),0.25);
F_AREA(Area,f,t);
Enrg_Source=(F_T(f,t)-T_SAT)*b/C_VOLUME(c,mix_th)/(1-C_VOF(c, pri_th))*NV_MAG(Area);
dS[eqn]=0;
//Enrg_Source=2;
   return Enrg_Source;
        }
        }
end_f_loop(f, t)
  }
5楼2016-12-28 13:28:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

sfbook

银虫 (小有名气)


小木虫: 金币+0.5, 给个红包,谢谢回帖
壁面ID下调用的真的是壁面本身的数据。。。跟近壁面区域的差距还是很大的,你想要近壁面数据就得从主流流体里面找坐标在近壁面区域的cell。
2楼2016-12-27 16:16:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bianboshen

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by sfbook at 2016-12-27 16:16:32
壁面ID下调用的真的是壁面本身的数据。。。跟近壁面区域的差距还是很大的,你想要近壁面数据就得从主流流体里面找坐标在近壁面区域的cell。

感谢回帖,我目前要调用确实是壁面温度,将源箱只加载在与壁面相连的边界层中的cell上,其他cell不不加。这样是可以实现的么?

发自小木虫Android客户端
3楼2016-12-27 23:44:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sfbook

银虫 (小有名气)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
3楼: Originally posted by bianboshen at 2016-12-27 23:44:14
感谢回帖,我目前要调用确实是壁面温度,将源箱只加载在与壁面相连的边界层中的cell上,其他cell不不加。这样是可以实现的么?
...

可以实现,但是要遍历一遍所有网格,按照坐标判断cell位置,然后判断取用与否。
相对的,只把udf加载到壁面上倒是很容易实现。
4楼2016-12-28 10:46:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 290求调剂 +7 luoziheng 2026-04-04 7/350 2026-04-04 23:17 by lqwchd
[考研] 材料调剂 +10 懒羊羊轻置玉臀 2026-04-02 11/550 2026-04-04 21:56 by laoshidan
[考研] 求调剂 +6 熊二想上岸 2026-04-04 6/300 2026-04-04 20:43 by imissbao
[考研] 一志愿9材料学硕297已过六级求调剂推荐 +8 adaie 2026-04-04 9/450 2026-04-04 17:37 by oooqiao
[考研] 283分求调剂 +5 试试看呗 2026-04-04 5/250 2026-04-04 17:06 by dongzh2009
[考研] 一志愿武理材料工程302调剂环化或化工 +19 Doleres 2026-03-31 20/1000 2026-04-04 16:44 by 啊俊!
[考研] 0703求调剂 +6 zizimo 2026-03-31 6/300 2026-04-04 14:16 by 无际的草原
[考研] 311求调剂 +20 zchqwer 2026-04-01 22/1100 2026-04-03 22:09 by lglzsd
[考研] 本科985,专业0812分336求调剂 +4 莫莫很行 2026-04-03 4/200 2026-04-03 21:31 by zhq0425
[考研] 学硕机械工程303求调剂 +6 无名所以叫吴明 2026-03-30 7/350 2026-04-03 16:48 by asdfzly
[考研] 11408,284分,二战真诚求调剂 +4 12.27 2026-04-02 4/200 2026-04-03 14:14 by dxiaoxin
[考研] 调剂 +7 祉岷. 2026-04-02 7/350 2026-04-03 09:11 by 花呗还欠600
[考研] 初试301,代码085701环境工程,本硕一致,四六级已过,有二区一作,共发表5篇论文 +6 axibli 2026-04-01 6/300 2026-04-02 13:42 by Ecowxq666!
[硕博家园] 考研调剂 +5 骆驼男人 2026-04-01 5/250 2026-04-01 14:28 by syjjj0321
[考研] 301求调剂 +8 axibli 2026-04-01 8/400 2026-04-01 09:51 by 我的船我的海
[考研] 考研材料工程351分调剂 +5 整个好的 2026-03-31 5/250 2026-04-01 09:36 by topgun2009
[考研] 合肥区域性重点一本招收调剂 +4 6266jl 2026-03-30 8/400 2026-03-31 18:43 by 6266jl
[考研] 340求调剂 +4 希望如此i 2026-03-31 4/200 2026-03-31 16:40 by 690616278
[考研] 英一数一总分334求调剂 +4 陈阳坤 2026-03-31 4/200 2026-03-31 14:22 by 记事本2026
[考研] 370求调剂 +3 080700调剂 2026-03-30 3/150 2026-03-31 01:09 by A_Zhe
信息提示
请填处理意见