FDS中稳定性条件和分析
标签: 数值稳定性,FDS, Pyrosim
前言
用差分格式求解初值问题的数值解时,截断误差并非是误差的唯一来源,每一步的计算都会引入舍入误差,在做逐时间层的计算时,这种误差还会逐层传播积累。如果误差在传播过程中变得越来越大,以致于淹没真解,格式就是不稳定的。而一个稳定的格式,其误差应该是保持一个有界的范围。如果学习过计算流体的话,我们都会通过误差的傅里叶分析方法和Hirt启示性方法等方法分析数值的稳定性。我们此次主要从物理的角度来分析不稳定性条件。在FDS中,时间格式上采用显示格式,因此需要通过调整时间步长来满足稳定性条件,接下来就分别看看是如何做的。
从物理上理解数值不稳定性
- CFL(Courant-Friedrichs-Lewy)不稳定定性约束
直接上表达式:
C F L ≡ δ t ∥ U ∥ δ X ≤ 1 CFL\equiv\delta t\frac{\|U\|}{\delta X}\leq1 CFL≡δtδX∥U∥≤1,其中 ∥ U ∥ \|U\| ∥U∥表示的是速度的范数,而 δ \delta δ t表示的是时间步长, δ X \delta X δX表示的是空间步长。
一眼看上去,不知所云,但是我们稍微调整一下就得到:
δ t ∥ U ∥ ≤ δ X \delta t\|U\|\leq \delta X δt∥U∥≤δX
这不就是速度乘以时间小于距离么?那这个物理意义是什么呢?
意思就是在一个时间步长内,单元格上的速度产生的位移要小于网格的大小,也就是说我们的流体流动误差不能被单个控制体捕捉控制,这样数值不稳定性就可能发生了。
另外,在FDS中, ∥ U ∥ \|U\| ∥U∥采取三种范数,分别是 L 1 L_1 L1、 L 2 L_2 L2、 L ∞ L_\infty L∞范数,即:
- L ∞ L_\infty L∞范数: ∥ U ∥ δ X = m a