Skip to content
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
CFD中文网

CFD中文网

  1. CFD中文网
  2. Fluent
  3. fluent如何输出颗粒对壁面的碰撞速度和角度。

fluent如何输出颗粒对壁面的碰撞速度和角度。

已定时 已固定 已锁定 已移动 Fluent
2 帖子 2 发布者 4.1k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • Y 离线
    Y 离线
    yuyexingmao
    写于 最后由 李东岳 编辑
    #1

    我用fluent模拟气固管流冲蚀,得到了壁面的冲蚀速率:
    1、问题:fluent导出壁面数据后,缺乏颗粒对壁面的平均碰撞速度(轴向、径向、切向)和平均角度(入射角、反射角)这五个变量。 一个壁面位置受多次颗粒撞击,速度和角度有多个,需要统计一下平均。
    2、UDF刚接触,按照模板修改了一点点,不知道怎么继续写下去,求高人指路!
    #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.;
      real nor_coeff = 0.;
      real tan_coeff = 0;
      real normal[3];
      int i, idim = dim;
      real NV_VEC(x);
    
    
      for (i=0; i<idim; i++)
          normal[i] = f_normal[i];
    
      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))));
          if ((NNULLP(t)) && (THREAD_TYPE(t) == THREAD_F_WALL))
            F_CENTROID(x,f,t);
          
           /* 定义壁面反射系数 */
          nor_coeff=0.993-0.0307*alpha+4.75e-4*alpha*alpha-2.61e-6*alpha*alpha*alpha
          tan_coeff=0.998-0.029*alpha+6.43e-4*alpha*alpha-3.56e-6*alpha*alpha*alpha
    
          /* calculate the normal component, rescale its magnitude by 
             the coefficient of restitution and subtract the change */
    
          /* Compute normal velocity. */
          for(i=0; i<idim; i++)
            vn += P_VEL(p)[i]*normal[i];
    
          /* Subtract off normal velocity. */
          for(i=0; i<idim; i++)
            P_VEL(p)[i] -= vn*normal[i];
    
          /* Apply tangential coefficient of restitution. */
          for(i=0; i<idim; i++)
            P_VEL(p)[i] *= tan_coeff;
    
          /* Add reflected normal velocity. */
          for(i=0; i<idim; i++)
            P_VEL(p)[i] -= nor_coeff*vn*normal[i];  
    
          /* Store new velocity in P_VEL0 of particle */
          for(i=0; i<idim; i++)
            P_VEL0(p)[i] = P_VEL(p)[i];
          
          return PATH_ACTIVE;
        }
    
      return PATH_ABORT;
    }
    
    1 条回复 最后回复
  • L 离线
    L 离线
    l.j刘侃
    写于 最后由 编辑
    #2

    这个问题比较复杂,有兴趣的话,可以加QQ18743641聊一下。
    轴向,径向,切向还是按照解析几何的方法换算一下就行,只是坐标系的切换而已。这个宏在每个颗粒的轨迹可能与壁面碰撞的时候都会运算一次,所以很容易输出所有的碰撞相关的物理量,唯一的缺陷是这个碰撞是不计时间,只考虑碰撞那一刻的。由于fluent内部trap算法保密,所以很多问题也是很难处理,你不得不自己编个碰撞算法。

    1 条回复 最后回复

  • 登录

  • 登录或注册以进行搜索。
  • 第一个帖子
    最后一个帖子
0
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]