本算例来自《ANSYS Fluid Dynamics Verification Manual》中的VMFL052: Turbulent Natural Convection Inside a Tall Cavity

顶部和底部壁面为绝热边界,左侧壁面(COLD_WALL)为288.25K,右侧壁面为(HOT_WALL)为   307.85K

流体的物性参数为:

密度:1.17kg/m3

粘度系数:1.81×10-5N·s/m2

运动粘度:1.54×10-5 m2/s

定压比热容:1005J/(kg·K)

导热系数:0.0261W/(m·K)

普朗特数:0.705

针对自然对流的方法一般有三种:

①布辛尼斯克(Boussinesq)近似

②不可压理想气体

③密度线性差分方法

本算例采用布辛尼斯克(Boussinesq)近似,布辛尼斯克假设中密度作为常数考虑,浮力作为源项添加,但仅适用于小温差,密度变化小于20%的情况,一般壁面与流体的温差超过200K,布辛尼斯克近似就不适用了。

首先进行建模操作,任何建模软件均可,本算例采用ICEM直接建模,生成网格,然后利用OpenFOAM下转化网格,划分完成的网格局部如下:

网格比较密集,高度方向设置了2000个节点,宽度方向上设置了100个节点,在导出网格的同时,我们对网格进行了缩放。建议在导出网格的时候就缩放网格,避免在后面的操作中,由于忘记缩放网格,导致计算出错

接下来转入OpenFOAM的操作:

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

文件夹、constant文件夹和system文件夹拷贝到Tall_Cavity文件夹下,然后删除system目录下的blockMeshDict文件,因为我们利用OpenFOAM的命令转化.msh文件为OpenFOAM能接受的网格文件。

然后我们将刚才我们生成的.msh网格拷贝到Tall_Cavity文件夹下。在算例文件夹下打开终端,输入fluentMeshToFoam命令:

我们打开constant文件夹下的transportproperties文件,内容修改如下:

说明一下:

nu表示层流粘度,这里根据上面的物性填写1.81e-05即可,注意下量纲,这里是运动粘度,需要用动力粘度除以密度

beta表示热膨胀系数,一般取为三百分之一(0.003)

Tref表示参考温度,这里我们取为两壁面温度的算术平均值,这里填写298.05

Pr表示普朗特数,这里我们根据上面的物性参数填写0.705

最后的湍流普朗特数根据实验得到,一般不用改动

接下来,修改turbulenceProperties文件的内容如下:

本算例我们采用k-ωSST湍流模型来进行计算(后面需要在0文件夹下添加omega文件)

g文件无需修改,默认设置超Y轴方向重力,重力加速度为9.81m/s2

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

删除不需要的文件

alpha文件当中的内容如下:

p文件当中的内容如下:

p_rgh文件当中内容如下:

U文件当中的内容如下:

将T.org的文件名修改为T,当中的内容如下:

k文件当中的内容如下:

说明一下:

在壁面处,k应该为0。这里我们使用了壁面函数。

k表示湍动能,计算公式为:

其中:uavg为平均速度

I为湍流强度

湍流强度的计算公式为:

式中:Re表示雷诺数

为何一般初始湍流强度设置为5%,可参考Launder B E, Spalding D B. The numerical computation of turbulent flow Computer methods in applied mechanics and engineering[J]. Надійшла до редакції 04.12. 2009 р, 1974.

