壁関数

分类: 流体解析(CFD) | 综合版 2026-04-06
CAE visualization for wall function theory - technical simulation diagram
壁関数

理论与物理

概述

🧑‍🎓

老师,经常听到“壁面函数要求 y+ 在30以上”这种说法,但为什么需要这样的条件呢?


🎓

壁面附近的湍流边界层具有粘性底层、缓冲层和对数层这种明确的结构。壁面函数正是利用了对数层的速度分布,以便在网格较粗的情况下计算壁面附近区域。因为无需直接求解粘性底层,所以可以大幅减少网格数量。


🧑‍🎓

意思是跳过粘性底层吗?


🎓

准确地说,并非“跳过”,而是用半经验函数来近似壁面附近的速度、温度和湍流量。这就是壁面函数的本质。


壁面边界层结构

🧑‍🎓

请先讲解一下边界层的结构。


🎓

从靠近壁面开始依次有三个区域。


区域$y^+$ 范围主导效应速度分布
粘性底层$y^+ < 5$分子粘性主导$u^+ = y^+$(线性)
缓冲层$5 < y^+ < 30$粘性与湍流混合过渡区域(无明确公式)
对数层$30 < y^+ < 300$湍流应力主导$u^+ = \frac{1}{\kappa}\ln(y^+) + B$
🎓

这里无量纲量的定义如下。


$$ y^+ = \frac{y\, u_\tau}{\nu}, \quad u^+ = \frac{U}{u_\tau}, \quad u_\tau = \sqrt{\frac{\tau_w}{\rho}} $$

$u_\tau$ 是摩擦速度,$\tau_w$ 是壁面剪切应力,$\nu$ 是运动粘度系数。


对数律(Law of the Wall)

🧑‍🎓

请详细讲解一下对数律的公式。


🎓

对数层中的速度分布由下式表示。


$$ u^+ = \frac{1}{\kappa}\ln(E\, y^+) $$

这里 $\kappa \approx 0.41$(冯·卡门常数),$E \approx 9.793$(针对光滑壁面的积分常数)。将其改写后得到,


$$ u^+ = \frac{1}{\kappa}\ln(y^+) + B, \quad B = \frac{1}{\kappa}\ln(E) \approx 5.5 $$

🧑‍🎓

粗糙壁面的情况会怎样呢?


🎓

对于粗糙壁面,常数会根据粗糙度高度 $k_s$ 进行修正。


$$ u^+ = \frac{1}{\kappa}\ln\left(\frac{y^+}{f(k_s^+)}\right) + B $$

这里 $k_s^+ = k_s u_\tau / \nu$ 是粗糙度雷诺数。如果 $k_s^+ < 2.25$ 则分类为水力光滑壁面,$k_s^+ > 90$ 则分类为完全粗糙壁面。


壁面函数的种类

🧑‍🎓

壁面函数也有种类之分吗?


🎓

大致分为3种。


壁面函数种类特征$y^+$ 要求
Standard Wall Function严格应用对数律。Launder-Spalding (1974)$30 < y^+ < 300$
Scalable Wall Function当 $y^+ < 11.225$ 时切换到粘性底层公式无限制(内部校正)
Enhanced Wall Treatment低雷诺数阻尼 + 壁面函数混合$y^+ \approx 1$ 为理想情况
🎓

Standard Wall Function 是最经典的,前提是第一层网格的 $y^+$ 在30~300范围内。超出此范围精度会显著下降。


🧑‍🎓

原来如此,所以才会说“$y^+$ 要在30以上”。反过来,如果是低雷诺数模型,就需要 $y^+ \approx 1$。

Coffee Break 闲谈

对数律的发现——Prandtl与弟子们脚踏实地的实验

作为壁面函数依据的“对数法则(log-law)”的发现,源于 Ludwig Prandtl 及其弟子们在20世纪初进行的细致管道湍流实验。远离壁面的湍流区域中速度分布遵循对数函数这一事实,是从当时的数据分析中凭经验发现的,理论推导是后来才补充的。这个对数律作为当今壁面函数的基础,在数百万的CFD计算中每天被使用,这可以说是100年前实验数据惊人的生命力。

