首页/文章/ 详情

Fluent仍然是市面上最好的商业CFD软件包之一?

12小时前浏览42

在南方,那里“可乐”这个词被用来代替“苏打水”或“软饮料”。可口可乐不仅仅是我们所拥有的(显然,还有奶茶),它似乎以一种方式主导了地区市场,以至于所有其他苏打水都简单地被称为“可乐”。尽管ANSYS Fluent并没有同样的名字识别度,以至于“CFD”可以被替换为“Fluent”,但也有一些相似之处。作为当今领先的CFD软件包之一,Fluent在该领域建立了强大的声誉,众所周知,受到尊重,并被广泛接受。它是如此常见,以至于我们经常从客户和潜在客户那里收到对我们的_.cas_(或“case”)文件的请求,这些文件是Fluent的本地文件,他们假设我们在工作使用Fluent。

Fluent的历史可以追溯到20世纪80年代初,当时一家位于新罕布什尔州的公司Creare与英国谢菲尔德大学的一个研究小组合作,为广泛的工程应用创建CFD软件产品。1988年,Fluent, Inc.作为合作的结果成立,2006年,ANSYS购买了该公司。

快进到今天,技术已经飞速发展,现在有许多成熟的CFD软件包。Fluent是否是市面上最好的商业CFD软件包之一?我们将通过审查最新的Fluent产品,即2019 R2版本,来回答这个问题,了解其易用性、网格划分、速度、自动化和定制能力、后处理、客户支持和准确性。

          

   

   

1-软件包内容


   

为了开始使用Fluent,ANSYS提供了几个包含Fluent和其他支持软件的软件包(或捆绑包)。“CFD高级捆绑包CFD Premium Bundle”包括Fluent、Workbench(一个项目管理式的包装器,管理多个软件工具)、SpaceClaim(一个CAD工具,现在是一个独立的软件)、Ensight(一个后处理软件包)、CFX(另一个CFD求解器)以及CFD-Post(一个为CFX构建的后处理工具,但也非常适合Fluent结果)。    

尽管Fluent可以在基于Windows或Linux的版本中使用,但值得注意的是,SpaceClaim目前仅适用于Windows操作系统。

          

   

   

2-基本界面和工作流程


   

目前,我们更喜欢使用独立的CAD软件包进行初始几何体创建,例如SolidWorks或AutoDesk Inventor。然后,这个几何体被带入SpaceClaim,以便分隔和标记部件和边界以及创建所需的网格细化区域(“影响区域”)。接下来,SpaceClaim几何文件被导入Fluent进行预处理、网格划分和运行仿真。如果您已经有一段时间没有使用Fluent了,您可能会想知道Design Modeler和ANSYS Mesher这两个Workbench工具发生了什么,这两个工具以前是在生成Fluent网格之前必需的步骤。随着新的“无缝工作流程”的引入,只需要使用SpaceClaim(代替Design Modeler),然后将几何体直接带入Fluent进行本地网格划分。虽然Workbench确实有其优势,特别是在耦合几何体修改和多物理场应用时,流体求解器(Fluent/CFX)与固体/FEA求解器全部在一个环境中耦合,但我们认为能够绕过Workbench是一件非常好的事情。

   

Fluent用户界面,左侧为“设置”树,右侧为主视图窗口,底部为“控制台”

上面显示的主要Fluent界面将为许多读者所熟悉,因为它在最近的更新中没有显著变化。在通过左侧的“设置”树启动仿真之前,必须输入边界条件、流体类型/属性、求解器设置、停止标准等。点击任何树项目时,“任务页面”会显示更多细节。几何体或任何图表或等高线(如果加载了解决方案),通过右侧的主窗口查看。对于传统用户,文本用户界面(TUI)允许在底部的“控制台”窗口中输入键盘命令。这也是仿真过程中残差和警告打印出来的地方。如果您需要找到某物,顶部的ribbon允许快速访问树中的大多数项目。

