Navier-Stokes 求解器:如何根据非线性项调整时间步长?

计算科学 pde 流体动力学 时间积分
2021-12-15 16:13:38

我的代码解决了导电流体中不可压缩的 Navier-Stokes 方程以及感应方程:

tu+uu+2Ω×u=p+νΔu+(×b)×btb=×(u×b)+ηΔb

在哪里ub是速度和磁场,ην是扩散常数,p是压力,Ω参考系的旋转速率。我使用径向方向的有限差分和球谐展开来求解球面几何中的这个 PDE 系统。

让我们关注包含洛伦兹力的 Navier-Stokes 方程(×b)×b. 我对扩散项使用 Crank-Nicholson 半隐式方案,而非线性项uu(×b)×b被明确处理:

Aun+1=Bun+NL(un,bn)

在哪里unbn分别是我在时间步长的速度和磁场n, 和AB是包含时间步长的矩阵。(注意NL(un,bn)其实还包括2Ω×u为了方便,那p通过卷曲消除)

我想动态调整我的时间步长。对于 Navier-Stokes,可以使用通常的 CFL 标准,但是 Lorentz 力呢?我可以提出一些具体的标准,但这是我的问题:

有没有办法调整时间步长Δt只知道非线性项NL(un,bn)而忽略它的分析形式或物理意义? 某种广义的 CFL 标准?

我想过类似的事情NLΔt<cU(在哪里c是一个常数)。什么时候NL=uuU2Δx, 它简化为 CFLUΔtΔx<c. 这有意义吗?有没有更好的方法来思考这个问题?有没有关于这个主题的参考资料?

1个回答

如果你能写下你正在考虑的完整的 PDE 系统将会很有帮助,因为(至少对我来说)仍然存在一些歧义。如果您能更准确地描述离散化,这也会有所帮助。但我会根据给出的信息提供一个粗略的答案。

首先我们应该区分两个概念:(1)严格的CFL条件,它是收敛的必要条件;(2) 对 CFL 数量的限制对于稳定性而言既必要又充分。我想你对后者感兴趣,后者更具有实际意义。

您的想法是正确的——对于任何类型的传输 PDE 的典型显式离散化,确保稳定性的 CFL 数的限制将具有形式

ΔtcΔxUmax
在哪里Umax是最大的特征速度和c是一个常数,取决于数值离散化。稳定性条件以这种方式缩放的原因是空间离散化的特征值以这种方式缩放。对于你提到的对流术语,Umax=2max(U).

通常,如果解不平滑或通量非凸,则确定但是对于平滑解和凸通量,只是通量函数的雅可比的最大特征值。要了解更多信息,请获取一本关于双曲 PDE 的好书。我会推荐这个页面上的第二本书或第三本书有关非常简单的介绍,请查看该页面上第一本书的第 10 章。UmaxUmax