什么是时间步长以及流体模拟中收敛所需的迭代次数

计算科学 流体动力学 模拟
2021-12-05 20:37:42

我的问题似乎很简单:

我使用一种新的数值方法来进行流体动力学模拟。我使用 t=0.001s 作为时间步长。但是我不知道我需要多少次迭代才能实现速度收敛,因为我看到即使迭代次数为 1000,速度仍然会增加。我想问有经验的科学家通常我需要多少次迭代以及它与时间的关系步骤,通常在流体动力学领域。我知道这取决于您使用的方法。但我只想获得一般指导。例如,如果我想在 1 小时内模拟一个真实世界,我应该使用什么时间步长和迭代次数?谢谢!

1个回答

答案要素:

许多流体动力学方法依赖于明确的时间推进方案。对于这类方案,经典的收敛条件是 Courant-Friedrichs-Lewy 条件。可以相当简单地理解:如果你有一个波在离散空间网格中传播,如果你希望你的计划保持稳定,那么波从一个网格点传播到另一个网格点的时间不应短于积分时间。基本上,这意味着波不能比信息传播得更快(这是合理的)。正如您从前面所了解的那样,这种情况与空间分辨率有关。

在一维中,is 可以表示如下: 是库朗数,是你最快波的速度,你的时间步长,你的空间分辨率,和一个限制你的方案的给定值。通常,对于流体动力学中的显式方案,然后,对于给定的分辨率,您可以推断出您的时间步长

C=uΔtΔxCmax
CuΔtΔxCmaxCmax1ΔxΔt