流体的物性参数为:

密度:1kg/m3

粘度系数:0.01N·s/m2

          首先进行建模操作,任何建模软件均可,本算例在ICEM建模和进行网格划分,生成的网格如下:

接下来转入OpenFOAM的操作:

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

然后进入OpenFOAM的安装目录,将安装目录下的wingMotion算例(我的目录为/opt/openfoam5/tutorials/ incompressible/pimpleDyMFoam/wingMotion/wingMotion2D_pimpleDyMFoam)下的0.orig文件夹、constant文件夹和system文件夹拷贝到cylinder文件夹下,将0.orig文件夹重命名为0,删除0文件夹下的include文件夹, k,nut, omega这些文件,因为本算例不会用到这些文件夹和文件。

然后将刚才导出的网格文件拷贝到cylinder文件夹下,在cylinder文件夹下打开终端,输入fluentMeshToFoam命令(由于从ICEM当中导出模型的时候就已经进行了缩放,所以这里不用缩放网格):

我们打开constant文件夹

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

transportProperties文件修改如下:

设置运动黏度为0.01m2/s

然后我们拷贝oscillatingBox下的dynamicMeshDict字典(我的路径是/opt/openfoam5/tutorials/multiphase

/potentialFreeSurfaceDyMFoam/oscillatingBox/constant/dynamicMeshDict)到constant文件夹下,覆盖当前的dynamicMeshDict,修改覆盖后的dynamicMeshDict文件如下:

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

文件夹下进行操作:

修改0文件夹下p、U和pointDisplacement文件:

p文件当中的内容如下:

U文件当中的内容如下:

p和U文件参数的具体含义,详见http://blog.sina.com.cn/s/blog_14d64daa10102wskl.html

pointDisplacement文件当中的内容如下:

说明一下:比起其他求解器多出来的pointDisplacement字典主要用于指定边界的位移,本算例我们指定圆柱的位移为oscillatingDisplacement类型,那么也就是说圆柱的运动满足表达式y=Asin(ωt),其中amplitude为振幅,这里为一个向量,用于指定边界运动的最大位移,对应表达式中的A,本算例我们指定圆柱在Y方向上下振动,在Y方向的最大位移为2米,所以

amplitude       (0 2 0);

而omega关键词对应表达式中的ω

其他的边界不运动,所以

".*"

{

type            fixedValue;

value           uniform (0 0 0);

}

接着我们设置controlDict文件

限制库朗数不超过0.9

fvSchemes文件修改如下:

fvSolution文件修改如下:

为了加快计算,我们采用分块并行计算

因为system目录下已存在decomposeParDict字典,所以我们可以在终端中输入decomposePar直接进行分块:

    在终端中输入mpirun -np 4 pimpleDyMFoam -parallel开始计算:

等到计算结束:

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

OpenFOAM——绕流振动的更多相关文章

  1. 绕流振动UDF【转载】

    宏DEFINE_GRID_MOTION用来移动任意边界和流体区域内的网格节点.它提供了对节点和网格最大限度的操作,可以将刚体运动.变形和相对运动等结合起来.但是使用此UDF时,每一个时间步都必须执行. ...

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

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

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

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

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

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

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

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

  6. 【一起学OpenFOAM】03 OpenFOAM基本使用流程

    OpenFOAM初学者常常对于软件的使用流程感到很迷惑,与其他的具有GUI的CFD软件不同,OpenFOAM的所有操作均为基于文本操作,譬如说里面各种计算模型.计算参数.流程控制参数等,均为通过修改对 ...

  7. 【一起学OpenFOAM】系列由来

    1 为什么要学习OpenFOAM 掐指算起来,接触CFD也差不多有十个年头了,其间一直使用的商用CFD软件,有Fluent.CFX.StarCCM+等,这些商用软件各有其优缺点,都能较好的解决常规的工 ...

  8. 【一起学OpenFoam】02 软件准备

    "工欲善其事必先利其器",在利用OpenFoam解决我们的工程问题之前,首先要做的事情是搭建一个OpenFoam运行环境.很遗憾的是,OpenFoam的原生开发系统是Linux,因 ...

  9. OpenSUSE下编译安装OpenFoam

    在不是Ubuntu系统下安装OpenFoam,需要采用编译安装的方式.以下以OpenSuSE为例进行编译安装. 1 软件包准备 需要下载两个程序包: OpenFOAM-4.x-version-4.1. ...

随机推荐

  1. Java之路---Day01

    2019-10-17-19:36:43 标识符: 标识符:是指在程序中,自己定义的内容.如:类名.方法名.变量名等 命名规则(硬性要求): 1.有英文字母(区分大小写).数字.$(美元符)._(下划线 ...

  2. HttpClient使用详解与实战一:普通的GET和POST请求

    简介 HttpClient是Apache Jakarta Common下的子项目,用来提供高效的.最新的.功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议. Htt ...

  3. 给 linux redis 设置密码

    在redis.conf 找到 下面添加一行: 这样的话,密码就可以设置成123456,然后重启redis就可以了.

  4. thrift中的概念

    Thrift的网络栈 Apache Thrift的网络栈的简单表示如下: +-------------------------------------------+ | Server | | (sin ...

  5. FriendlyCore overlayfs 挂载方式

    友善 friendlycore 挂载 overlayfs 过程: uboot 引导系统启动的时候加载 ramdisk.img  这个 cpio 格式的 initrd(虚拟文件系统). 注意: ramd ...

  6. CH340g使用说明详解

    用串口和CH340模块都可以让计算机和单片机进行通信,但是使用CH340更加方便,省去了使用串口的麻烦 CH340是一个USB总线的转接芯片,实现USB转串口.USB转IrDA红外或者USB转打印口. ...

  7. Node.js GET/POST对应的url/query-string常用的方法介绍

    <一>,在学node.js--GET/POST请求时,先看模块url和query-string的用法 1. 模块url用法,一般用于解析get请求. parse: [Function: u ...

  8. Mysql InnoDB行锁不使用索引锁表的时候会锁整张表

    原文:http://www.thinkphp.cn/topic/41577.html 如果使用针对InnoDB的表使用行锁,被锁定字段不是主键,也没有针对它建立索引的话.行锁锁定的也是整张表.锁整张表 ...

  9. Android Binder机制彻底梳理一

    Binder架构图: 先来瞅一下它的整体架构图: 其中粉红部分是上层的Binder,而蓝色的则是下层的Binder,很显然上层的是依赖于下层的. 什么是Binder[有个大概了解]? 这里从几个层面来 ...

  10. Kotlin高阶函数与函数式编程详解

    函数可变参数: 在上一次https://www.cnblogs.com/webor2006/p/11518425.html中学到了可变参考,关于可变参数有如下规则说明: “一个方法中,只允许一个参数为 ...