找回密码
 注册
查看: 905|回复: 2

各位,请问两个udf中参量怎么联系一起

[复制链接]
发表于 2018-3-9 19:13:24 | 显示全部楼层 |阅读模式
5金钱
static real v_prev=0.0;
DEFINE_CG_MOTION(piston,dt,vel,omega,time,dtime)
{
     Thread *t;
  face_t f;
  real NV_VEC(A);
  real force,dv;
  /*重置刚体速度*/
  NV_S(vel,=,0.0);
  nv_s(omega,=,0.0);
  if(!Data_Valid_p())
     return;
  /*获得这个运动所定义的线程指针*/
  t=DT_THREAD(dt);
  /*通过循环刚体表面上的所有面来计算整个刚体上的压力和*/
  force=0.0;
  begin_f_loop(f,t)
       {
       F_AREA(A,f,t);
    force+=F_P(f,t)*NV_MAG(A);
     }
   end_f_loop(f,t)
   /*计算速度的改变量,例如:dv=F*dt/mass 速度场用显示的欧拉方程来更新*/
   dv=dtime*force/50.0;
   v_prev+=dv;
   Message("time=%f,x_vel=%f,force %f\n",time,v_prev,force);
   /*设置x分量速度*、
   vel[0]=v_prev;
}
我在两个面上分别用CG_MOTION求得两个force,怎么样才能实现dv=dtime*(force1-force2)/50.0; 呢?

 楼主| 发表于 2018-3-10 10:03:24 | 显示全部楼层
有没有大神帮忙解答下,不胜感激
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表