什么时候对计算流体动力学模拟有用的高阶方法?


23

CFD的许多数值方法可以扩展到任意高阶(例如,不连续的Galerkin方法,WENO方法,光谱微分等)。对于给定的问题,我应该如何选择正确的精度顺序?

Answers:


11

实际上,大多数人坚持较低的命令,通常是一阶或二阶。这种观点常常受到相信更准确答案的理论研究者的挑战。简单平滑问题的收敛速度已有详细记录,例如,请参见Bill Mitchell 对hp适应性比较

虽然对于理论著作来说,很高兴看到收敛速度是多少,但是对于我们当中更多的面向应用程序,此问题与本构法则,必要的精度和代码复杂性之间取得了平衡。它没有多大用处,因为在许多多孔介质问题中,对于高度不连续的介质,要解决这些问题,可以采用高阶方法,数值误差将主导离散化误差。同样的担忧也适用于包含大量自由度的问题。由于低阶隐式方法具有较小的带宽并且通常具有更好的条件,因此高阶方法变得太昂贵而无法解决。最后,转换顺序和多项式类型的代码复杂度通常对于运行应用程序代码的研究生来说太高了。


1
您可能要讨论低数值扩散很重要的波传播问题,地震成像(SPECFEM),DNS(频谱和高阶FD),LES(Nek5000频谱元素)以及ketch已经使用WENO 的异质波问题。
杰德·布朗

3

准则:用于解决期望平滑的问题的高阶方法,以及用于解决解决方案中的不连续性的低阶方法和/或方法。在可以利用高阶方法的情况下,由于收敛速度高,因此可以显着节省以CPU时间衡量的计算工作量。对于需要求解线性系统的椭圆问题,高阶方法导致运算符的稀疏性降低,必须通过更快的收敛速度来弥补。对于与时间有关的问题,如果可以利用高阶方法,则可以加快收敛速度​​并获得更高的精度,并且对于较长的积分时间,由于数值分散和耗散误差低,因此高阶方法在准确性和计算工作量方面均优于。


1

可以使用高阶方法,例如在用有限体积方法框架描述两相流体流动时,用它来求解水平集方程。在这种情况下,使用WENO和ENO方案对水平设置函数进行平整,并使用重新初始化步骤将其维持为与流体界面的距离函数。

检查一下:http : //ftp.cc.ac.cn/lcfd/WENO_mem.html

基本上,它们在处理流中的不连续性时用于CFD模拟中。


1

始终执行至少两个不同的命令。在一个有代表性的问题上,使用每个顺序解决一次。比较两者在足够精细的网格上以较低阶收敛。确保您的两个答案都合理接近,这表明低阶方案的数值行为并未严重破坏解决方案。如果有的话,扔低阶方案并重新开始。

假设您不必从头开始,请尽可能多地对网格进行粗化,同时仍保持合理准确的解决方案,该解决方案可以根据所需的特定数量来衡量。将较细网格上较低阶的计算成本与较粗网格上较高阶的计算成本进行比较。

选择哪个在操作上更具优势。记录反对者的流程,以便在代表问题或关注数量发生变化时可以重复进行。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.