OpenFOAM——同心环中的自然对流
本算例来自《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——同心环中的自然对流的更多相关文章
- fluent在运行时改变重力方向方法总结
Fluent版本:19.0(其他版本应该也适用) 这里我们用一个简单的算例(同心环中的自然对流)来说明 算例来自<ANSYS Fluid Dynamics Verification Manual ...
- OpenFOAM——高空腔内的湍流自然对流
本算例来自<ANSYS Fluid Dynamics Verification Manual>中的VMFL052: Turbulent Natural Convection Inside ...
- OpenFOAM——运动和静止的同心圆柱之间的流动(库埃特流)
本算例来自<ANSYS Fluid Dynamics Verification Manual>中的VMFL001: Flow Between Rotating and Stationary ...
- 【一起学OpenFOAM】03 OpenFOAM基本使用流程
OpenFOAM初学者常常对于软件的使用流程感到很迷惑,与其他的具有GUI的CFD软件不同,OpenFOAM的所有操作均为基于文本操作,譬如说里面各种计算模型.计算参数.流程控制参数等,均为通过修改对 ...
- 【一起学OpenFOAM】系列由来
1 为什么要学习OpenFOAM 掐指算起来,接触CFD也差不多有十个年头了,其间一直使用的商用CFD软件,有Fluent.CFX.StarCCM+等,这些商用软件各有其优缺点,都能较好的解决常规的工 ...
- 【一起学OpenFoam】02 软件准备
"工欲善其事必先利其器",在利用OpenFoam解决我们的工程问题之前,首先要做的事情是搭建一个OpenFoam运行环境.很遗憾的是,OpenFoam的原生开发系统是Linux,因 ...
- OpenSUSE下编译安装OpenFoam
在不是Ubuntu系统下安装OpenFoam,需要采用编译安装的方式.以下以OpenSuSE为例进行编译安装. 1 软件包准备 需要下载两个程序包: OpenFOAM-4.x-version-4.1. ...
- 【一起学OpenFoam】01 OpenFoam的优势
CFD技术发展到今天,已经超过了大半个世纪了,已经涌现出非常多的CFD软件可供人们使用.通用商业CFD软件譬如Fluent.CFX.Star CCM+等在工业上得到了广泛的应用,另外一些专用的软件(如 ...
- OpenFOAM&Gmsh&CFD圆柱绕流(两个圆柱)
问题: 圆柱绕流问题,模拟仿真有两个圆柱.一个源的流体变化情况. 解决步骤: 1.使用Gmsh画出网格,并保存cylindertwo.msh 2.以Cavity为基础创建新的Case:Cylinder ...
随机推荐
- 30个关于Shell脚本的经典案例(下)
本文目录 21.从FTP服务器下载文件 22.连续输入5个100以内的数字,统计和.最小和最大 23.将结果分别赋值给变量 24.批量修改文件名 25.统计当前目录中以.html结尾的文件总大 26. ...
- Linux系统怎么分区
linux分区方法,不同的人有不同的方法,反正没有统一的方法.在分区方面,我觉得根据自己的实际情况来分是最好的.玩linux也有好几年了,下面说一下,我在分区方面的一些经验. 一,个人用 如果是个人用 ...
- 【RAC】 RAC For W2K8R2 安装--RDBMS软件的安装(五)
[RAC] RAC For W2K8R2 安装--RDBMS软件的安装(五) 一.1 BLOG文档结构图 一.2 前言部分 一.2.1 导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也 ...
- RocketMQ在CentOS7上安装
需要先以下组件 1.64bit OS, Linux/Unix/Mac is recommended;2.64bit JDK 1.8+; 安装了 Java JDK 就可以运行 RocketMQ 了 3. ...
- Docker搭建Portainer
1.介绍 Docker 图形化管理提供了很多工具,有Portainer.Docker UI.Shipyard等等,本文主要介绍Portainer. Portainer是一个开源.轻量级Docker管理 ...
- cadvisor应用
cadvisor主页:https://github.com/google/cadvisor 容器主页:https://hub.docker.com/r/google/cadvisor cAdvisor ...
- meibu ddns update command
http://main.meibu.com/ip/login.asp?name=[USERNAME]&pwd=[PASSWORD]
- Eclipse经常出现未响应问题
修改eclipse.ini文件 -startupplugins/org.eclipse.equinox.launcher_1.5.0.v20180512-1130.jar--launcher.libr ...
- Linux-网络RAID技术DRBD
DRBD简介 官方文档 DRBD的全称为:Distributed Replicated Block Device(DRBD)分布式块设备复制,DRBD是由内核模块和相关脚本构成,用以构建高可用的集群. ...
- 使用Arduino和SD卡模块记录数据并导出到Excel
在本篇文章中,我们将学习如何基于Arduino开发板使用一个SD卡模块.同时结合DS3231实时时钟模块,我们将制作一个数据记录仪的示例,在示例中,我们将温度传感器的数据存储到SD卡中,并将这些数据导 ...