| 查看: 559 | 回复: 1 | ||
| 【悬赏金币】回答本帖问题,作者dwademvp将赠送您 20 个金币 | ||
[求助]
求大佬帮我看看这个udf
|
||
|
计算壁面条件的,这个udf是仿照帮助文档写的,能加载,但碰撞的粒子都abort了,无反弹的粒子,想知道哪里出问题了。 #include "udf.h" DEFINE_DPM_BC(my_dpm_bc,p,t,f,f_nomal,dim) { real vn=0.; real alpha; real vc; real vn1; real nor_coeff=0.8; real tan_coeff=0.3; real nomal[3]; real diam; real NV_VEC(x); diam=P_DIAM(p); int i,idim=dim; for(i=0;i<idim;i++) nomal=f_nomal; for(i=0;i<idim;i++) vn+=p->state.V*nomal; vn1=fabs(vn); vc=pow((2*0.00000018/diam/45.3/45.3*pow((45.3+pow(vn1,0.718)),2)),1.43); if(vn1<vc) { return PATH_ABORT; } else if(p->type==DPM_TYPE_INERT) { alpha=M_PI/2.-acos(MAX(-1.,MIN(1.,NV_DOT(nomal,p->state.V)/ MAX(NV_MAG(p->state.V),DPM_SMALL)))); if((NNULLP(t))&&(THREAD_TYPE(t)==THREAD_F_WALL)) F_CENTROID(x,f,t); for(i=0;i<idim;i++) p->state.V-=vn*nomal; for(i=0;i<idim;i++) p->state.V*=tan_coeff; for(i=0;i<idim;i++) p->state.V-=nor_coeff*vn*nomal; for(i=0;i<idim;i++) p->state0.V= p->state.V; return PATH_ACTIVE; } } |
» 猜你喜欢
售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急
已经有8人回复
售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急
已经有9人回复
售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急
已经有10人回复
售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急
已经有12人回复
售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急
已经有13人回复
售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急
已经有16人回复
售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急
已经有14人回复
售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急
已经有16人回复
售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急
已经有20人回复
售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急
已经有20人回复
2楼2022-06-09 15:04:43










回复此楼
50