有什么功能可以追踪颗粒在通过某一个截面时的速度?



  • 如下图,在用openfoam做一个颗粒通过湍流圆管的cfd,颗粒是不间断流入的。请问有什么办法可以提取出在一段时间内,比如从1s到2s内,所有颗粒通过截面P1, P2, P3时的速度数据嘛?
    0_1522138140910_捕获.JPG

    小弟菜鸟水平限制了现象。。实在不知道该如何实现这个功能,求大家赐教~先谢谢各位了


  • 网格教授 OpenFOAM教授 管理员

    It is possible

    1. 假定P1为平面,首先基于P1的纵坐标锁定网格单元标志cellI
    2. 如果粒子的网格单元标志p.cell()cellI重合,即p.cell() = cellI,输出速度p.U()

    你需要进入求解器植入代码。但是粒子移动的速度是瞬时的,可能这样提取出来的速度并不是特别准确。还要注意时间步长。



  • @李东岳 在 有什么功能可以追踪颗粒在通过某一个截面时的速度? 中说:

    It is possible

    1. 假定P1为平面,首先基于P1的纵坐标锁定网格单元标志cellI
    2. 如果粒子的网格单元标志p.cell()cellI重合,即p.cell() = cellI,输出速度p.U()

    你需要进入求解器植入代码。但是粒子移动的速度是瞬时的,可能这样提取出来的速度并不是特别准确。还要注意时间步长。

    谢谢回复,不过我还没试过自定义求解器,所以有点不太懂。请问你说的在求解器植入代码是指在我所用的solver源文件里修改添加之后wmake嘛?还是在controlDict里面添加的?


  • 网格教授 OpenFOAM教授 管理员

    在求解器植入代码是指在我所用的solver源文件里修改添加之后wmake嘛?

    是的,比如修改src/lagrangian/intermediate/parcel/KinematicParcel/template/KinematicParcel.C