一旦所有边界条件、物理设置和求解器设置都准备好了,仿真可以直接从Fluent内部启动,也可以通过批处理或作业提交脚本启动(这需要写入案例和数据文件)。一旦完成,结果可以在Fluent内部分析,也可以通过CFD-Post或Ensight进行。          


   

   

3-物理建模能力


   

正如预期的那样,Fluent内部提供了大量材料属性和物理选项,包括RANS稳态、瞬态、分离和耦合求解器,层流、湍流和过渡流动求解器,单相或多相技术(包括相变),网格运动,能量源和汇,化学反应,被动标量/示踪剂等。LES和DES求解器也内置其中。如果有一些内置的物理现象不可用,Fluent支持使用称为UDF的用户提供的代码,这些是完全可定制的脚本,允许您进入每个计算单元的流变量,以模拟物理/行为。    

演示Fluent体量-流体到离散相模型

虽然我们还没有时间完全调查,但我们对Fluent现在包含的由Dr. Florian Menter的团队开发的新的GEKO湍流模型感到非常兴奋,可以将其描述为两种最受欢迎的RANS两方程模型之间的混合:K-Omega SST和K-Epsilon Realizable。

另一个有前景的功能是新的混合体量-流体(VOF)到离散相模型(DPM),用于喷雾喷嘴仿真。这种新的VOF到DPM多相方法将通过VOF模型跟踪的大量液体转换为由DPM/拉格朗日技术跟踪的团块和滴液。

          

   

   

4-CAD清理和网格划分


   

如上所述,Fluent中的新方法被称为“无缝/水密工作流程 Watertight Workflow”。下面显示了Fluent中工作流程“树”的屏幕截图。这棵树结构指导您从上到下导入几何体、添加网格参数、标记边界和区域/区域,并创建表面和体积网格。与之前的本地Fluent网格划分相比,这项最近的进展在用户友好方面是一个巨大的升级。请注意,“导入几何体”功能允许直接导入通用CAD文件,如Parasolid,尽管需要购买额外的许可功能。相反,我们使用SpaceClaim来预处理实体模型几何体,然后可以直接导出到Fluent。SpaceClaim可以导入通用和本地CAD文件,包括Parasolid和SolidWorks格式。    

Fluent水密几何工作流程树

这里添加的关键功能是,用户现在可以导入实体几何体,然后在Fluent内生成用于运行CFD仿真的内部“流体空间”。这一切都在无缝工作流程树的“封闭流体区域”功能内完成。理论上,一个人可以在ANSYS软件包内完全创建几何体,而不需要外部CAD软件包。然而,我们发现在导入到SpaceClaim/Fluent之前,在外部CAD软件包内生成流体域更为方便,这也是一个完全可以接受的技术。值得注意的是,SpaceClaim本身是一个完全功能的3D CAD工具。你可以从头开始创建几何体,就像你可以在任何其他知名的CAD软件包中做的那样,尽管界面需要一些时间来适应,因为没有CAD“树”操作详细说明3D部件是如何构建的。使用直接建模方法,SpaceClaim需要与SolidWorks和Inventor中更常见的参数化建模方法不同的思维方式——身体和面孔是使用鼠标拉伸和拉动的,而不是首先设置草图,然后通过具有指定尺寸的特征功能进行挤出/切割。    

Fluent自动显示的“切割网格”视图

一旦完成无缝工作流程并且创建了网格,就该设置CFD仿真参数了。此时,用户通过写出.msh文件来保存生成的网格。通常情况下,经常保存是个好主意,特别是一旦通过写出.cas文件设置了所有物理/设置“以防万一”事情变得糟糕(双关语)。

Fluent中的网格划分是最新版本真正闪耀的地方。现在的过程非常直接,工作流程指导用户完成剩余的工作。体积网格选项是四面体、六核、多面体和多六核。我们喜欢的一个功能是网格大小的“预览”,它允许用户在任何东西被网格化之前看到计算单元将有多小/大。这可以节省很多时间,否则可能会因为使用太粗糙或太细的网格来网格化几何体而浪费。我们还喜欢在完成时自动显示结果网格的“切割视图”。    

