OpenFOAM-圆柱绕流

原版视频下载地址:https://yunpan.cn/c64yrdt9J5LmQ  访问密码 0128

首先进行建模操作,任何建模软件均可,本教程采用ICEM直接建模,模型尺寸如下:

OpenFOAM-圆柱绕流_第1张图片

 OpenFOAM-圆柱绕流_第2张图片 

建成的模型如下:

OpenFOAM-圆柱绕流_第3张图片

对建好的模型进行网格划分,划分完成的网格如下:

OpenFOAM-圆柱绕流_第4张图片 

对圆柱的近壁面进行了加密处理,将划分的网格导出为ASCII.msh格式(注:二进制的.msh格式OpenFOAM是不支持网格转换的)

接下来转入OpenFOAM的操作:

首先新建一个文件夹,名字任取,本教程中我将该文件夹命名为:train

然后进入OpenFOAM的安装目录下查找一个tutorial的文件夹,然后按照:

OpenFOAM-圆柱绕流_第5张图片

 OpenFOAM-圆柱绕流_第6张图片

icoFoam求解是用来求解不可压缩牛顿层流,虽然最后为稳态,但是也可以通过计算瞬态来达到稳态。我们只需要拷贝icoFoam文件夹下的任意一个算例的0文件夹、constant文件夹和system文件夹。这里我们选择cavity算例文件夹下的三个文件夹,将他们拷贝到刚才新建的train文件夹下,然后将刚才导出的网格文件拷贝到train文件夹下,在trian文件夹下打开终端,输入fluentMeshToFoam命令:

OpenFOAM-圆柱绕流_第7张图片

然后开始进行转换

OpenFOAM-圆柱绕流_第8张图片

转换完成后,constan文件夹下会多出一个polyMesh文件夹

OpenFOAM-圆柱绕流_第9张图片 

我们打开polyMesh文件夹,对其中的boundary文件进行编辑,将UPDOWN边界的Type改为symmetry,记得后面一定要跟上分号,否则后面计算会报错

我们查看constant文件夹下的transportproperties文件,此处我们设置运动黏度为0.01m2/s

文件如下:

FoamFile

{

version 2.0;

format ascii;

class dictionary;

location "constant";

object transportProperties;

}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

 

nu [0 2 -1 0 0 0 0] 0.01;

 

 

// ************************************************************************* //

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

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

OpenFOAM-圆柱绕流_第10张图片 

边界条件如图所示:

OpenFOAM-圆柱绕流_第11张图片 

我们设置来流速度为0.1m/s,则接下来修改P文件和U文件

P文件当中的内容如下修改:

FoamFile

{

version 2.0;

format ascii;

class volScalarField;

object p;

}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

 

dimensions [0 2 -2 0 0 0 0];

 

internalField uniform 0;

 

boundaryField

{

INLET

{

type freestreamPressure;

}

OUTLET

{

type freestreamPressure;

}

UP

{

type symmetry;

}

DOWN

{

type symmetry;

}

    CYLINDER

{

type zeroGradient;

}

frontAndBackPlanes

{

type empty;

}

}

 

// ************************************************************************* //

U文件当中的内容如下修改:

FoamFile

{

version 2.0;

format ascii;

class volVectorField;

object U;

}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

 

dimensions [0 1 -1 0 0 0 0];

 

internalField uniform (0.1 0 0);

 

boundaryField

{

INLET

{

type         freestream;

freestreamValue        uniform    (0.1 0 0);

}

OUTLET

{

type         freestream;

freestreamValue        uniform    (0.1 0 0);

}

UP

{

type         symmetry;

}

DOWN

{

type         symmetry;

}

    CYLINDER

{

type         fixedValue;

value                    uniform    (0 0 0);

}

frontAndBackPlanes

{

type         empty;

}

}

 

// ************************************************************************* //

说明一下:

fixedValue

基本格式为:

边界名称

{

    type                    fixedValue;

    value                    uniform 向量;

}

说明:

该边界无需多说,在边界上的值为固定值,不可变动,只需要写入类似(0,0,0)这样的向量即可。对于不可压缩求解器来说,该种边界是稳定边界。

 

freestream

基本格式为:

边界名称

{

    type                    freestream;

    freestreamValue        uniform 向量值;

}

说明:

该边界是一种fixedValuezeroGradient的混合边界,该边界比起fixedValue边界更加灵活。出流时为zeroGradient边界,入流时则为fixedValue边界。该边界条件广泛应用于外流场的模拟当中。

 

freestreamPressure

基本格式:

边界名称

{

    type                    freestreamPressure;

}

说明:

一般压力边界设置为freestreamPressure,那么对应边界的压力边界就需要设置为freestream。该边界是一种zeroGradient边界,但是在边界需要保证ρ×Sf×freestreamValue(质量流量)的值为常数。(注:Sf是边界单元的面积)

 

symmetry

基本格式:

边界名称

{

type                     symmetry;

}

说明:

    对称边界条件主要用于消除边界对流场计算的影响,可以将此边界想象为一面镜子,来什么反弹什么。

 

empty

基本格式:

边界名称

{

type                     empty;

}

说明:

    该边界主要二维模拟。

 

我们进入system文件夹下找到controldict文件,我们修改此文件:

OpenFOAM-圆柱绕流_第12张图片 

文件内容如下:

FoamFile

{

version 2.0;

format ascii;

class dictionary;

location "system";

object controlDict;

}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

 

application icoFoam;

 

startFrom startTime;

 

startTime 0;

 

stopAt endTime;

 

endTime 1000;

 

deltaT 0.01;

 

writeControl runTime;

 

writeInterval 10;

 

purgeWrite 0;

 

writeFormat ascii;

 

writePrecision 6;

 

writeCompression off;

 

timeFormat general;

 

timePrecision 6;

 

runTimeModifiable true;

 

 

// ************************************************************************* //

最后回到train文件夹下,打开终端,输入icoFoam开始计算

 

等到计算结束

OpenFOAM-圆柱绕流_第13张图片

 OpenFOAM-圆柱绕流_第14张图片 

然后可将计算结果导入paraview或者tecplot当中进行后处理

OpenFOAM-圆柱绕流_第15张图片 

教程到此结束,未尽事宜,可参考视频教程。

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

你可能感兴趣的:(OpenFOAM-圆柱绕流)