24小时热门版块排行榜    

查看: 4053  |  回复: 17

buwangchuxin

新虫 (小有名气)

[求助] 好心人帮帮忙吧,为什么这个UDF导入fluent以后,在边界条件处没有显示~~~ 已有1人参与

这是一个关于膜渗透的过程,利用UDF进行质量源项的添加。具体的程序贴出来了,问题是导入fluent以后,DEFINE_ADJUST定义的宏表现出来了,可是DEFINE_SOURCE 定义的函数在边界条件那里没有,我在fluent中设定了memory是2个,其他的就没有再改,是不是漏掉什么了?大家帮我看看吧~~

#include"udf.h"
#include"mem.h"
#define MW_N2 28.0
#define MW_C2H4 28
#define Q_N2 0
#define Q_C2H4 0.0000002435
#define P_outer  2160000
#define P_inner  120000
#define feed_domain 17
#define perment_domain 18

real molefrac( real frac, real molarone, real molartwo)
{
        real a = frac / molarone ;
        real b = (1-frac)/molartwo ;
        return a/(a+b) ;
}
DEFINE_ADJUST(filter_adjust, domain)
{
        cell_t c1, c0;
        Thread*  wall_thread;
        Thread*  wall_shadow_thread ;
        Thread*  t0;
        Thread*t1;
        face_t wall = 27;
        face_t wall_shadow = 2;
        real A[ND_ND] ;
        real x_C2H4_outer, x_N2_outer, x_C2H4_inner, x_N2_inner, At, flux_C2H4,  flux_N2, tot_flux ;
        int  memb_id = 17 ;
        wall_thread= Lookup_Thread(domain,wall);
         tot_flux = 0 ;
        begin_f_loop (wall, wall_thread)
        {
                c0  = F_C0(wall,wall_thread);
                wall_shadow_thread = THREAD_SHADOW(wall_thread);
                wall_shadow = F_SHADOW(wall,wall_thread);
                c1 = F_C0(wall_shadow,wall_shadow_thread);
                t0 = F_C0_THREAD(wall,wall_thread);
                t1 =THREAD_T0(wall_shadow_thread);
                x_C2H4_outer = molefrac(C_YI(c0, t0, 0), MW_C2H4, MW_N2);
                x_N2_outer = 1.0 - x_C2H4_outer;
                 x_C2H4_inner = molefrac(C_YI(c1, t1, 0), MW_C2H4, MW_N2);
                 x_N2_inner = 1.0 - x_C2H4_inner;
                F_AREA(A,wall, wall_thread);
                 At = NV_MAG(A);
                 flux_C2H4 = Q_C2H4 * ( x_C2H4_outer * P_outer - x_C2H4_inner * P_inner);
                 flux_N2 = Q_N2 * ( x_N2_outer * P_outer - x_N2_inner * P_inner);
                  tot_flux = tot_flux + MW_C2H4*flux_C2H4*At + MW_N2*flux_N2*At;
                C_UDMI(c0, t0, 0) = -(MW_C2H4*flux_C2H4)*At/C_VOLUME(c0,t0);
                C_UDMI(c1, t1, 1) =  (MW_C2H4*flux_C2H4)*At/C_VOLUME(c1,t1);
                C_UDMI(c0, t0, 2) = -(MW_N2*flux_N2)*At/C_VOLUME(c0,t0);
                C_UDMI(c1, t1, 3) =  (MW_N2*flux_N2)*At/C_VOLUME(c1,t1);
        }
        end_f_loop (wall,wall_thread)
}
DEFINE_SOURCE(gas1, c, t, dS, eqn)
{  
        Thread*  tf;
        int n ;
        real source=0.0;
        Domain *domain = Get_Domain(feed_domain);
        face_t wall = 27;
        Thread* wall_thread=Lookup_Thread(domain,wall);
        Thread* wall_shadow_thread = THREAD_SHADOW(wall_thread);
        c_face_loop( c, t, n)  
        {tf = C_FACE_THREAD(c,t,n);
                if(tf==wall_thread)
                        return source=C_UDMI(c, t, 0);       
        }
        return source;
}
DEFINE_SOURCE(gas2, c, t, dS, eqn)
{  
        Thread*  tf;
        int n ;
        real source=0.0;
        Domain *domain = Get_Domain(perment_domain);
        face_t wall = 27;
        Thread* wall_thread=Lookup_Thread(domain,wall);
        Thread* wall_shadow_thread = THREAD_SHADOW(wall_thread);
        c_face_loop( c, t, n)  
        {tf = C_FACE_THREAD(c,t,n);
                if(tf==wall_shadow_thread)
                        return source=C_UDMI(c,t,1);
        }
        return source;
}
有点长,可是很简单。求求大家帮我看看吧
回复此楼

