本算例来自《ANSYS Fluid Dynamics Verification Manual》中的VMFL009: Natural Convection in a Concentric Annulus

外环温度为327K,内环温度为373K

圆环内流体的物性参数为:

对于一般的流动来说,可以通过临界雷诺数的大小来判断流态。而对于自然对流来说,流动的驱动力为浮力,为了反映由于温差引起密度的变化,从而产生浮力驱动流体流动,在自然对流中我们经常使用瑞利数(Ra)来判断流态。

首先进行建模操作,任何建模软件均可,本算例在ICEM建模和进行网格划分,生成的网格如下:

接下来转入OpenFOAM的操作:

首先新建一个文件夹,名字任取,本算例中我将该文件夹命名为:Annulus

然后进入OpenFOAM的安装目录,将安装目录下的buoyantCavity算例(我的目录为/opt/openfoam5/tutorials/ heatTransfer/ buoyantSimpleFoam/ buoyantCavity)下的0文件夹、constant文件夹和system文件夹拷贝到Annulus文件夹下,然后删除system目录下的blockMeshDict文件,因为我们利用OpenFOAM的命令转化.msh文件为OpenFOAM能接受的网格文件,删除system目录下的sample文件,删除0文件夹下的alphat,epsilon, k,nut, omega这些文件,因为本算例不会用到这些文件。

然后将刚才导出的网格文件拷贝到Annulus文件夹下,在Annulus文件夹下打开终端,输入fluentMeshToFoam命令(由于从ICEM当中导出模型的时候就已经进行了缩放,所以这里不用缩放网格):

我们打开constant文件夹下的thermophysicalProperties文件,修改如下:

说明一下:

我们设置equationOfState关键字为incompressiblePerfectGas,因为本算例温度变化较大,而密度变化很小,可以将密度视为温度的函数,所以采用不可压理想气体可保证准确性的前提下,有更好的收敛性。然后我们通过在mixture下面增加

equationOfState

{

pRef          101325;

}

来指定参考压力为101325,因为针对不可压理想气体,其密度为:

更进一步详细的内容,请见《OpenFOAM User Guide》第七章第1节《Thermophysical models》

接着修改turbulenceProperties文件,此处我们将模拟类型设置为层流(laminar)

g文件可保持不变,因为这里我们也需要施加沿y负向的重力

然后对初始边界条件进行设置,下面转入0文件夹下进行操作:

修改0文件夹下U、p、p_rgh和T文件:

p文件当中的内容如下:

p_rgh文件当中的内容如下:

T文件当中的内容如下:

U文件当中的内容如下:

接着我们设置controlDict文件

fvSchemes文件修改如下:

说明一下:

这里修改div(phi,U)和div(phi,h)为线性迎风格式(linearUpwind)

fvSolution文件修改如下:

说明一下:

我们需要修改p_rgh的求解器,solver使用PCG,preconditioner使用DIC,如果使用仍然使用buoyantCavity算例下的GAMG求解器,计算将非常缓慢。

为了加快计算,我们采用分块并行计算

首先我们在system目录下添加一个decomposeParDict文件,文件的内容为(该文件可从溃坝算例下直接拷贝过来,我的位置为/opt/openfoam5/tutorials/multiphase/interFoam/laminar/damBreak/damBreak/system/decomposeParDict):

然后我们在终端中输入decomposePar进行分块:

回到算例文件夹下,打开终端,由于我安装了PyFoam来实时输出残差,所以在终端中输入pyFoamPlotRunner.py --clear mpirun -np 4 buoyantSimpleFoam -parallel开始计算:

等到计算结

将计算结果导入paraview里面进行处理

速度云图:

温度云图:

流线图

Tecplot处理结果:

速度云图:

温度云图:

计算结果与实验数据对比:

AA线上温度分布:

BB线上温度分布:

