OpenFOAM——梯形腔双边驱流

本算例来自《ANSYS Fluid Dynamics Verification Manual》中的VMFL054: Laminar flow in a Trapezoidal Cavity 

OpenFOAM——梯形腔双边驱流_第1张图片 

顶部和底部壁面均以400m/s的速度运动引起梯形腔内流体流动

梯形腔内流体的物性参数为:

 OpenFOAM——梯形腔双边驱流_第2张图片

首先进行建模操作,任何建模软件均可,本算例在workbench中直接建模,生成非结构化网格,然后利用OpenFOAM下转化网格,生成的网格如下: 

OpenFOAM——梯形腔双边驱流_第3张图片

接下来转入OpenFOAM的操作:

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

OpenFOAM——梯形腔双边驱流_第4张图片

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

OpenFOAM——梯形腔双边驱流_第5张图片

 OpenFOAM——梯形腔双边驱流_第6张图片

然后将刚才导出的网格文件拷贝到trapezoid文件夹下,在trapezoid文件夹下打开终端,输入fluentMeshToFoam命令(由于建模的时候就采用的米为单位,所以这里不用缩放网格): 

 OpenFOAM——梯形腔双边驱流_第7张图片 

我们打开constant文件夹下的transportproperties文件,此处我们将运动黏度设置为1/s 

OpenFOAM——梯形腔双边驱流_第8张图片

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

OpenFOAM——梯形腔双边驱流_第9张图片

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

0文件夹下我们可以看到UP两个文件:

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

修改P文件和U文件

P文件当中的内容如下: 

OpenFOAM——梯形腔双边驱流_第10张图片

U文件当中的内容如下: 

OpenFOAM——梯形腔双边驱流_第11张图片

接着我们设置controlDict文件 

OpenFOAM——梯形腔双边驱流_第12张图片 

fvSchemes文件修改如下: 

OpenFOAM——梯形腔双边驱流_第13张图片 

fvSolution文件修改如下: 

OpenFOAM——梯形腔双边驱流_第14张图片 

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

 

等到计算结束: 

OpenFOAM——梯形腔双边驱流_第15张图片

OpenFOAM——梯形腔双边驱流_第16张图片 

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

OpenFOAM——梯形腔双边驱流_第17张图片

流线图

OpenFOAM——梯形腔双边驱流_第18张图片 

Tecplot处理结果:

OpenFOAM——梯形腔双边驱流_第19张图片 

速度等值线: 

OpenFOAM——梯形腔双边驱流_第20张图片 

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

我们采用sampleDict的方式来获取中心轴线的分布

我们在system目录下新建一个文本文件,将文本文件的名称改为sampleDict,然后文本文件的内容如下: 

OpenFOAM——梯形腔双边驱流_第21张图片 

说明一下:

interpolationScheme的关键字后面可跟的选项为cellcellPoint,cellPointFace,其中cell认为单位中心点的值就代表了整个单元的值,cellPoint使用单元中心的值和定点的值进行线性加权插值,cellPointFace使用单元格中心,顶点和面值混合线性加权/单元格插值。

 

setFormat的关键字后可跟的选项为rawgnuplotxmgrjplot,这些分别是指输出数据的格式,raw表示我们平常看见的格式,gnuplot是指gnuplot作图所能接受的格式,其他类似。

 

centerline表示输出文件的名称,这个可根据自己需要随意指定

 

type的关键字后面可跟的选项为uniformfacemidPointmidPointAndFacecurveclouduniform表示沿指定的路径均匀取点,face表示指定线和单元格面的交点,midPoint表示线面交叉点之间的中点,midPointAndFace表示midPointface的组合,curve表示指定点,然后沿曲线追踪。cloud表示指定点。

 

axis的关键字后面肯跟的选项为x,y,z,xyz, distance,x表示数据文件当中只输出x坐标,yz表示的含义类似,xyz表示同时输出xyz的坐标,distance表示取样点距离起点的距离。

 

start关键字后面跟上一个向量,表示起点的坐标

 

end关键字后面跟上一个向量,表示终点的坐标

 

nPoints表示取点的数目

 

fields关键字后面跟上的是一系列的物理量,比如压力p,速度U,温度T,一定要将这些物理量用括号括起来,类似(p U T)

更加详细的说明见:https://cfd.direct/openfoam/user-guide/v3-sample/

我们在终端中输入命令:postProcess -func sampleDict -latestTime

 OpenFOAM——梯形腔双边驱流_第22张图片

 我们可以看到在算例目录下多出了一个postProcess的后处理文件夹 

OpenFOAM——梯形腔双边驱流_第23张图片 

    我们点击到底会有一个后缀为*.xy的文件 

OpenFOAM——梯形腔双边驱流_第24张图片

    我们打开文件: 

OpenFOAM——梯形腔双边驱流_第25张图片 

其中第一列为y轴坐标,因为我们在sampleDict当中设置的axisy,而其他三列分别为速度在x方向,速度在y方向,速度在z方向的分量。

OpenFOAM——梯形腔双边驱流_第26张图片 

    沿AA轴线:

OpenFOAM——梯形腔双边驱流_第27张图片 

    沿BB轴线:

OpenFOAM——梯形腔双边驱流_第28张图片 

注意一下速度在y方向的标准化是除以的壁面速度的负数,本算例是-400x方向的标准化是除以壁面速度,本算例是400

转载于:https://www.cnblogs.com/liusuanyatong/p/11259652.html

你可能感兴趣的:(OpenFOAM——梯形腔双边驱流)