OpenFOAM | 工业软件版权大战下的思考:掌握一门免费的开源软件至关重要
![](https://public.fangzhenxiu.com/fixComment/commentContent/imgs/1596971416553_kf8iyi.jpg?imageView2/0)
今年正值软件版权大战,Adobe、matlab等等,都开始严厉打击盗版。商用软件往往伴随着高额的使用费用,Linux之父Linus Torvalds有言:![](https://public.fangzhenxiu.com/fixComment/commentContent/imgs/1596971416354_z8gdon.jpg?imageView2/0)
所以,掌握一门免费的开源软件它不香吗?告别crack它不香吗?学会OpenFOAM它不香吗?
我们来看一下wiki百科如何释义OpenFOAM:![](https://public.fangzhenxiu.com/fixComment/commentContent/imgs/1596971416772_go8ljp.jpg?imageView2/0)
注:上述图片来源于网络
OpenFOAM的雏形始于1980年代的英国帝国理工学院,经过几十年的发展,目前拥有来自商业和学术机构的大部分工程和科学领域的庞大用户群。OpenFOAM是一款免费的开源计算软件,其中包括可压与不可压流、多相流、直接模拟、燃烧、传热、粒子跟踪、分子动力学、电磁、应力分析、金融分析等求解器。使用者可根据自身需求自定义求解器及相关功能,灵活性极强。![](https://public.fangzhenxiu.com/fixComment/commentContent/imgs/1596971416514_rv4wtn.jpg?imageView2/0)
OpenFOAM这个C++类库主要包含前处理、求解和后处理三大部分。其中前处理包含网格工具和其他工具;求解部分包含了标准的求解器,且用户可以自定义求解器;后处理部分集成了对ParaView的调用。
![](https://public.fangzhenxiu.com/fixComment/commentContent/imgs/1596971417215_ilvaa4.jpg?imageView2/0)
OpenFOAM的普通标准算例主要包含三个文件夹,时间步文件夹、constant文件夹和system文件夹。uconstant文件夹下包含了所需要的网格文件和物理特性文件。usystem文件夹主要用于设置求解算法的参数,包括离散格式、矩阵求解器以及时间步长等等。u时间步文件夹包含一系列的计算结果,其中包括必须指定的初始数据以及边界条件。OpenFOAM提供了大量的标准库文件,如有限体积库,后处理库,网格操作库,热物理模型库,湍���模型库,辐射模型库等。只要使用库文件添加库的地址,并在主程序中包含其相应的头文件即可使用。每个库文件根据类别存储相关代码,方便使用者在开发过程中调用或修改。![](https://public.fangzhenxiu.com/fixComment/commentContent/imgs/1596971416234_kz6vxx.jpg?imageView2/0)
usrc: 储存除了求解器的主要内容,比如湍流模型OpenFOAM 的求解器源代码位于$FOAM_SOLVERS中,根据不同模型分类成不同的求解器文件夹,如不可压缩流体求解器类、燃烧求解器类、多相流求解器类等。以下列举了部分OpenFOAM中的不可压缩求解器。OpenFOAM是什么相信大家已经大致了解了,那么OpenFOAM该如何使用呢?下面通过一个简单的例子来演示一下:1. 首先进入OpenFOAM自带的pitzDaily文件夹如下:![](https://public.fangzhenxiu.com/fixComment/commentContent/imgs/1596971417123_d2lu3b.jpg?imageView2/0)
pitzDaily是用不可压缩求解器simpleFoam求解的一个OpenFOAM自带的算例,是基于Pitz和Daily(1981)的实验工作的一个模拟。2.在算例文件夹路径下的终端中键入blockMesh回车:此算例网格由system中的blockMeshDict控制生成:![](https://public.fangzhenxiu.com/fixComment/commentContent/imgs/1596971416627_gduwov.jpg?imageView2/0)
此时在constant中生成了polymesh文件夹,其中存储了网格信息。![](https://public.fangzhenxiu.com/fixComment/commentContent/imgs/1596971416318_fe2jcc.jpg?imageView2/0)
3.终端中继续输入simpleFoam回车开始计算:其边界条件位于0文件夹中,以0文件夹中的U字典文件即速度举例,此处入口速度设置为10m/s,方向为x轴正方向。算例文件夹下多出了结果的时间步文件和该算例的后处理文件:4.终端中继续输入paraFoam回车进行后处理:以上就是通过一个OpenFOAM自带的简单算例来演示了一遍OpenFOAM的基本简单使用流程,当然这是OpenFOAM的冰山一小角,更多更精彩更有趣的丰富OpenFOAM内容等待着你来学习。下述的仿真均是各国外大神使用OpenFOAM进行仿真得来:![](https://public.fangzhenxiu.com/fixComment/commentContent/imgs/1596971416429_6epalj.jpg?imageView2/0)
注:上述图片来源于网络
上图为利用OpenFOAM模拟电影院中的温度分布。注:上述图片来源于网络
上图为利用OpenFOAM模拟两个人的打喷嚏过程。![](https://public.fangzhenxiu.com/fixComment/commentContent/imgs/1596971416696_13u42h.jpg?imageView2/0)
上图为利用OpenFOAM模拟一个水槽放水的过程。下图来自OpenFOAM官网,由于今年疫情原因,每年即2020年的现场培训课改为线上。图中可以看到,即使是线上培训课,培训费仍在软妹币1w左右不等。近些年OpenFOAM在国外越来越热门,在国内也势如破竹,需求越来越大,更实际的讲,OpenFOAM由于其开源特性,让使用者更接近低层代码,对流体力学等理论有更深刻的见识和理解。更进一步讲,目前在国内,掌握OpenFOAM的技能更往往会在找工作时增分添彩。《零基础入门学习OpenFOAM—掌握OpenFOAM的使用和技巧》本课程共分十二讲,面向对象为0基础使用者,即使你完全没听说过OpenFOAM,也可以通过此课程无障碍地进行学习。从安装到各个部分的讲解以及手把手搭建算例的实践,完成此课程,你会对OpenFOAM整体和各细节部分有一定的把控和掌握,你会拥有在OpenFOAM中从零开始自己搭建算例的能力。作者:Tesbo 仿真秀专栏作者
声明:原创文章,本文首发仿真秀,部分图片源自网络,如有不当请联系我们,欢迎分享,禁止私自转载,转载请联系我们。
获赞 9708粉丝 21100文章 3394课程 215