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

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

建成的模型如下:

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

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

接下来转入OpenFOAM的操作:

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

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

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

然后开始进行转换

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

我们打开polyMesh文件夹,对其中的boundary文件进行编辑,将UP和DOWN边界的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文件夹下我们可以看到U和P两个文件:

边界条件如图所示:

我们设置来流速度为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 向量值;

}

说明:

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

freestreamPressure

基本格式:

边界名称

{

type                    freestreamPressure;

}

说明:

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

symmetry

基本格式:

边界名称

{

type                     symmetry;

}

说明:

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

empty

基本格式:

边界名称

{

type                     empty;

}

说明:

该边界主要二维模拟。

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

文件内容如下:

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开始计算

等到计算结束

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

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

OpenFOAM-圆柱绕流的更多相关文章

  1. OpenFOAM——圆柱绕流对流换热

    本算例来自<ANSYS FLUENT技术基础与工程应用:流动传热与环境污染控制领域> TOP和DOWN为对称边界(symmetry),入口速度为0.01m/s,入口温度为300K,圆柱温度 ...

  2. OpenFOAM&Gmsh&CFD圆柱绕流(两个圆柱)

    问题: 圆柱绕流问题,模拟仿真有两个圆柱.一个源的流体变化情况. 解决步骤: 1.使用Gmsh画出网格,并保存cylindertwo.msh 2.以Cavity为基础创建新的Case:Cylinder ...

  3. ICEM-extrude功能画圆柱绕流网格【转载】

    转载自:http://blog.csdn.net/lgw19910426/article/details/26401517 首先画网格大体顺序为点-->线-->面-->单元体. 第一 ...

  4. OpenFOAM当中监测力和阻力系数

    首先准备好我们自己的平常算例文件,本次我们以圆柱绕流的算例来说明用法 我们找到constant文件夹 打开其中的transportProperties文件 我们将其中的: nu             ...

  5. OpenFOAM设置监测点(探针)

    首先准备好我们自己的平常算例文件,本次我们以圆柱绕流的算例来说明用法 然后我们在/opt/openfoam4/etc/caseDicts/postProcessing/probes文件夹下找到prob ...

  6. 【CFD之道】2017年原创文章汇总

    1 Fluent案例(21篇) [Fluent案例]01 空气流经障碍物 [Fluent案例]02:Tesla阀 [Fluent案例]03:RAE2822翼型外流场计算 [Fluent案例]04:多孔 ...

  7. 【CFD之道】2018年原创文章汇总

    以下是公众号CFD之道2018年的全部原创文章,共计210篇. 1 Fluent验证案例[60篇] Fluent验证案例02:通过均匀热通量管道层流流动 Fluent验证案例03:管道中湍流流动压降计 ...

  8. 【小白的CFD之旅】24 稳态和瞬态

    小白最近在练习案例的时候,对稳态和瞬态的问题,产生了一些疑问.譬如说,为什么有的案例用稳态,而有的案例用瞬态?有时候相同的案例既可以用稳态也可以用瞬态,而有的案例却只能用瞬态计算?小白决定找小牛师兄问 ...

  9. UDF——涡量

    用涡量的模来显示涡结构是一种很常用的方法 涡量: 针对二维,涡量场表示为如下的标量: 对于二维流动来说,涡量为正,表示逆时针旋转:涡量为负,表示顺时针旋转 三维涡量: 其中: 计算涡量的模: 二维涡量 ...

  10. OpenFOAM——绕流振动

    流体的物性参数为: 密度:1kg/m3 粘度系数:0.01N·s/m2           首先进行建模操作,任何建模软件均可,本算例在ICEM建模和进行网格划分,生成的网格如下: 接下来转入Open ...

随机推荐

  1. VIM的配置以及插件管理

    VIM的配置详细说明参考:http://www.ruanyifeng.com/blog/2018/09/vimrc.html 此外VIM的插件管理比如 Vundle可以参考这个博客: https:// ...

  2. (在客户端)https抓包解密

    (一)原理分析 https的数据包是用对称秘钥(https协议协商出来的随机数)加密后的密文. 对称秘钥在传输线路上是密文的(被非对称加密过),但是在client.server端是明文的(因为要用于加 ...

  3. Host is not allowed to connect to this MySQL server

    解决方法: [root@GYQ-Prod-Zabbix ~]# mysql -u root -p Enter password: Welcome to the MariaDB monitor. Com ...

  4. 关于linux的档案随笔

    刚才在看鸟哥的linux的私房菜,然后看到的部分是关于linux的档案配置部分,之前就强调过,在linux中所有的一切都是以档案的形式存在的,不过不同的文件有一定的区别,linux中是有副档案这个说法 ...

  5. SSH安全协议

    SSHD服务 介绍:SSH 协议:安全外壳协议.为 Secure Shell 的缩写.SSH 为建立在应用层和传输层基础上的安全协议. 默认端口22 作用 sshd服务使用SSH协议可以用来进行远程控 ...

  6. 高并发架构系列:Redis并发竞争key的解决方案详解

    https://blog.csdn.net/ChenRui_yz/article/details/85096418 https://blog.csdn.net/ChenRui_yz/article/l ...

  7. MINST样例数据的神经网络学习

    标准的入门学习示例, 比一年前看的那书,更有感觉了. # coding: utf-8 try: import urllib.request except ImportError: raise Impo ...

  8. window下关闭占用端口使用

    怎么在window下关闭端口! 1:查看特定端口被占用情况 命令:   netstat -ano 和 netstat -ano|findstr 端口号 netstat -ano:查看电脑所有端口被占用 ...

  9. 0028ssm环境搭建(springmvc+spring+mybatis)

    spring整合springmvc和mybatis主要分为如下几个步骤: 1.spring环境搭建 2.springmvc环境搭建 3.spring整合springmvc 4.spring整合myba ...

  10. new char()与new char[]区别

    char *pc = new char(15); //开辟一个内存单元,并用括号里的初始化(用15来初始化你定义的指针所指向的那个char)char *pc = new char[15]; //开辟一 ...