Fluent多六核网格

Fluent中本地网格划分器的另一个更新是新的马赛 克网格技术,也称为“poly-hexcore”。这种网格器创建了一个混合的六面体/多面体网格,其中在主体流动区域创建了与流动对齐的六面体单元,在墙壁附近使用了与墙壁对齐的多面体单元和边界层单元(“膨胀层”)。根据Fluent的文献,与单独使用多面体相比(这增加了速度),这种网格类型在类似的(或增强的)准确性下显示出总单元数的改进。我们在测试期间能够轻松地为内部流动几何体创建一个多六核网格。与我们使用相同的最小/最大单元大小设置生成的多面体网格相比,多六核网格的总单元数减少了约10%。我们还注意到,从4个核心的多六核网格的网格化时间从3分钟减少到相应的全部多面体网格的大约13.5分钟。这是一个相当大的加速(约4.5倍),并且可以为生成更大、更复杂的网格节省大量时间。

此外,正如这种类型的软件所期望的那样,提供了并行网格划分,通过利用更多的可用处理器来提高网格划分时间。

          

   

   

5-仿真


   

Fluent包括广泛的数值求解器,包括分离/SIMPLE和高速情况下的压力-速度耦合。如果你有可用的核心或可以在云端运行你的案例,Fluent完全可以并行化。工作可以通过用于设置案例的GUI本地运行_或_它们可以通过命令行或作业提交脚本以批处理模式运行。即使在Windows中进行了预处理和设置,也可以在Linux中运行案例,反之亦然。流场数据(完整网格或在某些预设的监控点/位置)可以在仿真期间自动保存/导出,这对于瞬态案例和调试特别方便。    

我们喜欢的一个较新的功能是能够在启动之前设置一个“报告”值来监控你的案例。例如,如果需要,可以在每次迭代时报告某些平面/边界上的压力降。这也可以在仿真期间实时绘制,并且可以根据这些自定义报告创建收敛标准。我们知道这些功能在其他软件包中也有,它们是最近Fluent版本中受欢迎的补充。

尽管我们还没有测试,但ANSYS正在宣传通过使用GPU处理器为Fluent计算提供一些令人印象深刻的性能改进。

另一个新功能是能够在GUI中创建用户“字段函数”,并且可以基于任何现有的流场参数,如压力、密度等。这些可能会,并且可能会取代更复杂的用户定义函数(UDF),后者需要用C编程语言编写的编译代码/脚本。

最后,ANSYS维护了一套在每个版本发布之前在软件上运行的测试用例。这种测试的目的是允许用户验证软件是否按照文档执行,并为用户提供信心,即它能够在可容忍的准确性水平内充分解决各种物理问题。         


   

   

6-后处理


   

仿真完成后,有几种选项可以对结果进行后处理。一般的CFD后处理能力在Fluent内部可用,如等高线、流线、向量和通过XY图分析数据。另一个选项是CFD-Post,它也提供类似的功能。对于瞬态案例,CFD-Post可能更容易使用,但我们认为这真的只是用户偏好的问题。我们确实喜欢你可以在CFD-Post中保存一个“状态”文件(.cst)。如果你有很多案例是针对相同几何体(或类似几何体)运行的,并且你想确保所有图表都是一致的,这将非常方便。首先可以加载状态文件,然后每个案例的结果(数据文件)可以导入到“状态”中。如果创建了流线、等高线和XY图,它们不需要为每个数据文件重新制作,因为它们存储在状态文件中。    

Fluent后处理示例

