interPlicFoam
-
@litong189456 这些都是极小值或者非常接近1的单元造成的,可以在控制字典里将
snapTol
数值调大,默认为0
,可以试试1e-5
之类的极小值把这些单元强制置零或者置1。 -
- 代码搞完了,还在测试,最近很忙,每天下班只想睡觉。
- 几何类VOF方法:
a. IsoAdvector第一次提出是在2016年,我在OpenFOAM基础上开发PLIC-VOF始于14年下半年,不过开发进度很慢,那时刚开始学习OpenFOAM。有一个完成度很高的2D版本,大家有兴趣的话我会把这个代码整理整理,供大佬们批评指正,几何运算是基于CGAL库的;
b. PLIC和IsoAdvector是两类不同的几何重构方法,具体区别在于如何表征混合单元内的interface。PLIC使用平面,IsoAdvector使用等值面。确定interface位置时PLIC求解平面方程$\vec{n} \vec{X} + D = 0$里的距离$D$,IsoAdvector求解等值面阈值。界面重构精度应该差不多,求解效率还没比较,现在很难说谁高谁低;
c. 我们求解器的公开版本advection部分直接借用了isoAdvection的,做了一些改动适配PLIC方法。主要是因为懒,不想单独开发advection部分了,不过这也符合开源精神吧,只做自己需要做和感兴趣的部分;
d. 目前PLIC方法的一个研究热点是多面体任意单元里interface的快速定位技术。这方面研究主要集中在卡塔赫纳理工大学的Dr. Lopez [López, Joaquín, et al. "A new volume conservation enforcement method for PLIC reconstruction in general convex grids." Journal of Computational Physics 316 (2016): 338-359] (他们去年开发了适配凹多面体的快速算法,不过我感觉这个学术意义更大一些,基本上网格生成都是避免凹单元的出现的),LANL的Dr. Diot [Diot, Steven, and Marianne M. François. "An interface reconstruction method based on an analytical formula for 3D arbitrary convex cells." Journal of Computational Physics 305 (2016): 63-74] 和Dr. Shashkov [Dyadechko, Vadim, and Mikhail Shashkov. "Moment-of-fluid interface reconstruction." Los Alamos Report LA-UR-05-7571 (2005)] (MOF方法本质还是PLIC方法,不过在$\vec{n} \vec{X} + D = 0$的求解上都引入了全新概念)。 - 会有算例教程,但是事情多,我尽量快一些,但是这些事只有我一个人在弄,所以会比较慢。
PS:我不大名鼎鼎哦,只是小卒,只想靠着CFD混口饭吃,学界和业界都太他妈卷了