格子玻尔兹曼机(Lattice Boltzmann Method)系列4:LBM实例之方腔驱动流

问题描述

在一个正方形的空腔中,顶盖以U的速度被突然启动,导致产生了一个在边角处会有小的漩涡出现的流场。
在这里插入图片描述
左、右、下边界使用了回弹性边界条件,而上边界使用了上一篇文章中的Von Neumann速度边界条件。

下面贴出来具体的代码,环境是:VS2013 + OpenMP +OpenGL。如果使用VS的话,不用另外下载任何东西,只需要简单的几步设置就可以配置出OpenMP,具体打开开关的步骤直接百度就可以找到。但是如果是Codeblocks这样的编译器的话,是需要另外下载相应的包了,步骤挺复杂的。

OpenGL是一个用于图形显示的嵌入式库,计算机图形学方向基本都是在用OpenGL,因为它足够底层。其他的一些库虽然也能做到类似的效果,但是一般就更多地用于游戏开发等情况了。OpenGL的配置在VS下也是挺简单的,需要下载几个包,具体也是可以百度。有了OpenGL,在调试代码的时候就不需要每走几步就跳出去用Tecplot来进行可视化了,用于调试代码也是一个很好的选择。

当然选择OpenGL框架的一个主要目的是将我们生成的结果“点云”使用Marching Cube算法在多相流体领域进行相应的界面生成,配上渲染、光照等模型,可以得到一个比较好看和自由的可视化图形。

之前在这里贴的算法的C++实现我删掉了,有兴趣的话可以直接去这里找taichi实现的版本:https://github.com/GeCao/taichi-LBM

同时也很希望有缘能看到这篇文章的同学也可以尝试用taichi来写你们的代码,方便易上手,taichi社区除了图形和游戏领域以外,也同样非常欢迎CFD类代码的贡献~

下面进行结果展示:
结果
从上到下分别是雷诺数Re=100, 400, 1000的四种情况,左边的彩色图为程序的模拟结果,右边的线图是文献:S.L. Hou, Q. Zou. Simulation of cavity flow by the lattice Boltzmann method. J.C.P. 1995.中的结果。

方腔驱动流的模拟还是十分简单的,接下来会写一写Shan-Chen多相流模型和HCZ多相流模型。

  • 7
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值