本人做凝固模拟研究的,就这么说吧,Fluent算三天的数据,OpenFOAM 2小时搞定了
然而Fluent前后设置开发,一共花了我2星期,而OpenFOAM求解器开发,我连学习带尝试,花了两个多月的时间(本人有C++面向对象开发经验,也曾经纯自编程写过CFD程序)
主要速度提升有以下几个方面:
-
求解算法的自由调整。Fluent基本上无脑SIMPLE算法,框架改也不能改,基本上都是:求U方程、压力修正、求解湍流方程、求T方程、求C方程、求解自定义方程,判断连续性误差,收敛进入下一时间步,否则重复上述迭代。相比之下,OpenFOAM可以根据自己的需要加入外迭代、压力修正迭代、适时的湍流修正、一些自定义场之间的内迭代等等,这些求能加快收敛速度,减小计算量
-
求解器的选择。FLUENT基本无脑AMG算法;OpenFOAM则可以自己修改不同方程的求解器以及求解器参数的设置
-
优秀的CFD算法植入。OpenFOAM中一些非常高效的算法植入要比Fluent快很多。以两相流求解器来说,在很多工程计算中,interFoam要比FLUENT中的VOF模型快好多
-
高效并行。这个可能和我用的系统以及FLUENT的版有关。Fluent我一直用的是Windoes平台下盗版软件,并行效率感人,基本上超高12核计算速度就基本不动了;而OpenFOAM,几百万网格并行加速效果还是很明显的
上面是我自己在两个平台下的感觉。基本上做项目,先用Fluent尝试算个结果,这里不得不说一下,Fluent鲁棒性真的好,你瞎搞的算例都能给你算出个东西来。对工艺有了更好的了解之后就转到OpenFOAM开发,根据实际工艺修改求解器、边界条件等参数。
两个平台都用过,两个平台都很菜,还望各位老师多多批评指正