Ensight是ANSYS的新收购,是后处理的一个完全不同的选项。不幸的是,我们不熟悉它,但我们已经在网上看到了一些出色的视频/图像,展示了可以做什么。它似乎能够显示固体FEA模型结果以及流体CFD案例,并且对于分析和动画化流体-固体相互作用数据可能非常令人印象深刻。这个强大的工具随Fluent一起提供,如果你还没有,似乎值得你花时间去调查。

          

   

   

7-总结


   

凭借在CFD领域的强大历史、对代码基础和能力的持续尖端和持续升级、为众多流动案例/类型提供准确和验证结果的声誉、强大的用户群和社区,以及专门的客户支持和大量的在线资源和网络研讨会,总体而言,Fluent是一个强大的多物理场软件平台。最近增加的功能大大提高了它的易用性。    

         

 

--- END ---

邀您关注

▽ 纯粹CFD:软件教程、行业应用、专业理论、

基础科普、研究前沿、严选培训广告

▽ 只聊CFD相关的大小事,信手天成,娓娓道来




   


来源:CFD饭圈
SpaceClaimDesign ModelerFluentCFXCFD-Post化学UDF湍流通用理论材料科普控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-10-19
最近编辑:12小时前
CFD饭圈
硕士 分享CFD文章,感谢关注
获赞 15粉丝 16文章 369课程 0
点赞
收藏
作者推荐

21世纪了,CFD不是计算器!

