4. 自由能泛函构建
相场模拟的核心是构造一个关于序参量场 η(r) 与浓度场 c(r) 的自由能泛函 F。所有微结构演化方程——无论是 Allen-Cahn 还是 Cahn-Hilliard——都写成对 F 的变分导数形式,因此 F 的物理正确性直接决定模拟结果是否可信。本节围绕“如何把热力学数据翻译成可计算的自由能泛函”展开,重点讲清体自由能、梯度能、双阱势、Landau 多项式以及 CALPHAD 数据接入这五个相互咬合的环节。
一、自由能泛函的总体结构
一个典型的二元体系自由能泛函可写为:
F = ∫ [ f_bulk(η, c) + f_grad(∇η, ∇c) + f_elastic(ε, η) ] dV
其中 f_bulk 是均匀体自由能密度,f_grad 是梯度能,f_elastic 是弹性应变能(本节暂不展开)。体自由能决定相平衡与驱动力,梯度能决定界面宽度与界面能,两者共同决定微结构形貌。工程上最常犯的错误是:体自由能随便取一个双阱,梯度系数随便填一个数,结果界面能比真实值大一个量级,模拟出的界面厚度和粗化速率完全失真。因此必须建立“热力学数据 → 自由能参数 → 界面能/界面宽度”的定量映射。
二、双阱势与Landau多项式
对于有序-无序转变,序参量 η 通常取 0(无序)和 1(有序)两个平衡值。最简单的双阱势为:
f_dw(η) = W η²(1-η)²
它在 η=0 和 η=1 处取极小值 0,在 η=0.5 处势垒为 W/16。W 越大,界面越锐、界面能越高。但双阱势只描述“两个相各自稳定”,无法描述温度、浓度对相稳定性的影响。为此引入 Landau 多项式:
f_L(η) = a₂η² + a₃η³ + a₄η⁴ + ...
系数 a₂、a₃、a₄ 是温度、浓度的函数。当 a₂>0 时 η=0 是唯一极小;当 a₂<0 时出现两个对称极小,对应有序相。a₃≠0 表示非对称转变(如一级相变),a₄>0 保证自由能有下界。实际建模中常把双阱势与 Landau 多项式结合:用 Landau 多项式描述热力学驱动力,用双阱势保证两个平衡态存在。
三、梯度能与界面能的关系
梯度能取最低阶各向同性形式:
f_grad = (κ_η/2)|∇η|² + (κ_c/2)|∇c|² + κ_ηc (∇η·∇c)
对于一维平衡界面,界面能 γ 与梯度系数 κ、势垒 W 满足:
γ = √(2 κ W) · ∫₀¹ √(η²(1-η)²) dη = √(2 κ W)/6
界面宽度 δ ≈ √(2κ/W)。这两个公式是参数标定的关键:若已知真实界面能 γ_exp 和界面宽度 δ_exp,可反解出 κ 和 W。例如 γ_exp=0.1 J/m²、δ_exp=1 nm,则 W≈6γ/δ≈6×10⁸ J/m³,κ≈3γδ/2≈1.5×10⁻¹⁰ J/m。注意单位统一到 J/m³ 和 J/m,否则量纲错误会导致时间步长和网格尺寸完全不可用。
四、CALPHAD热力学数据接入
CALPHAD 方法用 Redlich-Kister 多项式描述二元体系吉布斯自由能:
G_m(c,T) = c G_A(T) + (1-c) G_B(T) + RT[c ln c + (1-c) ln(1-c)] + c(1-c) Σ L_k(T)(2c-1)^k
其中 L_k(T) = a_k + b_k T 是相互作用参数,来自 TDB 数据库。接入相场模型时,体自由能 f_bulk 通常取为:
f_bulk(η,c) = h(η) G_ord(c,T) + [1-h(η)] G_dis(c,T) + W η²(1-η)²
h(η)=η²(3-2η) 是插值函数,G_ord 和 G_dis 分别是有序相和无序相的 CALPHAD 自由能。这样做的物理意义是:η=0 时体系取无序相自由能,η=1 时取有序相自由能,中间用插值过渡。W 项则保证两相之间有势垒,避免界面自动消失。
实际操作中,接入流程分四步:第一,从 TDB 文件读取 L_k 参数;第二,在目标温度 T 和成分范围 c∈[0,1] 上计算 G_ord 和 G_dis 的离散表格;第三,用最小二乘法把 G_ord - G_dis 拟合成关于 c 的多项式,得到 a₂(c)、a₃(c)、a₄(c);第四,把拟合系数写入相场代码的初始化模块。注意拟合区间要覆盖模拟中实际出现的成分范围,否则外推区域会出现非物理的自由能凹陷。
五、参数标定的实操示例
假设模拟 Fe-Cr 体系在 800 K 下的调幅分解,已知界面能 γ=0.05 J/m²,界面宽度 δ=1.5 nm,模拟网格 dx=0.5 nm。标定过程如下:
- 计算 W = 6γ/δ = 6×0.05 / 1.5×10⁻⁹ = 2×10⁸ J/m³。
- 计算 κ = 3γδ/2 = 3×0.05×1.5×10⁻⁹ / 2 = 1.125×10⁻¹⁰ J/m。
- 检查界面宽度是否可分辨:δ/dx = 1.5/0.5 = 3,满足至少 3 个网格点跨越界面的要求。
- 从 CALPHAD 数据库读取 800 K 下 G_ord 和 G_dis,拟合得到 a₂(c) = -1.2×10⁵ + 3.5×10⁵ c,a₄ = 8×10⁴ J/m³。
- 设置迁移率 M 和界面移动系数 L,使时间步长满足 dt < dx²/(4Mκ) 的稳定性条件。
六、常见错误与排查
| 现象 | 可能原因 | 排查方法 |
|---|---|---|
| 界面自动消失 | W 太小或 κ 太大 | 检查 γ 与 δ 是否满足 γ=√(2κW)/6 |
| 界面出现振荡 | 网格太粗或 dt 太大 | 加密网格或减小时间步长 |
| 相分离不发生 | a₂ 符号错误或驱动力不足 | 检查 a₂ 在目标温度下是否为负 |
| 成分超出物理范围 | CALPHAD 拟合区间不够 | 扩大拟合区间或加入惩罚项 |
自由能泛函构建是相场模拟的“地基”。体自由能决定相变热力学,梯度能决定界面物理,双阱势和 Landau 多项式提供数学形式,CALPHAD 数据提供物理参数。四者缺一不可,且必须通过界面能和界面宽度这两个可测量量进行闭环标定。只有当地基牢固时,后续的微结构演化模拟才具有定量预测能力。