你好,
这个问题OpenFOAM创始人Henry已经有过详细的阐述了:
Henry:了解流体机理和计算流体力学更加重要。大多数CFD工程师并不需要经常编程,因为CFD代码已经非常成熟了,并且包含了非常多的功能。但是对于一个CFD工程师而言,很有必要了解到底什么是“物理”,什么是“边界条件”。这些都和流体动力学有关,而和编程关系不大。
很好地了解CFD的概念在选择合适的数值方法、离散格式、时间步、松弛因子的时候非常有必要。这通常可以通过培训来达到目的,因为本质上其主要通过积累的经验来获得。
使用CFD就像玩乐器,你不能捡起一把小提琴就弹“维尔瓦底”的曲子(CFD界注:著名小提琴演奏家),这需要很长的练习。
然而,相对于GUI的点击型操作,OpenFOAM中CFD算例的自动运行VERY有用,因此如果会写脚本的话就更好了。脚本语言不重要,大家可以使用随便一个脚本语言,只要你熟悉就好。
个人认为,依赖于你所需要的功能,如果只是企业级别的计算,不需要多少C++只是。如果是硕士进行简单的开发,C++熟悉相关的语法规则就好。对于博士如果需要写自己的算法,可能对面向对象编程需要有一定的认识