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. OpenFOAM
  3. VOF方法中如何准确计算自由表面曲率?

VOF方法中如何准确计算自由表面曲率?

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

    各位大神,我在做Ghost Fluid Method时遇到一个棘手的问题:间断条件中自由表面曲率的计算。我选择的验证算例是Capillary wave[1]。

    目前尝试了几种方法:
    (1) interfoam中使用的是CSF模型,计算曲率采用如下公式:
    $\vec{n} = \nabla \alpha / | \nabla \alpha| $ (1)
    $\kappa = - \nabla\cdot\vec{n}$ (2)
    这个方法在函数calculateK()里面,可直接调用。计算结果在32$\times$32网格上能得到光滑的结果,但不对。在64$\times$64网格上出现了数值振荡。

    (2) 尝试的另一种方法是采用isoAdvector,因为这个方法中自由表面法向量$\vec{n}$是根据subcell system计算的,理论上应该更准。最后曲率的计算公式还是上面的公式(2),但是结果也不对,还是会出现振荡,并且难以做到收敛。

    (3) 另外,我注意到有文章讨论VOF方法中的自由表面曲率计算问题[2]。我尝试了基于RDF的方法进行计算(isoAdvector中可采用RDF重构自由表面并计算自由表面法向量[3]),但结果也不理想。

    我查了相关文献,发现将表面张力加入间断条件的程序都是采用levelset法捕捉自由表面(例如参考文献[1]),其自由表面曲率可由levetset函数直接计算。但在基于VOF方法中的模型中,很少见到间断条件中包含表面张力和粘性项,都是只有一个压力的间断条件。

    因此我想请教一下各位大神,有没有什么在VOF方面中准确计算自由表面曲率的好方法?或者成功的经验?非常感谢!

    [1] Haghshenas M, Wilson J A, Kumar R. Algebraic coupled level set-volume of fluid method for surface tension dominant two-phase flows[J]. International Journal of Multiphase Flow, 2017, 90:13-28.
    [2] Cummins S J, Francois M M, Kothe D B. Estimating curvature from volume fractions[J]. Computers & Structures, 2005, 83(6/7):425-434.
    [3] Hs A, Jr B. Accurate and efficient surface reconstruction from volume fraction data on general meshes[J]. Journal of Computational Physics, 2019, 383:1-23.

    1 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    写于 最后由 编辑
    #2

    这个方法在函数calculateK()里面,可直接调用。计算结果在3232网格上能得到光滑的结果,但不对。在6464网格上出现了数值振荡。

    VOF结果在网格比较细的时候结果不对?这个结论很有挑战性

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    C 2 条回复 最后回复
  • C 离线
    C 离线
    CFDngu
    在 中回复了 李东岳 最后由 编辑
    #3

    @李东岳 李老师,我在间断条件中加入了表面张力项$\sigma\kappa$,其中$\kappa$是用calculateK算的,结果确实不对。但这属于GFM方法,和CSF模型不同。明天我用interfoam算一下这个算例,看看结果如何。

    1 条回复 最后回复
  • C 离线
    C 离线
    CFDngu
    在 中回复了 李东岳 最后由 编辑
    #4

    @李东岳 在 VOF方法中如何准确计算自由表面曲率? 中说:

    这个方法在函数calculateK()里面,可直接调用。计算结果在3232网格上能得到光滑的结果,但不对。在6464网格上出现了数值振荡。

    VOF结果在网格比较细的时候结果不对?这个结论很有挑战性

    李老师,我用interIsoFoam算了一下,还是不对。在32$\times$32的网格上可以得到光滑的结果,但是和解析解不一样;在64$\times$64的网格上结果出现了振荡。interfoam也跑了一下,结果和interisofoam不一样,也不对。。。(这个算例的设置参照和解析解在主贴的参考文献[1]中)

    算例在这里,大家有兴趣可以跑一下。要是算例设置有问题也可以指出来。另外,我是在v2006环境下跑的(这个链接可能需要注册坚果云,我没找到其他的上传方法:xinlei: )
    capillaryWave

    1 条回复 最后回复

  • 登录

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