2. 连续介质热力学基础
损伤本构模型不是凭经验拼凑出来的应力—应变公式,它必须服从热力学基本定律。连续介质热力学为损伤建模提供了一套“合法性判据”:哪些变量可以自由选取,哪些演化方向被允许,哪些参数组合会导致模型在循环加载中凭空产生能量。理解这套框架,是判断一个损伤模型能否用于工程计算的前提。
状态势:把可逆能量存进一个标量函数
在等温小变形假设下,最常用的状态势是Helmholtz自由能密度 ψ。它取为状态变量(应变 ε、温度 T)和内变量(损伤 D、塑性应变 εp、背应力 α 等)的函数:
ψ = ψ(ε, T, ε^p, D, α, …)
对损伤建模而言,关键是把损伤变量放进 ψ 中。以各向同性损伤为例,一种常见形式是
ψ = (1 - D) · ψ₀(ε^e)
= (1 - D) · (1/2) · ε^e : C₀ : ε^e
其中 C₀ 为无损弹性刚度张量,εe = ε − εp 为弹性应变。这个写法直接给出两个重要结果:应力 σ = ∂ψ/∂εe = (1 − D) C₀ : εe,即损伤以刚度折减方式进入本构;同时得到损伤的共轭热力学力(损伤驱动力)
Y = −∂ψ/∂D = (1/2) · ε^e : C₀ : ε^e = ψ₀(ε^e) ≥ 0
Y 就是弹性应变能密度,恒非负。这说明损伤驱动力天然由弹性储能提供,而不是人为设定的“损伤阈值函数”。若把 ψ 写成 (1 − D)² 形式,则 Y 会变成 2(1 − D)ψ₀,驱动力随损伤增大而衰减,模型在软化段的响应会明显不同。因此状态势的具体形式,直接决定损伤演化的强弱与路径。
耗散不等式:约束演化方向
Clausius–Duhem 不等式(等温、小变形)要求总耗散非负:
Φ = σ : ε̇ − ψ̇ ≥ 0
将 ψ 的链式展开代入,并利用 σ = ∂ψ/∂εe,可把不等式整理为内变量耗散的求和形式:
Φ = σ : ε̇^p + Y · Ḋ + A : α̇ + … ≥ 0
其中 A 为背应力的共轭力。对损伤项,由于 Y ≥ 0,只要保证 Ḋ ≥ 0,损伤耗散 Y·Ḋ 就自动非负。这给出损伤建模中最基本的约束:损伤变量必须单调不减,即损伤不可逆。任何允许 D 减小的“愈合型”模型,若没有额外引入愈合机制和对应的能量项,都会违反耗散不等式。
进一步,若同时存在塑性,塑性耗散 σ:ε̇p 与损伤耗散 Y·Ḋ 必须各自或联合满足非负。工程中常见的做法是采用关联流动或非关联势,并保证损伤乘子 λ̇D ≥ 0。这样,损伤演化方程通常写成
Ḋ = λ̇_D · ∂F_D/∂Y , λ̇_D ≥ 0 , F_D ≤ 0 , λ̇_D · F_D = 0
这就是损伤的 Kuhn–Tucker 加载/卸载条件:只有当损伤势 FD 达到零且继续加载时,损伤才演化;卸载或 FD < 0 时,Ḋ = 0,损伤冻结。
内变量理论:把不可逆历史压缩成有限个变量
内变量理论的核心思想是:材料当前状态不仅取决于当前可观测的 ε 和 T,还取决于加载历史。但历史不能无限存储,于是用有限个内变量 q = (εp, D, α, …) 来代表历史效应。状态势 ψ = ψ(ε, T, q),而 q 的演化由耗散不等式约束下的演化方程给出。
对损伤建模,内变量选取直接决定模型能力:
- 标量 D:各向同性损伤,适合微孔洞型损伤,如延性金属、混凝土受压。
- 张量 D(二阶或四阶):各向异性损伤,适合复合材料、轧制板材。
- 多个损伤变量 D₁、D₂:分别描述不同机制,如基体开裂与纤维断裂。
- 塑性应变 εp 与 D 耦合:延性损伤中,塑性变形驱动孔洞长大。
内变量越多,模型越灵活,但参数标定越困难,且必须逐一满足耗散约束。工程上常在“能描述主要机制”和“参数可标定”之间折中。
约束作用:热力学如何“管住”损伤模型
把上述框架落到建模实践,热力学给出四条硬约束:
- 状态势必须存在,且应力、损伤驱动力由它求导得到,不能独立随意指定。
- 损伤耗散非负,要求 Y·Ḋ ≥ 0;结合 Y ≥ 0,得 Ḋ ≥ 0。
- 损伤演化必须有加载条件,即 FD ≤ 0、λ̇D ≥ 0、互补条件成立。
- 耦合项不能破坏总耗散,塑性与损伤的交叉项需整体校验。
一个可执行的校验示例
以 Lemaitre 延性损伤模型为例,取 ψ = (1−D)·(1/2)·εe:C₀:εe,损伤驱动力 Y = ψ₀。设损伤势
F_D = Y − Y₀ − K·(ε^p_eq)^n ≤ 0
其中 Y₀ 为损伤阈值,εpeq 为等效塑性应变,K、n 为材料参数。演化方程取
Ḋ = (Y / S)^s · ε̇^p_eq , 当 F_D = 0 且 ε̇^p_eq > 0
校验耗散:Y·Ḋ = Y·(Y/S)s·ε̇peq。由于 Y ≥ 0、S > 0、ε̇peq ≥ 0,该乘积非负,满足约束。若把演化方程写成 Ḋ = (Y/S)s·ε̇peq 但允许 ε̇peq 为负(即塑性卸载时),则 Ḋ 会变负,违反不可逆性。因此实现时必须把损伤演化严格限制在塑性加载分支内。
在数值实现中,通常在每个积分点先更新塑性应变,再判断 FD 是否大于零;若大于零,则用返回映射把 D 更新到 FD = 0 的面上,并保证 ΔD ≥ 0。这样得到的切线刚度与热力学一致,隐式求解的收敛性也更好。
把这张约束链记住,就能在阅读或构建损伤模型时快速定位问题:状态势决定驱动力形式,耗散不等式决定演化方向,内变量理论决定历史如何被压缩,而数值实现必须把加载/卸载条件严格翻译成 ΔD ≥ 0 的更新逻辑。热力学不是附加在模型外面的装饰,而是贯穿变量选取、方程构造和积分算法的一条主线。