关于工程模拟中不确定性来源的思考。这只是一个关于计算流体动力学(CFD)领域的小思考。具体来说,我想思考工程模拟可能的不确定性来源以及哪些方面对于成功交付项目至关重要。我将主要讨论CFD,但类似的原则也适用于其他虚拟原型学科,如有限元分析(FEA)、优化和整个计算机辅助工程(CAE)。无可避免的问题是CFD更像是一门科学而不是计算器。更像是一种手艺而不是工具。这是一个常见的误解。这就是为什么CFD常常与失望联系在一起。以一个典型的科学工具——计算器为例。计算器直接执行算术运算,并在精确的输入上给出确切的答案,其结果不会引发关于正确性的讨论,而工程模拟则不同。在CFD中,总是涉及一定程度的不确定性。原因是求解的方法。所求解的是Navier-Stokes方程,这些方程从技术上讲是非抛物线非线性非均质偏微分方程。在这样一个高度动态的系统上,首先应用一组物理模型,然后必须使用各种方案在时间和空间上进行离散化,然后将其转换为线性代数问题并求解。最终结果总是一个近似值。即使一切都做得完美,也总是涉及一定程度的错误,这是几乎不可能量化的。 误差是什么? 我们将结果的误差理解为它们与完美结果的差异。在流体动力学领域,参考结果总是与物理测量(实验)相关联。也许你知道这个古老的工程笑话:“没有人相信CFD模拟,除了制作它的人。每个人都相信测量结果,除了制作它的人。”CFD并不完美,测量结果也不完美。但在流体动力学世界里,CFD必须追逐测量结果,而不是反过来。这是我们玩的游戏,这是规则,不管我们喜不喜欢。 总误差 首先,任何CFD工作流程都是各种技术(方法)的集 合。总误差由那些应用技术中产生的几种误差组成。让我们看看对CFD结果总误差贡献最大的几个因素。 A.CAD模型误差让我们从最基本和最明显的误差源开始。这是模拟的非现实CAD模型。CAD模型是待模拟的实际对象的虚拟表示。问题是,模拟就绪的CAD模型总是实际对象的某种简化。它总是被模拟的模型。不是实际对象。模型必须是干净的、无漏洞的,所有微小的、不相关的和有问题的模型部分必须被移除,所有的孔都必须被封闭。CAD建模阶段是每个模拟工作流程中极其重要的部分。它设定了所有模拟的潜力和限制。它永远不应该被低估。CAD建模阶段的错误或工程质量差很难在模拟阶段和后处理阶段得到补偿。 B.数学模型误差每个模拟项目都需要在物理和数学之间建立联系。我们称之为数学模型——它将物理理论转化为数学公式。让我们考虑以下项目示例:我们有一个医疗设备——血液泵。我们的目标是模拟泵在特定流量和转速下产生的总压力。我们必须建立我们的数学模型。必须做出一些决定。简单来说,我们可以选择1. 稳态流动 2. 不可压缩流动 3. 牛顿粘度模型 4. 非弹性流体 5. 无化学反应流 6. 标准RANS湍流 7. 光滑壁面。这意味着我们有意识地把瞬态行为、可压缩性、剪切变稀效应、血液弹性、化学反应、解析湍流、壁面粗糙度、弹性壁面等效应放在一边。所有这些决定都与得到的数学模型——特定要求解的方程有关。这个数学模型带有特定的简化,但它足够好,可以给出满足我们目标的结果。尽管血液流动要复杂得多,我们的模型仍然可以非常准确——就满足我们的目标而言——泵的总压力。在那里我们知道物理误差相对较低。另一方面,如果我们的目标是血液化学,其中反应瞬态效应至关重要,上述模型将完全不适用。数学模型极其重要,必须根据模拟的目标来创建。 C.边界条件误差在模拟域内部,在体积中,有要求解的方程(数学模型)。在域边界上,应用边界条件。边界条件有两个主要问题。1. 边界方程的第一个问题是数量的大小(通常适用于固定、狄利克雷边界条件)和分布。2. 第二个问题(通常适用于外推(诺伊曼边界条件)和模拟数量)是它们的应用方式。在现实世界中,没有什么是完全封闭的域,边界条件只是一种简化,使得能够创建有限的欧拉区域。边界条件是每次模拟极其重要的部分。我们建议对它们给予最好的关注。我们从技术支持中知道,边界条件是CFD中大多数错误的来源。 D.离散化误差为了使这篇文章足够简单,我允许自己将网格误差和数值方案误差放在一个称为离散化误差的部分。模拟域需要在时间和空间上进行离散化。这意味着连续函数实际上是在离散点上被虚拟地切割,因为那时可以应用数值数学。在CFD中,大多数情况下欧拉域被网格覆盖——域被分割成许多小体积。在每个单独的离散体积(单元)和每个数量(或项)上,应用数值方案,并总结在结果的标准线性方程组Ax=b中。然后可以使用精确的代数方法相对容易地求解线性系统。再次,这里需要做出许多关键决定。1. 要制作多细的网格?2. 网格拓扑?3. 网格质量?4. 边界层?5. 数值方案?更细的网格通常(并非总是)给出更低的误差。但你为细网格付出的代价是巨大的,CPU时间随着单元格数量的增加而迅速增长。网格设置通常以足够细的网格和CPU时间之间的痛苦妥协结束。数值方案的选择也非常关键。虽然一阶方案相当稳定且不太准确,但二阶方案(和更高)更准确但稳定性差得多。此外,还有许多混合阶方案,它们在准确性和鲁棒性方面都处于中间位置。最重要的是,数学模型和网格的每种组合可能导致一组不同的合适数值方案。 E.数值误差特别是在大型模拟(大网格导致大型线性系统)中,数值误差起作用。数值数学的问题是它进行了大量的简单操作,但即使是很小的数值误差,如果重复多次,也会传播和增长。最终,它可能会破坏你的结果。关键是实数精度(你的代码编译的方式)。我记得几年前,我们对OpenFOAM的各种精度进行了一些基准测试。单精度(32位,8位数字)非常快,但对于从几百万个单元格开始的网格,数值误差完全破坏了结果。对于生产性CFD模拟,推荐使用双精度(64位,16位数字)。大型、多百万网格用于例如适当解析的LES或DNS模拟,产生的线性系统必须使用四倍精度(128位,34位数字)。几乎不可能预先列举每个特定案例的数值误差,一个人必须依赖特殊测试和经验。总之,你可以肯定每次模拟都会涉及一些数值误差。唯一的问题是它有多大。 F.人为误差 尽管我们使用的工具不完美,但我们使用它们的方式更糟。我们是人。大自然使我们聪明,但一点也不完美。事实上,人为误差可能是CFD中最常见的痛苦来源。原因很明显。每次工程模拟都有许多参数。即使是非常简单的模拟也迫使我们做出许多决定。无论是有意识的还是无意识的。不幸的是,我们不断犯错误。出于许多原因,粗心、知识缺乏、知识过多(笑)、经验不足等。我的技术支持同事可以告诉你许多故事。其中一些很有趣,其中一些不那么有趣。是的,问题大部分时间就在屏幕前。人为误差当然是成功的真正杀手。 G.后处理误差我个人最讨厌这个。你会惊讶地发现,原始模拟结果正确,但它们的评估或解释是错误的情况有多频繁。有时后处理包括许多复杂的数学运算,在那里很容易犯错误。听起来很疯狂,但许多时候,特别是在新的工程项目中,后处理是最具挑战性的学科。再次,后处理阶段的错误或工程质量差可能会破坏本应正确的结果。我们在过去看到过无数案例,比如:物理单位混淆、总量与静量、通量加权与面积加权平均等。 H.X因素误差在每个新项目中,总有我们不知道的东西。你必须对新项目非常小心,因为即使你之前做过许多类似的项目,实践一次又一次地向我们展示,即使是小小的不同情况也会导致结果的巨大差异。在CFD中,比任何其他地方都多:魔鬼在细节中。每个项目都有它的X因素,必须以最大的关注来对待。 减少误差 上述所有误差都可以通过工程技能来减少。经验至关重要。没有人第一次就能获得出色的CFD结果,就像没有人第一次就能骑自行车一样。是知识、专注、训练有素的判断、耐心、奉献、开放的心态、大量的咖啡和学习新事物的意愿帮助你获得出色的结果。顺便说一下,你知道培养一位资深CFD工程师需要五年时间吗? 需要博士学位吗? 不一定。有时我在网上讨论中看到人们争论是否需要博士学位才能产生出色的结果。我是那些认为这不是条件的人之一。在我的职业生涯中,我见过没有博士学位的优秀工程师,也见过拥有博士学位的糟糕工程师。当然,我承认我见过的最好的工程师确实拥有博士学位。在我看来,博士学位更像是一种症状而不是要求。它讲述了个性和一个人处理特定问题的能力,而不是一些额外的理论知识。而这在CFD中确实很重要。 保持简单 有助于减少误差的是保持简单。为了最小化来自复杂性的各种误差,聪明的做法是不要太复杂化。阿尔伯特·爱因斯坦曾经说过:“一切都应该尽可能简单,但不要过于简单”,这完全适用于工程模拟。一条黄金法则是:所有的动作都必须是合理的,否则就放弃。 技能和经验可以内置到模拟软件中吗? 这个问题经常出现。是否有可能让一些经验丰富的工程师将他的经验以一种易于使用、健壮且足够准确的方式实现到CFD代码中,即使是对没有经验的使用者也是如此?我认为答案是肯定的,但有很多但是。但只适用于单一应用。但只适用于简单应用。但只适用于一些基本的准确性水平。但只适用于非常有限的用户选项范围。 CFD代码可以同时快速、健壮和准确吗? 总的来说,物理模型的选择加上离散化方法是关键,总是会导致某种妥协。模拟方法可以是准确或健壮的,但不能同时都是。同样,一种方法可以是快速或准确。我喜欢Tabor教授的一句话,我在互联网讨论中看到了,他曾经评论说:“模拟可以快速、健壮和准确。你可以选择其中的两个。” CFD是一个非常复杂的领域,包括数学、物理和软件工程。这三者都不能落后。以过来人看,基于上述所有这些,我必须以以下结论结束:CFD(CAE)更像是一门科学而不是计算器,更像是一种手艺而不是工具。 来源:CFD饭圈

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