首页/文章/ 详情

150、Fluent瞬态计算的库朗数必须小于1吗?库朗数和时间积分格式的关系?

4月前浏览764

很多同学初次接触Fluent瞬态计算,肯定知道库朗数的概念,而且一定听过”瞬态计算要把库朗数控制在1以下,否则结果就不准,甚至会发散“的说法,这种说法 正确吗?


实际上这种说法是很不准确的,库朗数的数值和时间格式有关,而且大部分我们常用的时间格式下,库朗数都不需要小于1。今天我们好好说清楚这个问题!!


1.时间积分格式的由来

在文章148、Fluent 中为什么时间是"积分"而不是"离散"??中,我们详细介绍了时间积分的由来,这里简单说明。通用的时间演化表达式可以写为

 

其中函数F包含了所有的空间离散项。从t时刻到 t+Δt时刻,ϕ的真实变化应该是:

 

其中的ϕ(n+1)是下一个时间步的变量,也是我们想要求解的。这是一个精确的积分表达式。


由于F(ϕ)是ϕ的函数,而ϕ和时间有关,因此F(ϕ)也随时间变化。但问题是我们不知道 F(ϕ) 在时间区间内的具体变化,所以需要对积分进行近似。


如何近似呢??我们假设一种最简单的方式。假设 F(ϕ)保持为当前时刻的值 F(ϕn),那就是说在Δt时间内,F(ϕ)是不变的,一直是F(ϕn),那等式的右边就可以直接积分了:

 

将右边的Δt移动到等式左边,方程就变为了

 

此时ϕ(n+1)可以直接计算出来,这就是Fluent理论手册上,时间积分的一阶显式格式。


2.几种时间积分格式及特点

根据F(ϕ)的不同假设,可以将时间积分格式分为几种

 

2.1 一阶隐式

一阶隐式格式是 Fluent 瞬态计算中最常用的格式之一,也是默认选项。


其基本思想是:在计算ϕ(n+1)时,方程右端的空间项全部采用n+1时刻的值来计算。数学上可以表示为:

 

这里 F(ϕ)代表空间离散后的算子(包含对流、扩散和源项)。


特点:

无条件稳定:无论时间步长取多大,计算结果都不会因时间步长过大而发散(当然,精度会下降)。

 

这意味着,这种格式对库朗数没有要求



一阶时间精度:时间离散的误差与Δt 成正比,即O(Δt)。


计算效率高:每个时间步内需要求解一个代数方程组,但由于是隐式,允许取较大的时间步长。


适用场景:绝大多数工程瞬态问题,尤其是对时间精度要求不高的定常问题向瞬态过渡的计算。


2.2 二阶隐式

为了提高时间精度,Fluent 提供了二阶隐式格式。其离散形式为:

 

注意右端空间项仍然采用n+1时刻的值。


特点:

无条件稳定:与一阶隐式相同。


二阶时间精度:时间离散的误差与(Δt)²成正比,精度更高。


可能引入数值振荡:在流场变化剧烈或初始条件不连续的情况下,二阶格式可能产生非物理的振荡。


适用场景:对时间精度要求较高的瞬态问题,如涡旋脱落、声学分析等。使用时建议配合较小的初始时间步长。


2.3有界二阶隐式

这是 Fluent 中一个非常实用的改进格式,可以理解为“带限制器的二阶隐式格式”。

 


它的核心思想是:在二阶隐式格式的基础上,引入一个限制器。当检测到某个物理量可能出现非物理振荡时,限制器会自动将格式降阶为一阶隐式,从而保证解的有界性。


特点:

不适用于基于密度的求解器,仅适用于基于压力的求解器。


仅适用于多相的隐式体积分数离散化方案,而不适用于显式体积分数方案


不支持 Singhal 空化模型。



2.4 显式时间积分

显式格式与隐式格式的思路正好相反。在计算ϕ(n+1)时,方程右端的空间项采用n时刻的值:

 

这样一来,ϕ(n+1)可以直接由ϕ(n)显式计算得到,无需求解代数方程组。


特点:

它主要用于捕捉移动波的瞬态行为,例如激波,在这些情况下,它比隐式时间步进方法更准确且成本更低。


只有在显式密度基才可用,对于压力基或者隐式的密度基不可用

 


时间步长必须小于某个临界值,否则计算会发散。这个临界值通常由库朗数来表征。


3. 不同时间格式的库朗数

库朗数,通常写作CFL,是衡量时间步长与网格尺度匹配程度的一个无量纲数。它的物理意义可以理解为:在一个时间步长内,流体信息穿过网格单元的数量。


对于一维情况,库朗数的定义为:

 


其中,u 是当地流速,Δt是时间步长,Δx是网格尺度。在三维流动中,库朗数通常取各个方向的最大值。


3.1 显式格式与库朗数

对于显式时间积分格式,稳定性要求决定了库朗数必须小于某个临界值。对于大多数对流占优的问题,这个临界值通常是 1(采用一阶迎风空间格式时)。


也就是说,如果采用显式格式,我们需要确保 CFL≤1。否则,数值误差会迅速放大,导致计算发散。


这就带来了一个现实问题:如果网格非常细(Δx 很小),或者流速很快(u 很大),那么为了保证库朗数不大于 1,时间步长 Δt 就必须取得非常小。对于复杂三维问题,这往往意味着巨大的计算量。

 


这就是我们常听到的说法:瞬态计算,库朗数必须小于1;实际上只有显式时间积分格式,才需要满足这个要求。


而显式时间积分格式,只有在显式密度基才可用。对于压力基或者隐式的密度基,我们是用不到显示时间积分的,更不需要CFL≤1



3.2 隐式格式与库朗数

对于隐式格式,由于算法上是无条件稳定的,理论上库朗数可以取任意大的值。这也是隐式格式在工程应用中如此普及的核心原因。


但这里有一个重要的概念需要澄清:稳定并不等于精确。


当库朗数很大时(例如CFL>10 甚至 CFL>100),虽然计算不会发散,但时间离散误差会显著增大。尤其对于一阶隐式格式,过大库朗数会导致“数值黏性”人为增加,抹平流场中的瞬态细节。


所以,隐式格式中库朗数的取值,更多是一个精度与效率的权衡问题,而非稳定性问题。



3.3 实际工程中如何取值?

根据我个人的经验,给出一些参考数值:

 


从上面的内容可以看出库朗数小于1只是一种特殊的条件,而且还是不常用的情况。大部分情况下,库朗数可以大于1甚至远大于1,但需要考虑计算精度问题,对库朗数还是需要限制





来源:Fluent学习笔记
Fluent通用声学理论控制数控
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2026-04-08
最近编辑:4月前
Fluent学习笔记
博士 签名征集中
获赞 182粉丝 592文章 226课程 5
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