4. 材料热力学属性定义

在热力耦合分析中,材料属性往往不是常数。金属从室温升到数百摄氏度时,弹性模量会下降、热膨胀系数会上升、导热系数和比热容也会随温度改变。如果整段分析都用室温常数,温度场算出来偏差可能不大,但热应力会明显失真——因为热应力正比于弹性模量与热膨胀系数的乘积,这两个量恰恰都是温度的强函数。因此本节的核心任务,是把 Abaqus 中六类关键属性(导热系数、比热容、密度、弹性模量、泊松比、热膨胀系数)以“温度—属性值”表格的形式正确输入,并理解 Abaqus 对温度插值与外推的默认规则。

一、属性与材料行为的对应关系

先厘清每类属性服务于哪个物理场。导热系数 k 与比热容 c、密度 ρ 共同决定瞬态温度场的演化,其中热扩散率 α = k/(ρc) 控制温度波传播的快慢;弹性模量 E、泊松比 ν 与热膨胀系数 αe 则决定热应变与热应力。热应变的基本关系为 εth = αe(T)·(T − Tref),其中 Tref 是零热应变参考温度,必须在材料定义中显式给出,否则 Abaqus 默认取 0,会带来整段温度区间的应变偏移。

在 Abaqus/CAE 中,这些属性都位于 Property → Material 下:Thermal → Conductivity、Thermal → Specific Heat、General → Density、Mechanical → Elasticity → Elastic、Mechanical → Expansion。每个对话框都提供 Use temperature-dependent data 开关,勾选后表格会多出一列 Temp,即可逐行填入温度与对应属性值。

二、曲线输入的具体操作

以某低碳钢为例,假设我们有一组从手册与试验整理出的数据(以下数值为教学示例,非实测结果):

*Elastic, dependencies=1
 210000., 0.30,  20.
 195000., 0.29, 200.
 180000., 0.28, 400.
 160000., 0.27, 600.

*Expansion, zero=20., dependencies=1
 1.15e-5,  20.
 1.25e-5, 200.
 1.35e-5, 400.
 1.45e-5, 600.

*Conductivity, dependencies=1
 52.,  20.
 48., 200.
 43., 400.
 37., 600.

*Specific Heat, dependencies=1
 460.,  20.
 510., 200.
 600., 400.
 720., 600.

*Density
 7.85e-9

这里单位采用 mm–N–s–t 一致单位制:弹性模量 MPa、导热系数 mW/(mm·K)(即 W/(m·K) 数值相同)、比热容 mJ/(t·K)、密度 t/mm³。注意 dependencies=1 表示该属性只依赖一个场变量(温度);若还要考虑场变量(如相分数),可设为 2 并增加列。密度在多数工程温度区间变化很小,通常按常数处理即可,不必强行做成温度相关。

在 CAE 中逐行输入时,温度列必须单调递增,Abaqus 不做排序检查,乱序会导致插值错误。建议先在文本编辑器中按温度升序整理好,再粘贴进表格。

三、插值与外推规则

Abaqus 对温度相关属性默认采用线性插值:给定温度落在两个数据点之间时,属性值按线性内插;落在数据范围之外时,则按最近两点的斜率线性外推。这意味着如果分析最高温度是 650 ℃,而数据只到 600 ℃,Abaqus 会沿 400–600 ℃ 段的斜率继续外推,可能得到物理上不合理的值。稳妥做法是把数据表覆盖到略高于分析峰值温度,或在 Material 级别设置 *Physical Constants 之外的截断策略——更常见的工程做法是直接补一个高温端点。

另一个易错点是热膨胀系数的定义方式。Abaqus 的 *Expansion 输入的是割线热膨胀系数(相对参考温度的总膨胀量除以温差),而不是微分膨胀系数。若手册给的是微分值 αinst,需要先积分换算:αsec(T) = (1/(T−Tref))·∫TrefT αinst dT。两者在宽温区差别可达百分之几,直接影响热应力幅值。

温度相关材料属性:输入 → 插值 → 求解影响 属性数据表(示例) T(℃) E(MPa) α(1e-5) k 202100001.1552 2001950001.2548 4001800001.3543 6001600001.4537 c: 460→720 mJ/(t·K) ρ: 7.85e-9 t/mm³(常数) ν: 0.30→0.27 zero=20℃ 参考温度 dependencies=1 温度列必须单调递增 ⚠ 割线 vs 微分膨胀系数 ⚠ 外推超出数据范围 Abaqus 插值规则 T E 内插 外推 数据范围内:线性内插 数据范围外:线性外推 → 建议补高温端点 插值连续,但斜率突变 对求解结果的影响 温度场 k、c、ρ → 热扩散率 α 影响升温速率与梯度 热应变 αe(T)·(T−Tref) 参考温度决定零点 热应力 σ ∝ E(T)·αe(T)·ΔT E 下降 → 应力松弛 验证要点 检查峰值温度是否在 数据覆盖范围内

四、输入后的检查与验证

属性填完后不要直接提交计算。建议做三步检查。第一,在 Property 模块用 Material → Evaluate 或直接查看 Query → Material Data,确认各温度点的属性值被正确读入,尤其注意单位换算是否一致。第二,检查分析步的峰值温度是否落在数据表范围内;若超出,补点或改用常数外推。第三,做一次纯热传导试算,只激活 Heat Transfer 分析步,输出几个监测点的温度—时间曲线,与手算的集总参数或一维解析解对比,确认 k、c、ρ 的组合行为合理,再打开耦合分析。

常见错误:把 *Expansion 的 zero 参数漏掉,Abaqus 默认参考温度为 0 K,导致室温下就出现巨大热应变;或者把微分膨胀系数直接填入割线系数栏,宽温区热应力偏差可达 5%~10%。

最后强调一点:温度相关属性会显著增加求解的非线性程度。Abaqus 在每个增量步中根据当前温度重新插值材料属性,若温度变化剧烈,可能需要减小初始增量步或开启 Automatic Stabilization。属性曲线本身不必追求极高阶的拟合,工程上分段线性已足够,关键是数据点覆盖分析温区、参考温度明确、单位自洽。