本算例来自《ANSYS Fluid Dynamics Verification Manual》中的VMFL045: Oblique Shock Over an Inclined Ramp

来流大概为2.5马赫数,转换为来流速度为852.68m/s

物性参数:

密度:理想气体

导热系数:0.0242W/(m·K)

动力黏度:1×10-8kg/(m·s)

比热容:1006.43J/(kg·K)

普朗特数:0.00041588

针对超音速流动,采用可压缩稳态求解器的收敛性很差,所以我们采用可压缩瞬态求解器rhoCentralFoam

首先进行建模操作,任何建模软件均可,本算例采用ICEM直接建模,生成网格,缩放网格,然后利用OpenFOAM下转化网格,划分完成的网格如下:

接下来转入OpenFOAM的操作:

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

然后进入OpenFOAM的安装目录,将安装目录下的文件夹、constant文件夹和system文件夹拷贝到shock文件夹下,然后删除system目录下的blockMeshDict文件,因为我们利用OpenFOAM的命令转化.msh文件为OpenFOAM能接受的网格文件。

然后我们将刚才我们生成的.msh网格拷贝到shock文件夹下。在算例文件夹下打开终端,由于是二维模型,我们输入fluentMeshToFoam命令:

网格转换完成以后,我们打开constant目录下的polyMesh文件夹,对其中的boundary文件进行编辑,将SYM边界的Type改为symmetry,记得后面一定要跟上分号,否则后面计算会报错

我们打开constant文件夹下的thermophysicalProperties文件,内容修改如下:

接下来,修改turbulenceProperties文件的内容如下:

转入0文件夹

p文件当中的内容如下:

U文件当中的内容如下:

T文件当中的内容如下:

接着我们设置system文件夹下的controlDict文件:

为了保证求解的稳定,我们开启adjustTimeStep,并且将最大库朗数设置为0.1

fvSchemes文件修改如下:

fvSolution文件修改如下:

为了加快求解速度我们采用并行计算,我们采用pyFoam来对算例进行分块,我们在终端中输入如下命令分块:

所以在终端中输入如下命令开始计算:

为了后面后处理的方便,我们在终端中输入如下命令:

将最终结果分割后的场和网格重新合并

我们在终端中输入如下命令:

从而获取马赫数

速度云图

在最新的ParaView当中我们可以采用以下的方法来支持中文的注释

为了与试验数据相对比,我们进行如下操作:

我们选取x=0.38 m, y=0.14 m点的数据与试验数据进行对比

实验结果与计算结果对比

OpenFOAM——冲击斜坡的更多相关文章

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

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

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

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

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

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

  4. OpenSUSE下编译安装OpenFoam

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

  5. 【一起学OpenFoam】01 OpenFoam的优势

    CFD技术发展到今天,已经超过了大半个世纪了,已经涌现出非常多的CFD软件可供人们使用.通用商业CFD软件譬如Fluent.CFX.Star CCM+等在工业上得到了广泛的应用,另外一些专用的软件(如 ...

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

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

  7. OpenFOAM 学习路线 【转载】

    "Two weeks of playing with a CFD code will save you one afternoon of reading" 什么是OpenFOAM( ...

  8. openfoam 的安装【转载】

    原文地址: http://blog.sina.com.cn/s/blog_14bf001d10102wifw.html OpenFOAM安装 OpenFOAM基于Linux系统下运行,由于对Linux ...

  9. 论SCRM系统对传统行业的冲击

    SCRM(Social Customer Relationship Management)顾名思义是社会型客户关系管理系统,这在当前的电子商务领域是一个创新的概念,由于社交媒体(Social Medi ...

随机推荐

  1. C# 实用代码段

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  2. k8s+jenkins(DevOps全流程)

    k8s集群搭建是参照别人的,链接找不到了.需要5台机器,3主2从,主最少搭建3台才能实现高可用. 流程jenkins打包代码 >> 把打包代码生成镜像 >> 备份镜像库旧镜像 ...

  3. Elasticsearch 、 Logstash以及Kibana 分布式日志

    搭建ELK日志分析平台(上)—— ELK介绍及搭建 Elasticsearch 分布式集群 ELK简介: ELK是三个开源软件的缩写,分别为:Elasticsearch . Logstash以及Kib ...

  4. 前端有用的CSS属性和JS方法

    1.CSS属性: 透明属性(值越大越不透明): IE:filter:alpha(opacity:30) Google:opacity:0.3 层次属性(值大的会在上面): z-index:100 2. ...

  5. Ext.bind函数说明

    bind( fn, [scope], [args], [appendArgs] ) : FunctionCreate a new function from the provided fn, chan ...

  6. C# 如何提前结束 Sleep ?

    好久没有更新博客了,都有点对不起这个账号了.这次跟大家分享的是一种编程思路,没什么技术含量,但也许能帮得到你. 我们经常会在程序程序中用到 Sleep 这个方法.Sleep 方法用起来非常简单,但是有 ...

  7. Prometheus学习笔记(1)Prometheus架构简介

    Prometheus简介和架构 Prometheus 是由 SoundCloud 开源监控告警解决方案.架构图如下: 如上图,Prometheus主要由以下部分组成: Prometheus Serve ...

  8. Nodejs入门级

    应用不同模块分析 我们来分解一下这个应用,为了实现一个应用,我们需要实现哪些部分呢? 我们需要提供Web页面,因此需要一个HTTP服务器 对于不同的请求,根据请求的URL,我们的服务器需要给予不同的响 ...

  9. Kali linux network is unreachable

    使用树莓派4 安装完kali linux后,配置好ip,能ping通上级路由. 但ping公网地址显示网络不可达. Ping: connect: network is unreachable 解决方法 ...

  10. 获取对象State的方法

    一.通过Scaffold.of(context)可以获取父级最近的Scaffold Widget的State对象 二.通过GlobalKey来获取.步骤有两步: 给目标StatefulWidget添加 ...