各项的物理意义
  • 时间项 $\partial(\rho\phi)/\partial t$:想象一下拧开水龙头的瞬间。最初水流会不稳定地喷溅,过一会儿才会变成稳定的水流,对吧?描述这个“变化过程中”的就是时间项。心脏搏动导致血流脉动,发动机阀门每次开闭引起流动变化,这些都是非定常现象。那么定常分析是什么?就是只看“经过足够时间流动稳定之后”——也就是将此项设为零。计算成本会大幅下降,因此先用定常求解是CFD的基本策略。
  • 对流项 $\nabla \cdot (\rho \mathbf{u} \phi)$:把落叶丢进河里会怎样?会被水流带着往下游漂,对吧?这就是“对流”——流体运动搬运物体的效应。暖风的暖气能到达房间另一端,也是因为空气这个“搬运工”通过对流输送热量。这里有趣的是——这项包含“速度×速度”,因此是非线性的。也就是说,流速变快这项会急剧增强,变得难以控制。这就是湍流的根本原因。常见的误解:“对流和传导差不多”→ 完全不一样!对流是流动搬运,传导是分子传递。效率有天壤之别。
  • 扩散项 $\nabla \cdot (\Gamma \nabla \phi)$:有过在咖啡里倒入牛奶后放置不管的经历吗?即使不搅拌,过一会儿也会自然混合。那就是分子扩散。那么下一个问题——蜂蜜和水,哪个更容易流动?当然是水,对吧?因为蜂蜜的粘度($\mu$)高,所以不易流动。粘度越大扩散项越强,流体的运动就变得“粘稠”。雷诺数小的流动(缓慢、粘稠)中扩散占主导。相反,Re数大的流动中对流占压倒性优势,扩散则成为配角。
  • 压力项 $-\nabla p$:推注射器的活塞,液体就会从针头有力地射出,对吧?为什么呢?因为活塞侧压力高,针头侧压力低——这个压力差产生了推动流体的力。大坝放水也是同样的原理。天气图中等压线密集的地方会怎样?没错,会刮强风。“有压力差的地方就会产生流动”——这就是纳维-斯托克斯方程压力项的物理意义。这里的误解点:CFD的“压力”大多指表压而非绝对压力。切换到可压缩分析时结果突然变得奇怪,原因可能就是混淆了绝对压力/表压。
  • 源项 $S_\phi$:受热的空气会上升——为什么呢?因为比周围空气轻(密度低),被浮力推上去了。这个浮力作为源项添加到方程中。此外,燃气灶的火焰产生化学反应热,工厂的电磁泵对金属熔液施加洛伦兹力……这些都是“从外部向流体注入能量或力”的作用,用源项来表示。如果忘记源项会怎样?自然对流分析中忘记加入浮力,流体就完全不动——变成冬天房间里开了暖气但热空气不上升这种物理上不可能的结果。
假设条件与适用范围
  • 连续介质假设:克努森数 Kn < 0.01(分子平均自由程 ≪ 特征长度)时成立
  • 牛顿流体假设:剪切应力与应变速率呈线性关系(非牛顿流体需要粘度模型)
  • 不可压缩假设(Ma < 0.3 时):将密度视为常数。马赫数0.3以上需考虑可压缩性效应
  • Boussinesq近似(自然对流):仅在浮力项中考虑密度变化,其他项使用恒定密度
  • 不适用的情形:稀薄气体(Kn > 0.1)、超音速/高超音速流动(需要捕捉激波)、自由表面流动(需要VOF/Level Set等方法)
量纲分析与单位制
变量SI单位注意事项·换算备忘
速度 $u$m/s入口条件中从体积流量换算时,注意截面积单位
压力 $p$Pa区分表压与绝对压力。可压缩分析中使用绝对压力
密度 $\rho$kg/m³空气: 约1.225 kg/m³@20°C、水: 约998 kg/m³@20°C
粘度系数 $\mu$Pa·s注意与运动粘度系数 $\nu = \mu/\rho$ [m²/s] 混淆
雷诺数 $Re$无量纲$Re = \rho u L / \mu$。层流/湍流转换的判定指标
CFL数无量纲$CFL = u \Delta t / \Delta x$。直接关系到时间步长的稳定性

数值解法与实现

壁面函数的数值实现

🧑‍🎓

壁面函数在求解器内部具体是如何实现的?


🎓

壁面函数是作为壁面边界条件实现的。根据与壁面相邻的网格单元中心(质心)的值,计算出壁面处的剪切应力、热流密度和湍流量。基于FVM(有限体积法)的CFD求解器中,壁面通量的计算会通过壁面函数介入。