» 猜你喜欢

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

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

47425804

木虫 (正式写手)



xiegangmai: 金币+1, 鼓励讨论交流! 2012-05-18 22:38:45
引用回帖:
3楼: Originally posted by 47425804 at 2012-05-18 07:10:00:
SOURCE是源项宏,不是用来给边界条件的。
边界条件的宏是DEFINE_PROFILE。

上面这条回复请无视,误解你的问题了,呵呵~~
你这儿是在一个膜两侧进行传质,我以前也写过一个类似问题的UDF,发在论坛上了。思路和你的不大一样,你也可以参考一下。
你的UDF,考虑下两个Domain给的是不是有问题,feed_domain和perment_domain,分别是17和18,就我的理解似乎不对。
4楼2012-05-18 07:28:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

030301029

捐助贵宾 (正式写手)

【答案】应助回帖

★ ★
buwangchuxin: 金币+2 2012-05-25 21:08:11
引用回帖:
4楼: Originally posted by 47425804 at 2012-05-18 07:28:00:
上面这条回复请无视,误解你的问题了,呵呵~~
你这儿是在一个膜两侧进行传质,我以前也写过一个类似问题的UDF,发在论坛上了。思路和你的不大一样,你也可以参考一下。
你的UDF,考虑下两个Domain给的是不是有问

feed_domain和perment_domain,分别是17和18,就我的理解似乎不对。
他什么东西,计算中居然有18个domain?可能是把domain和zone的number搞错了。
9楼2012-05-22 09:24:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

buwangchuxin

新虫 (小有名气)

10个金币可能太少了,可现在是我基本上全部,大家帮帮那我吧~~~
2楼2012-05-18 01:37:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

47425804

木虫 (正式写手)



xiegangmai: 金币+1, 谢谢参与! 2012-05-18 22:38:35
SOURCE是源项宏,不是用来给边界条件的。
边界条件的宏是DEFINE_PROFILE。
3楼2012-05-18 07:10:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kylafree

至尊木虫 (知名作家)

【答案】应助回帖


感谢参与,应助指数 +1
xiegangmai: 金币+1, 谢谢参与! 2012-05-18 22:38:55
DEFINE_SOURCE(gas1, c, t, dS, eqn)宏,你后面不是漏了个 ds[eqn]=***吗
5楼2012-05-18 09:29:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gyctju

金虫 (著名写手)

【答案】应助回帖

★ ★ ★ ★
感谢参与,应助指数 +1
xiegangmai: 金币+1, 谢谢应助! 2012-05-18 22:39:01
buwangchuxin: 金币+3, 多谢了 2012-05-21 19:29:45
lz的udf有很多不合理的地方,有些是语法上的逻辑问题,有些是计算效率问题。
6楼2012-05-18 10:28:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

buwangchuxin

新虫 (小有名气)

多些大家的帮忙,的确上面的程序存在着许多效率上的问题,我又改了一下,现在至少是能够导入的,谢谢大家了
7楼2012-05-21 19:28:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

030301029

捐助贵宾 (正式写手)

【答案】应助回帖