MLA(文章链接:http://www.sciencedirect.com/science/article/pii/0045782574900292)

omega文件当中的内容如下:

说明一下:

omega表示比耗散率,计算公式如下:

式中:Cμ为0.09

k为湍动能

l为特征长度

nut文件内容如下:

说明一下:

nut表示湍流粘度,其计算公式为:

接着我们设置controlDict文件

fvSchemes文件修改如下:

fvSolution文件修改如下:

为了加快计算速度,我们进行并行计算,回到算例文件夹下的system目录,新建一个decomposeParDict字典,其中的内容:

打开终端,输入decomposePar进行分块

由于我安装了PyFoam来实时输出残差,所以在终端中输入pyFoamPlotRunner.py --clear mpirun -np 4 buoyantBoussinesqSimpleFoam -parallel开始计算:

等到计算结束

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

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

OpenFOAM——高空腔内的湍流自然对流的更多相关文章

  1. OpenFOAM——过渡管中的湍流

    本算例来自<ANSYS Fluid Dynamics Verification Manual>中的VMFL016:Turbulent Flow in a Transition Duct 一 ...

  2. 设计管理员表;webservice用于网络安全的高端内提供服务的

    admin表设计.你应该有角色表,管理员属于一个样的作用,另一个接口选项,以查看表.角色有更多的选择的能力. 角色和选项代表了许多关系,因此,我们必须保持这种关系有一个表 版权声明:本文博客原创文章, ...

  3. python 高阶内置函数

    1.lambda 匿名函数 lambda 参数: 返回值 函数名统一都叫lambda. 2.sorted() 排序函数 排序函数 sorted(iterable,key,reverse) key:排序 ...

  4. 深入理解 OpenFOAM 环境变量与编译

    操作系统选择 由于 OpenFOAM 在 Linux 平台开发和测试,在非 Linux 平台无法直接对软件进行编译和安装,所以在非 Linux 平台上最简便方法是使用 docker 容器运行 Open ...

  5. 块级元素和内联元素的区别(HTML)

    请把下面二行代码放进body标签里:     <div style=”border: 1px solid red;”>div1</div>     <div style= ...

  6. HTML中行内元素与块级元素的区别

    块级元素:独占一行,可设宽高,内外边距:块级元素有form,p,h1到h6,ol ,ul ,dl和dd和dt ,hr,li,pre,caption ,div ,table ,tr ,td ,th等. ...

  7. 块状元素和内联元素 【inline block】

    // 9) { colorRandom += colorArray[randomV - 10]; } else { colorRandom += randomV; } } currentEle.css ...

  8. CSS样式设置语法全解,样式优先级、值和单位、字体、文本、块级元素,行内元素,替换元素、非替换元素、display、float、position、table、li、光标、边距边框、轮廓、颜色背景

    全栈工程师开发手册 (作者:栾鹏) 一个demo学会css css选择器全解 css操作语法全解 CSS样式设置语法全解: 样式优先级 1. !important标记的样式 > 内联样式(sty ...

  9. 脑残式网络编程入门(六):什么是公网IP和内网IP?NAT转换又是什么鬼?

    本文引用了“帅地”发表于公众号苦逼的码农的技术分享. 1.引言 搞网络通信应用开发的程序员,可能会经常听到外网IP(即互联网IP地址)和内网IP(即局域网IP地址),但他们的区别是什么?又有什么关系呢 ...

随机推荐

  1. 2019 苏宁控股java面试笔试题 (含面试题解析)

      本人5年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.苏宁等公司offer,岗位是Java后端开发,因为发展原因最终选择去了苏宁,入职一年时间了,也成为了面试官,之 ...

  2. Redis基础用法

    Redis-避免缓存穿透的利器之BloomFilter Redis相关的问题的时候,经常提到BloomFilter(布隆过滤器)这玩意的使用场景是真的多,而且用起来是真的香,原理也好理解,看一下文章就 ...

  3. vue辅助函数mapStates与mapGetters

    状态管理器 <!-- store.js: --> import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) export de ...

  4. FlaskCBV视图类

    路由视图类 from flask import Flask app = Flask(name) 视图类 Views文件 看views源码 继承最后一个类 导入CBV的视图基类 from flask i ...

  5. 【转】Vue.js——60分钟组件快速入门(上篇)

    文章作者:keepfool 文章出处:http://www.cnblogs.com/keepfool/ 组件简介 组件系统是Vue.js其中一个重要的概念,它提供了一种抽象,让我们可以使用独立可复用的 ...

  6. Jenkins使用过程中注意事项

    jenkins自动部署注意事项: 安装jenkins https://blog.csdn.net/qq_37372007/article/details/81586751 1.当提示错误ERROR: ...

  7. Oracle数据库插入过程中特殊符号

    -- 问题描述:(插入数据中有特殊符号)数据插入后乱码. -- 背景:客户提供部分Excel表格数据要求导入数据库.由于考虑到数据量不大所以粗略在Excel中进行了sql处理(在数据前后添加sql及对 ...

  8. git指令集合

    原网页:https://www.linuxidc.com/Linux/2018-04/151809.htm Git 是一个很强大的分布式版本控制系统.它不但适用于管理大型开源软件的源代码,管理私人的文 ...

  9. 树莓派配置samba服务器,实现linux、windows文件共享

    一.安装samba服务器 输入如下命令: 二.配置文件smb.conf 找到[homes],将read only那里的yes改为no,允许读写 添加用户和设置密码 sudo smbpasswd -a ...

  10. Python入门篇-文件操作

    Python入门篇-文件操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.文件IO常用操作 open:打开 read:读取 write:写入 close:关闭 readlin ...