吾生有涯 学海无涯
析模有界 知识无界

OpenFOAM|验证09 同心管自然对流

本算例演示利用OpenFOAM求解计算同心管道内的层流自然对流,并对计算结果进行验证。

参考文献:T.H. Kuehn, R.J. Goldstein, “An Experimental Study of Natural Convection Heat Transfer in Concentric and Eccentric Horizontal Cylindrical Annuli”, Journal of Heat Transfer, Vol 100, pp. 635-640, 1978.

1 算例概述

案例几何如图所示。两个同心圆管,其中内管半径17.8 mm,温度373K,外管半径46.25 mm,温度327 K。

两管道间的环形空间内介质粘度2.081e-5 kg/m-s,比热1008 J/kg-K,热传导系数0.02967 W/m-K,密度考虑为不可压缩理想气体。研究管道竖直轴线上速度分布(图中的Top与Bottom)

算例采用二维对称模型进行计算。

2 OpenFOAM设置

2.1 文件准备

本算例涉及到层流自然对流问题。计划使用buoyantSimpleFoam求解器进行计算。这里选择算例库中的buoyantCavity作为算例模板。

cp -r $FOAM_TUTORIALS/heatTransfer/buoyantSimpleFoam/buoyantCavity/ .
mv buoyantCavity VM09
cd VM09

考虑到本算例为层流流动,因此删除多余的文件,初始算例文件结构如下图所示。

2.2 网格文件

本算例网格采用ICEM CFD生成。

  • 利用下面的命令转换计算网格
fluentMeshToFoam VM09.msh
  • 修改文件constant/polyMesh/boundaryTOP及BOTTOM边界条件类型为symmetry
FoamFile
{
version 2.0;
format ascii;
class polyBoundaryMesh;
location "constant/polyMesh";
object boundary;
}
// * * * * * * * * * * * * * * * * * * //

5
(
TOP
{
type symmetry;
inGroups List 1(wall);
nFaces 39;
startFace 11049;
}
BOTTOM
{
type symmetry;
inGroups List 1(wall);
nFaces 39;
startFace 11088;
}
IN
{
type wall;
inGroups List 1(wall);
nFaces 144;
startFace 11127;
}
OUT
{
type wall;
inGroups List 1(wall);
nFaces 144;
startFace 11271;
}
frontAndBackPlanes
{
type empty;
inGroups List 1(empty);
nFaces 11232;
startFace 11415;
}
)
  • 利用命令checkMesh检查网格

2.3 指定材料属性与物理模型

这里需要定义重力加速度、设置材料属性及湍流模型。

1、g文件

g文件中定义重力加速度,这里定义重力加速度沿y轴负方向,其文件内容为:

FoamFile
{
version 2.0;
format ascii;
class uniformDimensionedVectorField;
location "constant";
object g;
}
// * * * * * * * * * * * * * * * * * * //

dimensions [0 1 -2 0 0 0 0];
value (0 -9.81 0);

2、momentumTransport文件

本算例采用层流计算,在此文件中进行定义。文件内容如下所示。

FoamFile
{
version 2.0;
format ascii;
class dictionary;
object RASProperties;
}
// * * * * * * * * * * * * * * * * * * * //

simulationType laminar;

3、pRef文件

此文件中指定参考密度。文件内容如下所示。

FoamFile
{
version 2.0;
format ascii;
class uniformDimensionedScalarField;
location "constant";
object pRef;
}
// * * * * * * * * * * * * * * * * //
dimensions [1 -1 -2 0 0 0 0];
value 1e5; //注意指定的是运动压力

4、thermophysicalProperties文件

此文件中指定材料介质的热物性。其中普朗特数:

文件内容如下所示。

FoamFile
{
version 2.0;
format ascii;
class dictionary;
location "constant";
object thermophysicalProperties;
}
// * * * * * * * * * * * * * * * * * * * //

thermoType
{
type heRhoThermo;
mixture pureMixture; // 固定组分
transport const; // 粘度为常数
thermo hConst; // 比热与显焓为常数
equationOfState perfectGas; // 采用理想气体状态方程
specie specie; // 后面采用分子量定义
energy sensibleEnthalpy; // 采用显焓计算能量方程
}

