OpenFOAM程序开发入门(2)

OpenFOAM程序开发入门(2),第1张

能量控制方程:

其中DT为热扩散率。在壁面上给定衡帆值条件。

需要解决的问题:

1、创建程序需要的新滑拦歼物性和新变量场

打开myicoFoam.C可以看到,程序开始运行时调用CreateFields.H,创建变量场。

打开CreateFields.H,可以看到程序首先从transportProperties文件中读入物性,

这样,创建了新的vol标量场T,从文件T中读入。

对于T的创建具体解释如下:

2、在求解器中加入新的求解方程

下一步回到myicoFoam.C加入新的微分方程,由于温度场依赖于速度场,可放在PISO循环后面。

3、编译

4、在算例中加入新方程的初始和边界条件

修改transportProperties文件,前面已提到DT要从该字典文件读入。设定DT=0.002m2/s

拷贝一个T文件

修改T文件为

5、修改离散格式和代数求解器求解控制文件

在fvSolution中设置代数求解器选项

注意T方程形成的矩阵是非对称的,不要用PCG和DIC

6、信冲运行

单纯的传热问题用laplacianFoam就可罩锋以了。

如物告晌果是简单的流动与传热问友历题相结合,可以通过修改icoFoam求解器实现。

求解器修改方式详见 http://blog.sina.com.cn/s/blog_6d9c27ab010138mk.html

OpenFOAM是一个跟Fluent,CFX类似的CFD软件,但其为开源的,可以看做是胡肆橘一个在linux下运行的计雹旦算流体力学(CFD)类库[1] 。

外文名

OpenFOAM

软件类型

CFD软件

类似软件

Fluent,CFX

前身

FOAM

OpenFOAM的前身为FOAM(Field Operation and Manipulation的简写),后来作为开源代码公布到网上,任何人都可以自由下载和传播它的源代码。其作者之一Hrvoje Jasak为克罗地亚人,1993年在读PhD期间开始写FOAM。目前OpenFOAM有两个版本,一个是官方版本由weller维护,一个是ext版本由Jasak维护。

功能介绍

编辑

OpenFOAM是一个完全由C++编写的面向对象的CFD类库,采用类似于我们日常习惯的方法在软件中描述偏微分方程的有限体积离散化,支持多面体网格(比如CD-adapco公司推出的CCM+生成的多面体网格),因而可以处理复杂的几何外形,其自带的snappyHexMesh可以快速高效的划分六面体+多面体网格,网格质量高。支持大型并行计算,目前针对OpenFOAM库的GPU运算优化也正在进行中[2] 。

简单来讲,OpenFOAM是一个针对不同的的裤团流动编写不同的C++程序集合[3] ,每一种流体流动都可以用一系列的偏微分方程表示,求解这种运动的偏微分方程的代码,即为OpenFOAM的一个求解器。针对一个简单的单相牛顿流体层流运动,icoFoam即可进行求解。

标准求解器:

编辑

openfoam包含大量求解器,研究人员也可以编写自己的求解器。简单介绍以下几个自带的标准求解器:

icoFoam:用于求解层流下的单相牛顿流体流动。

simpleFoam:求解单相牛顿以及非牛顿湍流流动。

interFoam:牛顿和非牛顿流体的VOF模型求解。

产品特点

编辑

全面支持c++库。

愈加广泛的用途,例如目前已经被用在了金融等方面[4] 。

各种各样的工具箱,包括各种ODE求解器、ChemKIN接口等。

支持多种网格接口


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11970386.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存