(插画ID:77701512)


一直都在说DNSTFM等的模拟方法,但一直搞不清那么多方法之间的树状图关系——直到看到了鲁老师和许飞同学的聊天截图和刘老师对 Fai 的论文修改意见。

DNS的定义

百度百科说直接数值模拟不需要对湍流建立模型,对于流动的控制方程直接采用数值计算求解。而且某位老师也说若要给DNS下一个定义的话,可以从单相湍流出发。所以,准确地说,DNS应该是和LESRANS等模拟方法平行的,指的是不需要额外的方程来封闭。而且需要指出的是这是一种对流体的模拟方法,不能和 Eulerian-EulerianEulerian-lagrangian相提并论,这不严谨。因为后者是对流体-颗粒体系的描述,可以用DNS-DEM等方式提起。多孔介质模型也是由DNS实现的,因为至今研究的体系都是流速较慢的层流体系,尚未涉及对涡、湍动程度的近似。

流固耦合方法

而我们平时谈起的IBMTFM或者贴体网格(body-fitted mesh),这其实都是在DNS框架下的,因为网格都比颗粒小(这里存疑)。以上谈起的三种应该说是流固耦合方法,贴体网格具体描绘了流体与颗粒或者固体的接触面,因此可以直接采用no-slip的边界条件;而TFM中没有明确的流固界面,它需要额外的流固相间曳力模型以及固应力模型(这个是在别人博士论文答辩中看到的,不清楚是啥)来封闭控制方程;IBM则是通过建模的方式,利用力源项把固体对流体的作用加入流体的动量方程中,因此可以在正交网格下使用,解决了复杂网格生成难的问题。因为在IBM中描述的固体轮廓实际并不存在,因此也就不存在贴体网格中的no-slip条件,需要额外添加力源项。

流固体系作用力

一般来说,流固之间的作用力可分为体积力(body force)相间作用力(表面力)和颗粒之间的接触力。体积力,最常见的有重力磁场力等,这些力对周围颗粒和流体没关系,依靠的是场对它的力。而相间作用力是最多的,比如曳力Magnus力升力Saffman力Basset力虚拟质量力等,都和颗粒的表面积有关系,关联了流体和固体颗粒之间的作用,力的定义详见 FLUENT 帮助文档的解释。第三个则是颗粒间的接触力,当然还有颗粒与容器之间的作用力,根据作用的长短,可分为长程力真·接触力。比如初中老师就讲过的范德华力库仑力;而颗粒碰撞的有什么Hertz模型,就是相当经典的了,就连我不做 DEM 的同学也知道,HAHA。
大概分类可以这么分,但实际使用时各种商业软件或者模拟方法都是乱来的,比如双流体模型会涉及压力、升力、曳力等各种详细的力,但在浸入边界法中,只会讲压力、惯性力和额外的力源项,而曳力和升力是根据压力绕固体表面积分出来的,并不参与 N-S 方程的计算,搞得我头大,分类分不清。
所以,到底曳力的定义是什么?为什么有些动量方程需要添加有些不需要 :huaji:


喜欢努力的雪集。