吾生有涯 学海无涯
析模有界 知识无界

OpenFOAM编程

OpenFOAM编程基础
OpenFOAM编程案例|16 颗粒跟踪-析模界

OpenFOAM编程案例|16 颗粒跟踪

本案例演示利用OpenFOAM编程实现颗粒跟踪并绘制颗粒轨迹。 1 文件结构 利用下面的命令创建文件结构。 runfoamNewApp demo16 文件结构如下图所示。 2 程序源码 本案例只需要一个源文件demo16.C,其内...

胡坤胡坤阅读(147)去评论赞(1)
OpenFOAM编程案例|14 SIMPLE算法-析模界

OpenFOAM编程案例|14 SIMPLE算法

本案例演示利用OpenFOAM中的基础代码实现SIMPLE算法。 1 SIMPLE算法 对于不可压缩NS方程,可以表示为: 式中有4个待求物理量:、、、。式中为运动压力(),为运动粘度。 方程求解有两个麻烦问题需要处理: 没有显式的压力求解...

胡坤胡坤阅读(71)去评论赞(0)
OpenFOAM编程案例|11 创建网格-析模界

OpenFOAM编程案例|11 创建网格

本案例演示在OpenFOAM中利用编程创建网格。 1 创建程序框架 利用下面的命令创建程序框架。 runfoamNewApp demo11 文件结构如下图所示。 2 源代码 只需要处理demo11.C文件即可。  #in...

胡坤胡坤阅读(45)去评论赞(0)
OpenFOAM编程案例|09 创建functionObject-析模界

OpenFOAM编程案例|09 创建functionObject

本案例演示编程实现一个在计算时进行数据处理的动态库程序。 1 创建文件结构 可以利用工具foamNewFunctionObject创建一个functionObjects工具。本案例演示创建一个在计算时获取某边界流量信息的functionOb...

胡坤胡坤阅读(104)去评论赞(0)
OpenFOAM编程案例|08 自定义边界-析模界

OpenFOAM编程案例|08 自定义边界

本文描述在OpenFOAM中编程实现自定义边界类型。 OpenFOAM中可以利用codeStream、codeFixedValue实现自定义边界上物理场分布。这些方式操作起来简单,但是功能也较为单一。若想要实现更加复杂的边界条件类型,可以通...

胡坤胡坤阅读(90)去评论赞(0)
OpenFOAM编程案例|07 自定义库-析模界

OpenFOAM编程案例|07 自定义库

本文演示在OpenFOAM中自定义库的基本过程。 有时候为了数据封装的需要,可以将特殊的代码先编译成库,然后在其他的代码中对库加以调用。本案例演示此过程。 1 文件准备 这里将库文件、功能文件以及测试文件分开。所有的文件都放置在run文件夹...

胡坤胡坤阅读(70)去评论赞(0)
OpenFOAM编程案例|06 自定义类-析模界

OpenFOAM编程案例|06 自定义类

本案例演示自定义类并利用自定义的类操纵OpenFOAM数据。 类是面向对象编程的基础结构,利用类可以很方便地实现代码复用和封装。本案例通过两个类的定义来演示C++中类的定义与调用过程。 1 文件结构 和前面的案例一样,我们先创建基础的文件结...

胡坤胡坤阅读(71)去评论赞(0)
OpenFOAM编程案例|05 并行编程-析模界

OpenFOAM编程案例|05 并行编程

本案例演示利用OpenFOAM进行并行计算的基础方法。 CFD计算自然离不开并行计算,在对大规模问题进行计算时,OpenFOAM也可以使用并行模式。然而利用并行模式进行计算时,可能需要修改一些程序代码,尤其是在需要获取全场信息时。本文以一个...

胡坤胡坤阅读(82)去评论赞(0)
OpenFOAM编程案例|04 场操作-析模界

OpenFOAM编程案例|04 场操作

Open FOAM是Open Source Field Operation and Manipulation的英文缩写,从其名字就可以看出,其是一个用来操纵和处理场数据的开源程序库。CFD中也包含大量的物理场,如压力场、速度场、组分场等,这...

胡坤胡坤阅读(126)去评论赞(0)
OpenFOAM编程案例|03 访问网格信息-析模界

OpenFOAM编程案例|03 访问网格信息

本文描述利用fvMesh类获取网格信息的一些基本用法。 OpenFOAM应用过程中需要频繁地与网格进行交互,比如获取网格面信息,获得网格中心坐标等。利用fvMesh类中的相应成员函数很容易实现这类需求。 fvMesh类是一个极为复杂的类,其...

胡坤胡坤阅读(132)去评论赞(0)
OpenFOAM编程案例|02 程序参数-析模界

OpenFOAM编程案例|02 程序参数

本文演示利用OpenFOAM中的argList类为创建的程序构造命令参数。 从提供的argc和argv参数中提取命令参数和选项。如下面的命令执行方式: program -listFiles (*.txt) 命令中,program为命令的名称...

胡坤胡坤阅读(62)去评论赞(0)
OpenFOAM编程案例|01 文件读写-析模界

OpenFOAM编程案例|01 文件读写

在OpenFOAM应用过程中,需要频繁的读写文件,如在计算之前需要读写各种字典文件以及边界条件数据,以及在计算过程中需要实时将计算结果数据写出到文件中。本案例演示编写程序读取指定文件中的相应内容以及将数据写入到文件的想要位置。 OpenFO...

胡坤胡坤阅读(135)去评论赞(0)
OpenFOAM编程案例|0A 说明-析模界

OpenFOAM编程案例|0A 说明

OpenFOAM本质上是一个C++类库,其包含了从底层数值算法到高层应用求解器的所有细节代码。用户可以在此类库的基础上开发自己专有的CFD程序。然而OpenFOAM代码是一个极其庞大的代码库,想要灵活运用其基础代码也不是一件容易的事情,尤其...

胡坤胡坤阅读(60)去评论赞(0)
OpenFOAM编程系列|0B 开端-析模界

OpenFOAM编程系列|0B 开端

本案例演示利用OpenFOAM中的Foam::Info函数输出信息,以及在Linux系统中配置OpenFOAM编译环境。 1 文件准备 启动终端,采用下面的命令创建文件: cd $FOAM_RUNmkdir demo0touch demo0...

胡坤胡坤阅读(90)去评论赞(1)
简单聊聊OpenFOAM编程-析模界

简单聊聊OpenFOAM编程

周末休息。简单聊聊OpenFOAM编程。 这里只是谈谈个人的一些感受,毕竟好久没有再真正意义上的编过OpenFOAM程序了,近些年主要用商业软件去了,OpenFOAM的程序代码几乎都快要忘记光了。 不过话说回来,如果想要深入了解CFD的工作...

胡坤胡坤阅读(74)去评论赞(1)
OpenFOAM编程|极简03:开发一个求解器-析模界

OpenFOAM编程|极简03:开发一个求解器

OpenFOAM中预编译了大量适用于各种应用场景的求解器,但有时可能希望向现有求解器中添加一些内容,或者基于新的研究开发新的求解器。本案例将演示如何将温度的标量输运方程添加到icoFoam求解器。 通过利用OpenFOAM的现有功能及其独特...

胡坤胡坤阅读(131)去评论赞(0)

登录

找回密码

注册