臭水沟: 金币+1, 谢谢交流~~ 2012-05-22 12:01:03
引用回帖:
5楼: Originally posted by kylafree at 2012-05-18 09:29:55:
DEFINE_SOURCE(gas1, c, t, dS, eqn)宏,你后面不是漏了个 ds=***吗

ds[eqn]=***
source里面,这个不一定需要。其目的是加快计算速度。
8楼2012-05-22 09:22:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

030301029

捐助贵宾 (正式写手)

【答案】应助回帖

★ ★ ★
臭水沟: 金币+1, 谢谢交流~~ 2012-05-22 12:01:13
buwangchuxin: 金币+2 2012-05-25 21:08:05
问题1.   也没有介绍,就一个udf让人看,太不诚心。

问题2.   很多语法错误,除了楼上提到的,还有不少。比如 “face_t wall = 27”。

问题3. “#define MW_C2H4 28”也不是标准的写法。
10楼2012-05-22 10:02:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 buwangchuxin 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[找工作] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 EZ67DG6CvcKL 2026-08-31 4/200 2026-09-01 06:06 by o3EMxHUAQDtS
[考博] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 EZ67DG6CvcKL 2026-08-31 5/250 2026-09-01 05:45 by o3EMxHUAQDtS
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 EZ67DG6CvcKL 2026-08-31 5/250 2026-09-01 05:43 by o3EMxHUAQDtS
[基金申请] 能否申诉? +7 echo8914667 2026-08-30 8/400 2026-08-31 17:00 by yihongxu
[文学芳草园] 梦想 +5 myrtle 2026-08-26 5/250 2026-08-31 14:40 by hahaboy
[基金申请] 基金不中,共勉 +12 eulota 2026-08-26 12/600 2026-08-31 08:42 by ZJTJZ
[基金申请] 麻烦专家们看看评委们的意见(F口面上) +6 gdd2018 2026-08-28 11/550 2026-08-30 08:58 by 超级无敌华子
[基金申请] 我就是申请一个面上项目而已,这评审意见是按照杰青的条件评的吧? +6 gouxfjh 2026-08-28 11/550 2026-08-30 07:57 by gouxfjh
[基金申请] 国自然面上复盘~欢迎讨论 (金币+15) +15 晴天加油 2026-08-26 16/800 2026-08-29 18:28 by symmetry
[基金申请] 国自然评审意见 +13 wangmingqi 2026-08-28 19/950 2026-08-29 10:22 by Poppy1104
[基金申请] 2026年叶企孙基金 +4 bud_bud 2026-08-27 7/350 2026-08-29 07:23 by foolishmani
[基金申请] 系统查不到 +11 董八千 2026-08-26 11/550 2026-08-28 18:06 by Leogzhya
[基金申请] 为什么 国际(地区)合作与交流项目 没有放榜? 10+3 majunge000 2026-08-26 11/550 2026-08-27 08:42 by 北京莱茵编辑
[基金申请] 我不理解! +15 Edward_pc 2026-08-26 23/1150 2026-08-26 20:34 by zzuzxg
[基金申请] 2026年8月25日国自然放榜前突然收到列入评审专家邮件,有关系吗? +25 木水思豆 2026-08-25 28/1400 2026-08-26 14:53 by draco1987
[基金申请] 出来了 +9 trojank 2026-08-26 9/450 2026-08-26 14:25 by 宝贝虫子
[基金申请] 为什么国自然不能直接公布 +4 bjdxyxy 2026-08-26 4/200 2026-08-26 13:12 by qingmu1201
[基金申请] 系统进不去 +4 yanglien 2026-08-26 5/250 2026-08-26 11:10 by wenfengw83
[基金申请] 项目信息和经费信息在系统里都可以看到了 +6 wittyboy 2026-08-26 14/700 2026-08-26 10:55 by wittyboy
[基金申请] 今天务委会开完了,明天出结果吗 +19 angus9576 2026-08-25 23/1150 2026-08-26 10:03 by zp519
信息提示
请填处理意见