动量的壁面函数

🧑‍🎓

速度场对应的壁面函数是如何计算的?


🎓

根据对数律,反算壁面相邻单元中心速度 $U_P$ 与壁面剪切应力 $\tau_w$ 的关系。


$$ \frac{U_P}{u_\tau} = \frac{1}{\kappa}\ln(E\, y_P^+) $$

将其对 $\tau_w$ 求解,得到


$$ \tau_w = \frac{\rho\, \kappa\, U_P\, u_\tau}{\ln(E\, y_P^+)} $$

🎓

但是因为 $u_\tau = \sqrt{\tau_w/\rho}$,所以 $\tau_w$ 是隐式包含的。实现时使用牛顿法或简易代入法迭代求解,或者采用定义等效涡粘性的方法。


$$ \mu_{t,\text{wall}} = \frac{\rho\, \kappa\, u_\tau\, y_P}{\ln(E\, y_P^+)} - \mu $$

k 与 epsilon 的壁面边界条件

🧑‍🎓

湍流量 $k$ 和 $\varepsilon$ 需要施加什么样的边界条件?


🎓

壁面相邻单元的 $k$ 和 $\varepsilon$ 按如下方式设定。


$$ k_P = \frac{u_\tau^2}{\sqrt{C_\mu}}, \quad \varepsilon_P = \frac{u_\tau^3}{\kappa\, y_P} $$

这里 $C_\mu = 0.09$。$\varepsilon$ 通常直接作为单元中心值代入(固定值)。对于 $k$,有些求解器会求解到壁面相邻单元的输运方程,也有些求解器会用上式固定。


🧑‍🎓

原来不同求解器的处理方式不同啊。


🎓

没错。Ansys Fluent 中 $k$ 在求解输运方程的同时用壁面函数修正壁面处的生成项,$\varepsilon$ 则在壁面相邻单元强制使用上式的值。OpenFOAM 的 epsilonWallFunction 也是类似的实现。


温度的壁面函数

🧑‍🎓

也有针对热的壁面函数吗?


🎓

当然有。温度场也有类似于对数律的壁面函数。Jayatilleke (1969) 提出的使用P函数的形式是标准形式。


$$ T^+ = \text{Pr}_t \left[ \frac{1}{\kappa}\ln(E\, y^+) + P(\text{Pr})\right] $$

$$ P(\text{Pr}) = 9.24 \left[ \left(\frac{\text{Pr}}{\text{Pr}_t}\right)^{3/4} - 1\right]\left[1 + 0.28\, e^{-0.007\text{Pr}/\text{Pr}_t}\right] $$

🎓

这里 $\text{Pr}_t \approx 0.85$(湍流普朗特数),$\text{Pr}$ 是分子普朗特数。对于空气($\text{Pr} \approx 0.71$),P函数的修正很小,但对于油类($\text{Pr} > 100$)等高普朗特数流体会产生很大影响。


y+ 的事前估算

🧑‍🎓

在生成网格之前,有估算 $y^+$ 的方法吗?


🎓

使用平板边界层的经验公式进行估算是常规做法。


$$ C_f \approx 0.058\, Re_L^{-0.2} $$
$$ \tau_w = \frac{1}{2} C_f \rho U_\infty^2 $$
$$ u_\tau = \sqrt{\tau_w / \rho} $$
$$ y = \frac{y^+ \nu}{u_\tau} $$

🧑‍🎓

也就是说,可以从目标 $y^+$ 和特征雷诺数反算出第一层网格的厚度 $y$。这样就可以设置边界层网格了。

Coffee Break 闲谈

y+计算工具的真正价值——“事前估算”的文化

如今搜索“y+ calculator”会出现无数的在线工具,但这些工具的普及是在2010年代之后。在那之前的CFD工程师,都是用手算或表格计算来使用边界层解析解(如布拉修斯公式等),估算第一层网格的厚度。这是一种“先计算y+再设计网格”,而非“先试着生成网格进行计算再确认y+”的文化。

関連シミュレーター

この分野のインタラクティブシミュレーターで理論を体感しよう

シミュレーター一覧

関連する分野

この記事の評価
ご回答ありがとうございます!
参考に
なった
もっと
詳しく
誤りを
報告
参考になった
0
もっと詳しく
0
誤りを報告
0
Written by NovaSolver Contributors
Anonymous Engineers & AI — サイトマップ