| 查看: 526 | 回复: 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; } } |
» 猜你喜欢
生物学学硕求调剂
已经有10人回复
上海电力大学材料防护与新材料重点实验室招收调剂研究生(材料、化学、电化学,环境)
已经有4人回复
材料学求调剂
已经有6人回复
303求调剂
已经有5人回复
一志愿武理085500机械专业总分300求调剂
已经有7人回复
考研调剂
已经有4人回复
281求调剂
已经有4人回复
0805 316求调剂
已经有6人回复
085601求调剂总分293英一数二
已经有3人回复
08工学调剂
已经有17人回复
2楼2022-06-09 15:04:43













回复此楼