| 查看: 3394 | 回复: 17 | ||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | ||
[求助]
好心人帮帮忙吧,为什么这个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; } 有点长,可是很简单。求求大家帮我看看吧 |
» 猜你喜欢
求助:我三月中下旬出站,青基依托单位怎么办?
已经有5人回复
论文终于录用啦!满足毕业条件了
已经有22人回复
不自信的我
已经有5人回复
磺酰氟产物,毕不了业了!
已经有4人回复
投稿Elsevier的杂志(返修),总是在选择OA和subscription界面被踢皮球
已经有8人回复
030301029
捐助贵宾 (正式写手)
- 应助: 76 (初中生)
- 金币: 2203.4
- 散金: 306
- 红花: 8
- 帖子: 890
- 在线: 122.3小时
- 虫号: 563419
- 注册: 2008-05-25
- 专业: 化学反应工程
15楼2012-05-28 09:09:19
2楼2012-05-18 01:37:51
3楼2012-05-18 07:10:00
4楼2012-05-18 07:28:00









回复此楼
