24小时热门版块排行榜    

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

ltpreason

实习版主

优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!

[求助] udf程序改为并行

程序的目的是根据监测点的压力调节入口的质量流量,维持监测点的压力近似恒定,单核计算时程序可以用,一旦并行就出错,自己试着按帮助里的方法改一直没通(比如加#if !HOST #endif之类),恳请各位指点,先谢过了!把自己的金币全部悬赏!
DEFINE_ADJUST(get_p_monitor,d)
{
     Thread *t;
     cell_t c;
     real xc[ND_ND];/*网格质心坐标*/
     thread_loop_c(t,d)
      {
              begin_c_loop(c,t)
                  {
                              C_CENTROID(xc,c,t);
                              if (sqrt(ND_SUM(pow(xc[0] + 2.,2.),
                                                        pow(xc[1] -1.3,2.),
                                                        pow(xc[2]-0.,2.)))<0.01
                              pressure=C_P(c,t);/*点(-2,1.3,0)为监测点,当网格质心与监测点的距离小于0.01时,认为该网格的压力就是监测点的压力*/
                   }
           end_c_loop(c,t)
     }
printf("\n pressure=%g\n",pressure);
}

DEFINE_PROFILE(mass_inlet_as_p,t,i)
{
     face_t f;
     real mass=0.5;
     if(pressure<=480000.)
     mass=mass+0.01;
     else if(pressure>480000.&&.pressure<520000.)/*根据监测点的压力调节入口质量流量*/
     mass=mass;
     else
     mass=mass-0.01;
     begin_f_loop(f,t)
     {
        F_PROFILE(f,t,i)=mass;
     }
     end_f_loop(f,t)
printf("\n pressure=%g\n",pressure);
}
如果一并行,每计算一步会出现四个压力值(我用四核并行),其中一个为真实值,另三个是0,然后到下面用压力判断质量流量时用的一直是那个0的压力,所以就流量一直升高。
回复此楼

» 猜你喜欢

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

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

ltpreason

专家顾问

优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!

大家帮帮我吧。。。
3楼2013-11-07 20:23:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 5 个回答

ltpreason

实习版主

优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!

恳请高手帮忙。焦虑中……
2楼2013-11-06 18:00:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ltpreason

兑换贵宾

优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!

救星在哪里???
4楼2013-11-14 19:19:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pointh

超级版主

优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!优秀!!有木有!!!

【答案】应助回帖

★ ★ ★ ★ ★
1592203609: 金币+5, 谢谢回帖 2013-11-15 21:29:15
DEFINE_ADJUST(get_p_monitor,d)
{
     Thread *t;
     cell_t c;
     real xc[ND_ND];
     thread_loop_c(t,d)
      {
              begin_c_loop(c,t)
                  {
                              C_CENTROID(xc,c,t);
                              if (sqrt(ND_SUM(pow(xc[0] + 2.,2.),
                                                        pow(xc[1] -1.3,2.),
                                                        pow(xc[2]-0.,2.)))<0.01
                              pressure=C_P(c,t);
/*你这里前面网格的压力会不断的被后面网格所覆盖,Fluent会循环所有网格,所以最后输出的pressure变量只是最后一个网格的压力。可把C_P(c,t)放在一个UDM里面(自己查查,不难)*/
                   }
           end_c_loop(c,t)
     }
printf("\n pressure=%g\n",pressure);        
/*由于并行时流场会被分为几份,输出时有的区域的压力就会输出为零。pressure初始化为零?省略了?*/
}

DEFINE_PROFILE(mass_inlet_as_p,t,i)
{
     face_t f;
     real mass=0.5;
     if(pressure<=480000.)
     mass=mass+0.01;
     else if(pressure>480000.&&.pressure<520000.)/*根据监测点的压力调节入口质量流量*/
     mass=mass;
     else
     mass=mass-0.01;
     begin_f_loop(f,t)
     {
        F_PROFILE(f,t,i)=mass;
     }
     end_f_loop(f,t)
printf("\n pressure=%g\n",pressure);
/*这种写法输出不会崩溃?这里不是每个网格都输出?我记得DEFINE_PROFILE会循环每个网格,也就是每个网格应该都会执行printf啊?*/
}
5楼2013-11-15 17:55:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 材料专业调剂 +4 啦啦啦哭 2026-03-31 5/250 2026-04-01 08:42 by syjjj0321
[考研] 一志愿武理材料工程302调剂环化或化工 +12 Doleres 2026-03-31 13/650 2026-04-01 08:22 by Linda Hu
[考研] 288求调剂 一志愿哈工大 材料与化工 +20 洛神哥哥 2026-03-31 20/1000 2026-04-01 08:18 by JourneyLucky
[考研] 考研调剂 +7 Amber00 2026-03-31 7/350 2026-04-01 07:48 by JourneyLucky
[考研] 311(085601)求调剂 +12 liziyeyeye 2026-03-28 13/650 2026-04-01 00:34 by fmesaito
[考研] 339求调剂 +3 zjjkt 2026-03-31 3/150 2026-03-31 20:34 by 83503孙老师
[考研] 本2一志愿C9-333分,材料科学与工程,求调剂 +9 升升不降 2026-03-31 9/450 2026-03-31 18:01 by 无际的草原
[考研] 总分322求生物学/生化与分子/生物信息学相关调剂 +6 星沉uu 2026-03-26 7/350 2026-03-31 10:19 by GdShizy
[考研] 085601一志愿西北工业大学初试346 +4 085601初试346 2026-03-30 4/200 2026-03-31 07:47 by jp9609
[考研] 289求调剂 +16 新时代材料 2026-03-27 16/800 2026-03-30 19:04 by Wang200018
[考研] 332求调剂 +6 @MZB382400 2026-03-28 6/300 2026-03-30 16:57 by 无际的草原
[考研] 071010 323 分求调剂 +3 Baekzhy 2026-03-27 3/150 2026-03-30 14:24 by andresqi
[考研] 329求调剂 +8 星野? 2026-03-26 8/400 2026-03-30 13:41 by chemdavid
[考研] 329求调剂 +10 钮恩雪 2026-03-25 10/500 2026-03-29 13:32 by peike
[考研] 332求92调剂 +8 蕉蕉123 2026-03-28 8/400 2026-03-29 10:46 by 周梓丹
[考研] 340求调剂 +5 jhx777 2026-03-27 5/250 2026-03-28 04:18 by fmesaito
[考研] 315分求调剂 +7 26考研上岸版26 2026-03-26 7/350 2026-03-28 04:05 by fmesaito
[考研] 一志愿 西北大学 总分282 英语一62 求调剂 +7 18419759900 2026-03-25 8/400 2026-03-27 16:38 by 18419759900
[考研] 303求调剂 +6 蓝山月 2026-03-25 6/300 2026-03-25 22:47 by 418490947
[考研] 材料专硕 335 分求调剂 +4 拒绝冷暴力 2026-03-25 4/200 2026-03-25 18:45 by haxia
信息提示
请填处理意见