OpenFOAM——同心环中的自然对流的更多相关文章

  1. fluent在运行时改变重力方向方法总结

    Fluent版本:19.0(其他版本应该也适用) 这里我们用一个简单的算例(同心环中的自然对流)来说明 算例来自<ANSYS Fluid Dynamics Verification Manual ...

  2. OpenFOAM——高空腔内的湍流自然对流

    本算例来自<ANSYS Fluid Dynamics Verification Manual>中的VMFL052: Turbulent Natural Convection Inside ...

  3. OpenFOAM——运动和静止的同心圆柱之间的流动(库埃特流)

    本算例来自<ANSYS Fluid Dynamics Verification Manual>中的VMFL001: Flow Between Rotating and Stationary ...

  4. 【一起学OpenFOAM】03 OpenFOAM基本使用流程

    OpenFOAM初学者常常对于软件的使用流程感到很迷惑,与其他的具有GUI的CFD软件不同,OpenFOAM的所有操作均为基于文本操作,譬如说里面各种计算模型.计算参数.流程控制参数等,均为通过修改对 ...

  5. 【一起学OpenFOAM】系列由来

    1 为什么要学习OpenFOAM 掐指算起来,接触CFD也差不多有十个年头了,其间一直使用的商用CFD软件,有Fluent.CFX.StarCCM+等,这些商用软件各有其优缺点,都能较好的解决常规的工 ...

  6. 【一起学OpenFoam】02 软件准备

    "工欲善其事必先利其器",在利用OpenFoam解决我们的工程问题之前,首先要做的事情是搭建一个OpenFoam运行环境.很遗憾的是,OpenFoam的原生开发系统是Linux,因 ...

  7. OpenSUSE下编译安装OpenFoam

    在不是Ubuntu系统下安装OpenFoam,需要采用编译安装的方式.以下以OpenSuSE为例进行编译安装. 1 软件包准备 需要下载两个程序包: OpenFOAM-4.x-version-4.1. ...

  8. 【一起学OpenFoam】01 OpenFoam的优势

    CFD技术发展到今天,已经超过了大半个世纪了,已经涌现出非常多的CFD软件可供人们使用.通用商业CFD软件譬如Fluent.CFX.Star CCM+等在工业上得到了广泛的应用,另外一些专用的软件(如 ...

  9. OpenFOAM&Gmsh&CFD圆柱绕流(两个圆柱)

    问题: 圆柱绕流问题,模拟仿真有两个圆柱.一个源的流体变化情况. 解决步骤: 1.使用Gmsh画出网格,并保存cylindertwo.msh 2.以Cavity为基础创建新的Case:Cylinder ...

随机推荐

  1. 在Windows中运行Linux bash命令的几种方法

    如果你正在课程中正在学习 shell 脚本,那么需要使用 Linux 命令来练习命令和脚本. 你的学校实验室可能安装了 Linux,但是你自己没有安装了 Linux 的笔记本电脑,而是像其他人一样的 ...

  2. Fedora 30系统的升级方法

    Fedora 30 已经发布了.你可能希望将系统升级到最新版本的 Fedora.Fedora 工作站版本有图形化升级的方法.另外,Fedora 也提供了一个命令行方法,用于将 Fedora 29 升级 ...

  3. kali之使用sqlmap进行sql注入

    sqlmap简介 sqlmap支持五种不同的注入模式: 1.基于布尔的盲注,即可以根据返回页面判断条件真假的注入. 2.基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是 ...

  4. 图解HTTP(三)

    第七章 确保Web安全的HTTPS 1.HTTP的不足 通信使用明文(不加密),内容可能被监听 不验证通信方的身份,因此可能遭遇伪装 无法验证报文的完整性,所以有可能已遭篡改 2.通信加密 通信的加密 ...

  5. VUE基础回顾6

    1.ref ref可以直接访问元素,而不需要使用querySelector或者其他dom节点的原生方法. <div ref = "box"></div> 在 ...

  6. Jenkins系列之-—DevOps高效插件推荐【转】

    基于Jenkins及其插件生态实现自己的持续交付与DevOps平台. jenkins 插件官网 Blue Ocean Jenkins2.7以后可安装,是Jenkins的一种新视图,能够通过图形化的界面 ...

  7. Flink实战学习资料

    这份资料我已经看了一些,感觉挺不错的,在这里分享一下,有需要的可以购买学习.

  8. Mariadb/MySQL生产环境的my.cnf配置示例

    Mariadb/MySQL生产环境的my.cnf配置示例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.针对MySQL主程序mysqld定义参数[mysqld]  1>. ...

  9. Gerrit和Gitlab服务器的集成

    Gerrit和Gitlab服务器的集成 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.安装gitlab 详情请参考:https://www.cnblogs.com/yinzhe ...

  10. C++(四十九) — set、multiset 容器的基本操作

     1.set的基础知识 set的特性是:所有元素都会根据元素的键值自动排序,set的元素不像map那样可以同时拥有实值(value)和键值(key),set元素的键值就是实值,实值就是键值.set不允 ...