OpenFoam这样的开源软件和Fluent差距在哪

2025-02-27 06:33:16
推荐回答(2个)
回答1:

我是一名仿真工程师,你的提问其实是不恰当的,应该说Fluent这样的商业软件和OpenFoam的差距在哪。总的来说OpenFoam有如下一些优劣势:

优势

  1. 相比起Fluent动辙上百万的购买费用,OpenFoam是免费的。

  2. OpenFoam是极其灵活的,它包括有各种各样的边界条件设置与求解器,绝大多数的CFD问题都可以使用OpenFoam来仿真,反而是很多商业软件,包括Fluent,边界条件与求解器的丰富程度与OpenFoam是没法相比的,这也使得这些商业软件的应用范围是要小于OpenFoam的

3. OpenFoam可以让你真正了解CFD模拟仿真的过程并享受它的魅力。因为Fluent等商业软件都是黑箱操作,你在使用这些软件时只能机械的设置,然后得到结果,而使用OpenFoam可以让你真正理解如何通过计算机来仿真再现我们真实世界的物理过程,让你真正感受到计算机世界与现实世界的完美结合

4.很多人以为Fluent这些商业软件的仿真结果更可靠,但事实并非如此,CFD-online上已有人讨论过,OpenFoam确实更精确。有人用OpenFoam跑出的结果不合理,只是因为OpenFoam比较南使用,使用者不能完全驾驭它

劣势

劣势只有一条,就是OpenFoam对于初学者是很难上手的,你需要投入很多时间去学习它,理解它,然后驾驭它

结语

关于OpenFoam与Fluent等商业软件的探讨在国外论坛早已经有了,下边的链接为CFD-online上关于这一话题的讨论,可以说一边倒支持OpenFoam,如果你懂英文可以看一下。最后,模拟仿真的未来是属于OpenFoam的

链接:https://www.cfd-online.com/Forums/fluent/47483-openfoam-vs-fluent-cfx.html

回答2:

我要反对上面那个所谓的仿真工程师的说法。
openfoam和fluent是我最常用的两款CFD软件包。对于两款软件来说,他们本质上就是个方程的求解器,所解的方程都是一样的, 在这个情况下所谓的求解精度就是对比一个有解析解的方程和用各自算法求解的数值解的逼近程度。
openfoam最大的优点是免费和开源,其他方面都没有比fluent强大所少。针对特定问题,openfoam可以采用特定的算法,使得求解精度可能较高,但是并不会有特别明显的差别。根据我的计算对比,openfoam、fluent和starccm+在对于圆柱绕流和某一类组分输运问题上,三者求解曲线基本一致。openfoam因为其开源性可以用最新的算法,也可以植入自己设计的算法。
但是除了开源这一点,从易用性角度来看,openfoam明显不及fluent,这不用多说。从求解稳定性角度来看也是远远不如。对于大部分用cfd做研究而不是研究CFD的人员,或者是企业工作人员来说,fluent是更好的选择。fluent算法相对保守,基本上是无脑AMG,但是正因为如此,所以才更是个广大的CFD应用者。
当然如果题主是要研究CFD算法,那我当然推荐openfoam。否则我是不推荐的。
CFD仿真的未来绝对不是开源,因为不是每个人都有精力和能力去学习C++,去调各种参数。CFD的发展应该是开源和商软的有机结合,在开源社区的加持下,一些算法得到很好的验证,商软背后的科学家团队针对性的提高这些算法的稳健性加入商软中。
换句话说,14.5时代的fluent目前依旧会满足绝大部分使用者的需求,为了虚无缥缈的目的啃开源和代码,殊为不智