在前文《不要被CFD软件玩弄了》中,建议各位亲们不要将时间大量的集中在软件的使用方法学习上,而应该将更多的精力放到现象背后的数学物理原理理解上。换句话说,对于利用CFD软件的人来讲,学好流体力学要比学好计算流体力学更加重要。
注意前提:分清自己是CFD软件使用者还是CFD软件开发者。本文的作用对象是CFD软件使用者。
可以将CFD软件的使用分成三个阶段:
-
第一阶段:不熟悉软件的工作流程,不熟悉软件的基本操作。对于这一阶段,迫切需要进行大量案例练习,尤其需要大量的标准操作案例的练习,养成良好的操作习惯。这里的标准案例,指的是包括问题分析、几何建模、网格生成、模型设置、计算后处理以及计算结果验证等CFD仿真全过程的案例,这类案例实际上并不好找。
-
第二阶段:已熟悉软件的操作流程及基本操作,但遇到新的问题仍然不知如何下手。这类人群其实最需要的是补充流体力学理论以及所仿真问题背景物理理论。比如说仿真热流问题,则需要补充热力学和传热学理论;仿真多相流问题,则需要补充多相流理论等等。在此阶段中,需要对计算过程中,软件操作的每一个设置选项,每一个操作按钮背后所涉及的物理原理有深刻的认识,能够知晓每一步操作及每一个设置的参数对于计算结果的影响。
-
第三阶段:达到第二阶段的人其实已经可以利用软件解决绝大多数的工程问题了,然而若还需要提高,则可以尝试着了解软件背后的运作机理,比如说学一点计算流体力学理论,自己动手写写程序。当此阶段达到圆满时,可谓大师也。
我们绝大多数人都处于第一阶段。
跨不过第二阶段,无法称之为CFD仿真高手。
第一阶段是招式练习,犀利的招式当然也可以解决不少的问题,然而遇到复杂的工程问题,深厚的理论内功是非常必要的,徒有犀利的招式并不能解决问题。
理论这东西很低调,往往隐藏在应用的背后,非明眼认识无法识别。就好比你看到苹果从树上掉到地面,却不会感知到牛顿第二定律一样。
在利用CFD的过程中,流体理论同样贯穿整个仿真流程的始终。
-
在仿真的规划阶段,流体理论指导我们对复杂的物理问题进行合理简化,在抽丝剥茧中保留物理问题的本质不被忽略。
-
在仿真建模阶段,流体理论指导我们忽略不必要的几何和物理特征,以尽量的简化计算开销
-
在后处理阶段,流体理论指导我们分析计算结果,获取有效的分析结果
-
在实验阶段,流体理论指导我们设计实验,分析实验数据
-
在优化设计阶段,流体理论指导我们如何去改进结构,提高性能
这些方方面面,都需要我们牢固的掌握流体方面的相关理论。
真正要想用好CFD,拥有深厚的流体理论基础很重要。
注意:这里所提的流体理论并不单单只的是流体力学,其指的是在流体仿真过程中物理现象所涉及到的力学理论。
计算流体力学描述的是CFD软件的运作机理,如果你从事CFD软件开发,那么精通计算流体力学是非常有必要的。
但是对于使用CFD软件的人群来讲,计算流体力学能起到多大的作用呢?
想象你新买了一辆汽车,你打算从甲地开车去乙地。这个车就相当于CFD软件,路线的选择所依赖的经验则相当于流体理论,而汽车工作原理则相当于计算流体力学。你觉得你开车从甲地去往乙地,汽车工作原理能够给予你多大的帮助?在我看来,最大的帮助可能是在半途汽车抛锚的时候,有助于你修理汽车;或者在开车过程中驾驶更加顺畅和省油,仅此而已。
计算流体力学理论对于使用CFD软件的人来讲也是如此,其作用更多的体现在软件计算效率控制以及计算收敛控制上,对于其他的诸如计算问题简化、计算结果利用上,没有太大的帮助。
那计算流体力学要不要学呢?其实计算流体力学实际上是为CFD开发人群准备的。这是个锦上添花的东西,如果你时间充足,学一点计算流体力学还是有点好处的,这些理论可以帮助你提高计算效率和计算精度,同时还有助于在软件出现问题时排除故障。
总有网友问我“CFD软件到底如何入门”,我通常都会回答“多做案例”。在小白阶段多做案例是快速进入第二阶段的不二法门。不过最近我发现我的答案里头少了两个字,如果想要快速掌握CFD软件的操作,不是“多做案例”,而是“多做标准案例”。
何为“标准案例”?
CFD软件解决工程问题大体可分为以下几个步骤:
-
问题分析及简化。此为CFD分析的开始阶段。真实世界中的物理问题都过于复杂,在利用CFD求解之前,往往需要利用一些流体理论对问题进行简化。这一步的最大目的是降低计算开销。但是这一步通常也是最难的,对于人员素质的要求非常高,因为如果理论功底不深厚,在简化的过程中,很可能会丢失重要的物理细节。其实这一步也是高手和低手的分水岭。低手往往对于物理问题不加任何的简化,结果造成的后果是计算量巨大而且计算精度还不高。
-
计算模型构建。包括物理模型和计算几何模型。在第一步操作完成之后,实际上计算模型已经能够确定下来了。计算要考虑哪些物理模型(层流还是湍流,要不要考虑传热,多相还是单相,考不考虑压缩性等等等等),几何模型如何考虑(3D还是2D,能否利用对称性和周期性等),边界条件如何考虑(边界位置在哪里,采用何种边界类型,边界上的物理量如何确定等),有时候还要根据后处理需要来调整模型。
-
计算网格划分。在划分网格过程中,常常需要借助第一步的规划结果进行网格分布控制。
-
计算参数的设置。在设置计算参数的过程中,有时需要借助计算流体力学理论以提高计算效率及精度。如选择合适的离散格式,选择合适的收敛控制方法等。
-
计算。软件自动进行,并没有什么可以控制的手段。
-
计算后处理。这包括各种数据的提取以及数据的解读。这一步做得好与坏通常与流体理论掌握的好与坏密切相关,也直接影响到后续的CFD应用。
-
计算验证。这里的验证既包含了计算结果验证,也包含计算模型参数的校核。这是保证后续步骤的前提,没有经过验证的计算结果是无效的。
-
数据的应用。后处理得到的各种数据以及数据的解读要能够反馈到工程实际中,这一步除了要求使用者有良好的流体理论背景之外,还要求有丰富的工程设计经验,这一步也是CFD使用最为关键,最为重要的一部。
一个好的案例,应该包含上述的八个步骤。然而很遗憾,目前市面上的CFD软件案例几乎没有完整包含上述8步的标准案例,很多案例只是2~6,有些甚至只包含4~6,这对于CFD新手来说,并无太大帮助。
对于新手来说,CFD软件入门,一个标准案例足矣。
在CFD应用过程中,“验证”非常重要。如果没有验证,那计算结果的准确性只能靠蒙了。
这里说的验证,包含了模型的验证以及计算结果的验证。其中模型的验证尤为重要。
CFD验证所涉及的内容较多,篇幅所限,我将此部分的内容放在后续的文章中。
本篇文章来源于微信公众号: CFD之道
评论前必须登录!
注册