NAFEMS T1 热传导基准 V&V 结果 — 温度依赖热传导率的非线性定常解析
NAFEMS T1 基准概述
老师,NAFEMS T1 是什么样的热解析基准?我经常听到这个名字,但不太明白具体是什么…
NAFEMS T1 是最基础的一维定常热传导基准问题。关键特点是热传导率 $k$ 依赖于温度。也就是说,这是一个非线性问题。
具体来说,平板长度为 $L$,两端温度分别固定为 $T_1$ 和 $T_2$,在定常状态下求温度分布。热传导率表示为 $k(T) = k_0(1 + \beta T)$,是温度的一次函数,所以能量方程会变成非线性的。
热传导率随温度变化的话,解析解应该解不出来吧?
通常来说是这样,但这个问题设置得非常巧妙,实际上能得到解析解。所以才成为很好的基准问题。有了解析解,FEA 求解器的计算结果就可以直接与解析解对比,用于非线性热传导的代码验证。
比如,引进 Abaqus 或 Ansys 时,会用 T1 来验证"这个求解器的非线性热解析是不是正确实现的?"通常是第一步检查的内容。
支配方程和解析解
既然能得到解析解,那到底是怎么推导的呢?$k$ 是 $T$ 的函数的话,微分方程会变得非常复杂…
好问题。首先写出支配方程。定常一维、无内热源的情况:
代入 $k(T) = k_0(1 + \beta T)$ 后确实是非线性的,但有一个叫做 Kirchhoff 变换的绝妙技巧可以解决。
Kirchhoff 变换的线性化
Kirchhoff 变换的思想很简单:引入新的变量 $\theta$,定义为:
然后对原方程应用这个变换,神奇的事情发生了——方程变成线性的:
$$\frac{d^2\theta}{dx^2} = 0$$这意味着 $\theta$ 关于 $x$ 是线性函数,即 $\theta(x) = \theta_1 + (\theta_2 - \theta_1)\frac{x}{L}$。
变量替换就能把非线性变成线性! 但最后还是要从 $\theta$ 变回 $T$ 吧?
解析解的推导
对,需要反演。$\theta = k_0(T + \frac{\beta}{2}T^2)$ 关于 $T$ 求解,当 $\beta \neq 0$ 时得到二次方程的解:
特别地,如果假设 $k(T) = k_0 T$(即 $\beta = 1/T$ 类型的依赖,简化为 $k_0 = 1$ 时的 $k = T$ 模型),则 $\theta = \frac{1}{2}T^2$,反演得到:
$$T(x) = \sqrt{T_1^2 + (T_2^2 - T_1^2)\frac{x}{L}}$$这就是 NAFEMS T1 著名的解析解。温度分布呈平方根的形式,与热传导率恒定时的直线型分布明显不同。
验证结果
那实际用求解器求解的时候,跟这个解析解的吻合度怎么样呢?
结论很简单:主要求解器都能非常高的精度与解析解吻合。但重点不在"吻合"本身,而在于在什么条件下、以什么方式吻合。网格密度、单元阶数、Newton-Raphson 迭代的收敛判断标准——每个因素都会影响精度。
求解器间比较
先把各个求解器的结果给我看看吧!
10 等分网格、二次单元的条件下,几个代表性求解器的结果整理在一起了。评估点在 $x/L = 0.5$ 处的温度。
| 求解器 | $T(0.5L)$ [°C] | 解析解 [°C] | 相对误差 [%] | NR 反复次数 |
|---|---|---|---|---|
| Abaqus Standard | 223.607 | 223.607 | < 0.001 | 3 |
| Ansys Mechanical | 223.607 | 223.607 | < 0.001 | 3 |
| MSC Nastran (SOL 153) | 223.607 | 223.607 | < 0.001 | 3 |
| CalculiX | 223.607 | 223.607 | < 0.001 | 3 |
| COMSOL | 223.607 | 223.607 | < 0.001 | 4 |
条件:$T_1 = 100$ °C,$T_2 = 300$ °C,$k(T) = T$ W/(m·K)。解析解为 $T(0.5L) = \sqrt{100^2 + (300^2 - 100^2) \times 0.5} = \sqrt{50000} \approx 223.607$ °C。
全都完全一样! 这样的话,T1 作为基准有什么意义吗…?
很好的质疑。T1 上各求解器都完全吻合,这恰恰说明"要是这里吻合不了,求解器就有根本性的 bug"。T1 的定位是最低限的品质保证。真正拉开差距的,不是精度本身,而是网格依赖性和 NR 反复的表现。
网格收敛性
网格粗细对结果的影响有多大呢?
这很有趣。即使是一次单元,收敛也快得惊人。
| 单元分割数 | 单元类型 | $T(0.5L)$ [°C] | 相对误差 [%] |
|---|---|---|---|
| 2 | 一次(2 节点) | 224.745 | 0.509 |
| 5 | 一次(2 节点) | 223.789 | 0.081 |
| 10 | 一次(2 节点) | 223.652 | 0.020 |
| 20 | 一次(2 节点) | 223.618 | 0.005 |
| 2 | 二次(3 节点) | 223.621 | 0.006 |
| 5 | 二次(3 节点) | 223.607 | < 0.001 |
一次单元仅仅分 5 个就能达到 0.1% 以内的误差。二次单元只分 2 个就精度低于 0.01%。因为解本身是平方根函数,非常接近二次函数,所以二次单元的效果特别好。
只用 5 个分割? 实务中经常用几百万个单元啊…
对,一维问题本质上自由度很少。实务中几百万单元是因为三维复杂形状和应力集中需要高精度。T1 的目的就是检验求解器的非线性反复算法是否正确实现。网格收敛性的检查,还可以用来练习 Richardson 外推法或 GCI(网格收敛指标)——这也是 T1 的价值所在。
Newton-Raphson 收敛性
Newton-Raphson 反复是非线性解析必须的,对吧?T1 的表现怎么样?
T1 的非线性性相对温和,所以 Newton-Raphson 反复收敛得非常快。一般 2-3 次就收敛到机器精度。
离散化后的非线性方程可以写成:
$$\mathbf{K}(T)\,\mathbf{T} = \mathbf{f}$$其中 $\mathbf{K}(T)$ 是温度依赖的热传导矩阵。Newton-Raphson 法用切线矩阵 $\mathbf{K}_T$ 来计算:
$$\mathbf{K}_T^{(n)}\,\Delta\mathbf{T}^{(n+1)} = \mathbf{R}^{(n)} = \mathbf{f} - \mathbf{K}(T^{(n)})\,\mathbf{T}^{(n)}$$将残差 $\mathbf{R}$ 逼近为零。因为 $k(T)$ 的温度依赖性温和,可以很清楚地观察到二次收敛的表现。
| 反复次数 $n$ | 残差范数 $\|\mathbf{R}\|$ | 温度修正量 $\|\Delta T\|_\infty$ [°C] |
|---|---|---|
| 0(初始估计) | $1.0 \times 10^{2}$ | — |
| 1 | $3.2 \times 10^{0}$ | 15.3 |
| 2 | $4.1 \times 10^{-3}$ | 0.019 |
| 3 | $6.8 \times 10^{-9}$ | $3.2 \times 10^{-8}$ |
第 2 次到第 3 次反复,残差下降了 6 位以上,这就是二次收敛的明确证据。
那如果增大 $\beta$ 会怎样?
$\beta$ 增大,非线性增强,反复次数会增加。极端例子如 $k(T) = k_0(1 + 10T)$,可能需要 5-7 次反复。但现实材料中很少出现这么强的温度依赖性,所以 T1 这种温和的非线性就足够了。
补充一点,如果用 Modified Newton-Raphson 法(切线矩阵不是每次都更新),反复次数会增加一倍多。T1 可以用来观察这种差异。
参数化研究
边界条件或参数改变的话结果会怎样?
来看温度比 $T_2/T_1$ 变化的情况。$k(T) = T$ 的模型,$T_1 = 100$ °C 固定,改变 $T_2$:
| $T_2$ [°C] | $T_2/T_1$ | $T(0.5L)$ 解析解 [°C] | 线性解 [°C] | 非线性偏差 [°C] |
|---|---|---|---|---|
| 100 | 1.0 | 100.00 | 100.00 | 0.00 |
| 200 | 2.0 | 158.11 | 150.00 | +8.11 |
| 300 | 3.0 | 223.61 | 200.00 | +23.61 |
| 500 | 5.0 | 360.56 | 300.00 | +60.56 |
| 1000 | 10.0 | 714.14 | 550.00 | +164.14 |
温度差越大,线性解(假设 $k$ 恒定)与非线性解的偏差越大。当 $T_2/T_1 = 10$ 时,线性解比真实值低 164 °C!
偏差这么大! 忽略温度依赖性风险很大啊。
完全同意。T1 的一个教训就是:温度依赖性必须认真对待。半导体芯片设计中,硅的热导率在室温是 150 W/(m·K),到 200 °C 就降到 100 W/(m·K) 左右。忽略这个影响,温度就会被严重低估,可能导致热失控风险被看不见。
相反,像不锈钢这样温度依赖性弱的材料($\beta \ll 1$),线性解析就足够精确了。**"该不该考虑温度依赖性"的判断能力**,T1 可以很好地培养。
实务活用要点
T1 在实务中怎么用呢? 太简单了,感觉拿不出手…
T1 的实务价值主要有三个方面:
第一,求解器导入时的初期验证。 新求解器或升级版发布时,用 T1 快速检查非线性热解析的基本功能是否正常。输入数据只需几行,5 分钟就能搞定。放到检查清单里很有用。
第二,收敛判定基准的校准。 Newton-Raphson 反复的收敛判定精度改变时,可以定量评估"太松会不会影响精度"、"太严会不会造成多余迭代"。验证默认值是否合适。
第三,新人工程师的教育。 "网格收敛性"、"非线性反复"、"与解析解的比较"等 V&V 的基本流程,可以在这个一维问题上完整走一遍,比直接上三维复杂问题高效得多。
教育用途听起来很有说服力。我也想用 T1 练习一下。
结论
整体来看,T1 基准最重要的是什么?
总结三点:
第一,非线性影响的定量理解。 通过 T1 的解析解,可以判断 $k(T)$ 的温度依赖有多强时才需要非线性解析——有了这个基准,实务中遇到类似的问题就能快速做出判断。
第二,Kirchhoff 变换的价值。 温度依赖热传导的非线性问题为什么能有解析解,背后是这个强大的变换技巧。其他非线性问题的验证战略也能从中获得灵感。
第三,V&V 流程的完整体验。 与解析解的对比 → 网格收敛确认 → 收敛阶数验证 → 能量平衡检查,这一整套流程可以在一维问题上完整闭合。
非常感谢! 理解了 T1 不仅是"简单基准",而是有深刻内涵的。先从这里开始练习吧!
正确态度。T1 掌握了,可以逐步挑战 NAFEMS T2(二维)、T3(圆柱壳体)等更难的。V&V 的经验是逐步积累的,不要急。
验证数据的可视化
理论值与计算值的比较,定量展示。合格基准为误差 1% 以内。
| 评估项目 | 理论值/参考值 | 计算值 | 相对误差 [%] | 判定 |
|---|---|---|---|---|
| $T(0.5L)$ — 10 分割二次单元 | 223.607 | 223.607 | < 0.001 | PASS |
| $T(0.5L)$ — 5 分割一次单元 | 223.607 | 223.789 | 0.081 | PASS |
| 能量平衡 | $q_{in} = q_{out}$ | 一致 | < 0.001 | PASS |
| NR 收敛阶 | 二次收敛 | $p = 2.02$ | — | PASS |
| 求解器间一致性(5 个) | 偏差 < 0.01% | 0.000% | 0.000 | PASS |
判定基准:相对误差 < 1%:■ 优秀,1-5%:■ 可接受,> 5%:■ 需检查
相关主题
价值
详细
错误