| 1 | 1/1 | 返回列表 |
| 查看: 2347 | 回復(fù): 0 | ||
mydearkaren鐵蟲 (小有名氣)
|
[求助]
離散相邊界條件UDF求助
|
|
參考幫助文檔寫了一個(gè)壁面碰撞的UDF,可以加載到FLUENT中,但是似乎完全沒有起到作用。 我想實(shí)現(xiàn)的功能是這樣的,當(dāng)顆粒速度大于給定值時(shí),顆粒與壁面碰撞后彈開(可能有滑移,可能無滑移),否則顆粒被壁面捕獲(trap)。 加載UDF程序后,不論怎么調(diào)整給定值,顆?偸菑楅_,從未被捕獲。甚至我把整個(gè)彈開部分的程序都刪掉,只留下Trap_Particle(p)結(jié)果還是一樣。 不知道哪里出了問題,請(qǐng)大家?guī)兔纯囱絶 程序如下: /*reflect boundary condition for inert particles*/ #include "udf.h" DEFINE_DPM_BC(bc_reflect,p,t,f,f_normal,dim) { real alpha;/*angle of particle path with face normal*/ real vn=0.,vt=0.,u=0.3,ud=0.15; real nor_coeff=0.8,tan_coeff=0.3; real normal[3]; real x[2]; real NV_VEX(x); int i,idim=dim; /*dim is always 2 in 2D compilation. Need special treatment for 2D axisymmetric and swirl flows*/ if (rp_axi_swirl) { real R=sqrt(P_POS(p)[1]*P_POS(p)[1]+P_POS(p)[2]*P_POS(p)[2]); if (R>1.e-20) { /*二維法向量轉(zhuǎn)換為三維法向量*/ idim=3; normal[0]=f_normal[0]; normal[1]=(f_normal[1]*P_POS(p)[1])/R; normal[2]=(f_normal[1]*P_POS(p)[2])/R; } else { for (i=0;i<idim;i++) normal=f_normal; } } if(NV_MAG(P_VEL(p))>0.02) { Reflect_Particle(p,f_normal,dim,f,t,t,f); if(p->type==DPM_TYPE_INERT) { alpha=M_PI/2-acos( MAX(-1,MIN(1,NV_DOT(normal,P_VEL(p))/MAX(NV_MAG(P_VEL(p)),DPM_SMALL)))); /*M_PI是一個(gè)宏定義,表示pi,3.14159265*/ /*acos反余弦函數(shù)*/ /*NV_DOT(x,u)在3D中等同于x[0]*u[0]+x[1]*u[1]+x[2]*u[2],2D中為x[0]*u[0]+x[1]*u[1]*/ /*NV_MAG(x)求模運(yùn)算。相當(dāng)于計(jì)算sqrt(x[0]*u[0]+x[1]*u[1]+x[2]*u[2])*/ if((NNULLP(t))&&(THREAD_TYPE(t)==THREAD_F_WALL)) /*NNULLP(t)是什么?*/ F_CENTROID(x,f,t); /*F_CENTROID是找到面心坐標(biāo),儲(chǔ)存在x中,2D中即face整個(gè)面的坐標(biāo)*/ /*calculate the normal component, rescale its magnitude by the coefficient of restitution and substract the change*/ /*compute normal velocity*/ for(i=0;i<idim;i++) vn+=P_VEL(p)*normal; /*substract off normal velocity.*/ for(i=0;i<idim;i++) P_VEL(p)-=vn*normal; vt=NV_MAG(P_VEL(p)); if (vt>7/2*u*(1+nor_coeff)*vn) { /*顆粒和壁面有滑移碰撞*/ for (i=0;i<idim;i++) P_VEL(p)-=ud*(1+nor_coeff)*vn*P_VEL(p)/vt; vn=-1*nor_coeff*vn; } /*顆粒和壁面無滑移碰撞*/ else { for (i=0;i<idim;i++) P_VEL(p)*=5/7; vn=-1*nor_coeff*vn; } for (i=0;i<idim;i++) P_VEL(p)+=vn*normal; /*store new velocity in P_VEL0 of particle*/ for(i=0;i<idim;i++) P_VEL0(p)=P_VEL(p); return PATH_ACTIVE; } } else Trap_Particle(p); } |
找到一些相關(guān)的精華帖子,希望有用哦~
| 1 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 一志愿武理材料305分求調(diào)劑 +4 | 想上岸的鯉魚 2026-03-18 | 5/250 |
|
|---|---|---|---|---|
|
[考研] 085600材料與化工 +5 | 安全上岸! 2026-03-16 | 5/250 |
|
|
[考研] 08工科 320總分 求調(diào)劑 +5 | 梨花珞晚風(fēng) 2026-03-17 | 5/250 |
|
|
[考研] 085601專碩,總分342求調(diào)劑,地區(qū)不限 +5 | share_joy 2026-03-16 | 5/250 |
|
|
[考研] 311求調(diào)劑 +11 | 冬十三 2026-03-15 | 12/600 |
|
|
[考研] 材料專碩306英一數(shù)二 +10 | z1z2z3879 2026-03-16 | 13/650 |
|
|
[考研] 312求調(diào)劑 +8 | 陌宸希 2026-03-16 | 9/450 |
|
|
[考研] 303求調(diào)劑 +4 | 睿08 2026-03-17 | 6/300 |
|
|
[考研] 材料,紡織,生物(0856、0710),化學(xué)招生啦 +3 | Eember. 2026-03-17 | 9/450 |
|
|
[考研] 307求調(diào)劑 +3 | 冷笙123 2026-03-17 | 3/150 |
|
|
[考研] 278求調(diào)劑 +5 | 煙火先于春 2026-03-17 | 5/250 |
|
|
[考研] 268求調(diào)劑 +8 | 一定有學(xué)上- 2026-03-14 | 9/450 |
|
|
[考研] 26考研求調(diào)劑 +6 | 丶宏Sir 2026-03-13 | 6/300 |
|
|
[考研] 考研調(diào)劑 +3 | 淇ya_~ 2026-03-17 | 5/250 |
|
|
[考研] 318求調(diào)劑 +3 | Yanyali 2026-03-15 | 3/150 |
|
|
[考研] 0703 物理化學(xué)調(diào)劑 +3 | 我可以上岸的對(duì)?/a> 2026-03-13 | 5/250 |
|
|
[考研] 26調(diào)劑/材料科學(xué)與工程/總分295/求收留 +9 | 2026調(diào)劑俠 2026-03-12 | 9/450 |
|
|
[考研] 考研調(diào)劑 +4 | 芬達(dá)46 2026-03-12 | 4/200 |
|
|
[考研] 283求調(diào)劑,材料、化工皆可 +8 | 蘇打水7777 2026-03-11 | 10/500 |
|
|
[考研] 321求調(diào)劑(食品/專碩) +3 | xc321 2026-03-12 | 6/300 |
|