OpenFOAM Knowledge Share Step 2

OKSS2 | OpenFOAM中级课

OKSS2简介

OpenFOAM编程

相对于商软,OpenFOAM最大的优点在于可任意的编程。因此,学习OpenFOAM的最终目的都是编程自由。由于OpenFOAM可以说已经脱离原有的C++语言(完全由自己的类型编写),因此用户需要熟悉OpenFOAM的大量自定义类型(如fvScalarFieldcorrectBoundaryConditions())。同时,在写OpenFOAM代码的时候,需要充分的了解C++面向对象编程的概念。在2018年,学员应该拥抱面向对象,摒弃面向过程思想(如UDF)。另外,CFD编程不仅需要编程技能,还应知悉CFD作业流程。

在传统的编程课程中,讲师只分析代码。这种方式现场不会出现问题最为安全,对讲师来说省时省力。但对于学员来说效果较差。OKSS2抛弃这种方式:现场写代码。代码靠看是看不懂的,只有真正去写才能有所进步。理论和实践总是不一致。学员可在OKSS2中一起愉快的写代码。

  • 课程时间:8.30-17.00,共1.5天
  • 学员必须有OpenFOAM基础
  • 学员必须尽可能的预习C++,建议参考C++ Primer Plus

课程目录(2018.02.01版)

  • C++
  • 基于OpenFOAM编写简单的纯C++小程序
  • OpenFOAM代码分析
  • 更改粘度模型
  • 面向过程植入湍流模型
  • 面向对象
  • 面向对象植入湍流模型
  • 植入标量传输方程
  • 植入速度压力耦合
  • 植入拉格朗日粒子库
  • 编写自己的class
  • 代码风格和文本编辑器

随着我每天CFD的进行,课程内容将有所增加或删减,以最终课堂为准