mixture
{
specie
{
molWeight 28.96; //分子量
}
thermodynamics
{
Cp 1008; //等压比热容[J/(kmol.K)]
Hf 0; //生成焓[J/kmol]
}
transport
{
mu 2.081e-05; //粘度
Pr 0.7067; //普朗特数
}
}

2.4 指定边界条件与初始条件

1、p文件

p文件内容如下所示。

FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object p;
}
// * * * * * * * * * * * * * * * * * * * * //

dimensions [1 -1 -2 0 0 0 0];
internalField uniform 1e5;

boundaryField
{
TOP
{
type symmetry;
}
BOTTOM
{
type symmetry;
}
IN
{
type zeroGradient;
}
OUT
{
type zeroGradient;
}
frontAndBackPlanes
{
type empty;
}
}

2、p_rgh文件

p_rgh文件内容如下所示。

FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object p_rgh;
}
// * * * * * * * * * * * * * * * * * //
dimensions [1 -1 -2 0 0 0 0];
internalField uniform 0;

boundaryField
{

TOP
{
type symmetry;
}
BOTTOM
{
type symmetry;
}
IN
{
type fixedFluxPressure;
value $internalField;
}
OUT
{
type fixedFluxPressure;
value $internalField;
}
frontAndBackPlanes
{
type empty;
}
}

3、T文件

内壁面温度373 K,外壁面温度327K。

FoamFile
{
version 2.0;
format ascii;
class volScalarField;
location "0";
object T;
}
// * * * * * * * * * * * * * * * * * * //

dimensions [0 0 0 1 0 0 0];

internalField uniform 350;

boundaryField
{
TOP
{
type symmetry;
}
BOTTOM
{
type symmetry;
}
IN
{
type fixedValue;
value uniform 373;
}
OUT
{
type fixedValue;
value uniform 327
}
frontAndBackPlanes
{
type empty;
}
}

4、U文件

U文件内容如下所示。

FoamFile
{
version 2.0;
format ascii;
class volVectorField;
location "0";
object U;
}
// * * * * * * * * * * * * * * * * //
dimensions [0 1 -1 0 0 0 0];
internalField uniform (0 0 0);

boundaryField
{
"(TOP|BOTTOM)"
{
type symmetry;
}
"(IN|OUT)"
{
type noSlip;
}

frontAndBackPlanes
{
type empty;
}
}

2.5 求解控制

修改controlDict文件,如下所示。

FoamFile
{
version 2.0;
format ascii;
class dictionary;
object controlDict;
}
// * * * * * * * * * * * * * * * * //

application buoyantSimpleFoam;
startFrom startTime;
startTime 0;
stopAt endTime;
endTime 5000; //迭代次数3000
deltaT 1;
writeControl timeStep;
writeInterval 50;
purgeWrite 3;
writeFormat ascii;
writePrecision 6;
writeCompression off;
timeFormat general;
timePrecision 6;
runTimeModifiable true;

2.6 求解计算

采用pyFoamPlotRunner进行计算。注意事先安装好PyFoam

pyFoamPlotRunner.py --clear buoyantSimpleFoam

计算残差曲线如下图所示。

3 结果验证

  • 温度分布
  • 速度分布
  • 对称面TOP上温度分布
  • 对称面BOTTOM上温度分布
  • 将对称面TOP上的温度值与实验值进行比较
set xlabel "y(m)"
set ylabel "Temperature(K)"
set grid
set key right
plot "top.txt" u 1:2 w line lw 3 t "numeric","VMFL009_top.xy" u 1:2 w point pt 7 t "exp"

与实验值的比较结果如下图所示。

  • 将对称面BOTTOM上的温度值与实验值比较
set xlabel "y(m)"
set ylabel "Temperature(K)"
set grid
set key left
plot "bottom.txt" u 1:2 w line lw 3 t "numeric","VMFL009_bot.xy" u 1:2 w point pt 7 t "exp"

与实验值比较结果如下图所示。


相关文件:

提取码:d8bj

本篇文章来源于微信公众号: CFD之道

赞(0) 打赏
版权声明:未经允许,请勿随意用于商业用途。
文章名称:《OpenFOAM|验证09 同心管自然对流》
文章链接:https://www.topcfd.cn/12367/
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
分享到

说两句 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者吧

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册