jy00892758 发表于 2009-1-16 12:27

求助高手 有关UDF动网格中追踪粒子轨迹的问题

我现在正在做的一个模块,用 UDF控制整个模型等比例收缩扩张。在计算过程中某个时间从一个断面开始放入一定量粒子来考察粒子运动轨迹。之前做刚体模型的考察时,没有出现任何问题,动网格的就总是计算过程中不能追踪到任何粒子。动网格中追踪粒子有什么特殊的设定么,在线等待高手解疑。
PS. UDF文件在 compile的时候也没有出现问题。
附上所写的 UDF文件
/**********************************************************
node motion based on simple beam deflection equation
compiled UDF
**********************************************************/
#include "udf.h"

DEFINE_GRID_MOTION(compliant, domain, dt, time, dtime)
{
      Thread *tf=DT_THREAD(dt);
      face_t f;
      real TS;
      Node *node_p;
      int n;

      TS = (int)((time-floor(time/5.0)*5.0)*1000.0/5.0+0.5);

                        begin_f_loop(f,tf)
                        {
                              f_node_loop(f,tf,n)
                              {
                                        node_p = F_NODE(f,tf,n);
                              
                                        if(NODE_POS_NEED_UPDATE(node_p))
                                        {
                                                NODE_POS_UPDATED(node_p);
                                       
                                                NODE_X(node_p) = NODE_X(node_p)*pow(1.25-0.25*cos(2.0*M_PI*0.001*TS),1.0/3.0)/pow(1.25-0.25*cos(2.0*M_PI*0.001*(TS-1.0)),1.0/3.0);
                                                NODE_Y(node_p) = NODE_Y(node_p)*pow(1.25-0.25*cos(2.0*M_PI*0.001*TS),1.0/3.0)/pow(1.25-0.25*cos(2.0*M_PI*0.001*(TS-1.0)),1.0/3.0);
                                                NODE_Z(node_p) = NODE_Z(node_p)*pow(1.25-0.25*cos(2.0*M_PI*0.001*TS),1.0/3.0)/pow(1.25-0.25*cos(2.0*M_PI*0.001*(TS-1.0)),1.0/3.0);
                                        }
                              }
                        }
                        end_f_loop(f,tf);

}
页: [1]
查看完整版本: 求助高手 有关UDF动网格中追踪粒子轨迹的问题