3. 张量基础与坐标变换
各向异性本构建模的第一道门槛,不是材料参数本身,而是“同一个物理量在不同坐标系下写法不同”。如果坐标系约定混乱,后续的刚度矩阵、铺层角、纤维方向、实验数据都会对不上。本节把应力应变张量、Voigt 记号、坐标旋转矩阵以及弹性常数的变换与不变量串成一条可操作的链路。
一、应力与应变为什么必须是张量
连续介质中一点的应力状态由二阶张量 σij 描述,共 9 个分量;由于力矩平衡,σij = σji,独立分量降为 6 个。应变张量 εij 同样对称,独立分量也是 6 个。工程应变常写成 γxy = 2εxy,这是后续 Voigt 记号中必须特别小心的因子来源。
张量的意义在于:它按确定的规则随坐标系变换,而物理状态本身不变。设旧坐标系基矢为 ei,新坐标系基矢为 e′i,方向余弦矩阵 Qij = e′i·ej,则二阶张量变换为:
σ′ = Q σ Qᵀ
ε′ = Q ε Qᵀ
这里 Q 是正交矩阵,满足 QᵀQ = I,det(Q) = +1。若只做坐标旋转,Q 的每一行是新坐标轴在旧坐标系中的方向余弦。
二、Voigt 记号:把 3×3 压成 6×1
为便于写本构关系,把对称二阶张量按固定顺序排成 6 维向量。常用顺序为 (11, 22, 33, 23, 13, 12),对应记作 (1, 2, 3, 4, 5, 6)。应力向量直接取分量:
σ_V = [σ11, σ22, σ33, σ23, σ13, σ12]ᵀ
应变向量则要处理工程应变:
ε_V = [ε11, ε22, ε33, 2ε23, 2ε13, 2ε12]ᵀ
= [ε11, ε22, ε33, γ23, γ13, γ12]ᵀ
这样做的代价是:Voigt 向量之间的坐标变换不再是简单的 QσQᵀ,而需要构造 6×6 的 Bond 矩阵。若忽略这一点,用普通旋转矩阵直接乘 6 维向量,剪切分量会出错。
三、坐标旋转矩阵与 Bond 变换
设绕 z 轴旋转角 θ,从旧坐标到新坐标的方向余弦矩阵为:
Q = [ cosθ sinθ 0
-sinθ cosθ 0
0 0 1 ]
对 6 维 Voigt 应力向量,变换矩阵 Tσ 可由 Q 展开得到;对应变向量,还需引入工程应变因子,得到 Tε。二者关系为 Tε = R Tσ R-1,其中 R = diag(1,1,1,2,2,2)。实际编程时更稳妥的做法是:先把 6 维向量还原成 3×3 张量,用 QσQᵀ 旋转,再压回 6 维。这样可避免手工推导 Bond 矩阵时漏掉 2 倍因子。
刚度矩阵的变换为:
C′ = Tσ C Tεᵀ (按具体约定可能写作 Tσ C Tσᵀ 的变体)
工程上必须固定一套约定并全程一致。推荐约定:Voigt 顺序 (11,22,33,23,13,12),应变用工程剪应变,旋转矩阵 Q 的行是新轴在旧轴中的方向余弦。
四、各向异性弹性常数的变换与不变量
一般各向异性材料有 21 个独立弹性常数。正交各向异性材料有 9 个:E1、E2、E3、ν12、ν13、ν23、G12、G13、G23。横观各向同性(如单向纤维层)独立常数降为 5 个。这些常数在坐标旋转下会改变数值,但某些组合保持不变,即不变量。
典型不变量包括:
- 体积模量相关组合:C11+C22+C33+2(C12+C13+C23) 在旋转下不变;
- 迹:C11+C22+C33 不是完整不变量,但 Cijij 类缩并是;
- 特征值:刚度矩阵 C 的特征值在正交变换下不变,可用于校验旋转前后矩阵是否一致。
实际建模中,不变量最重要的用途是校验:把材料主方向刚度旋转到任意角度后,再旋转回来,应恢复原矩阵;若不能恢复,说明 Bond 矩阵或工程应变因子用错。
五、一个可复现的数值示例
取单向碳纤维环氧层板材料主方向参数(示例假设值):E1 = 135 GPa,E2 = E3 = 9 GPa,ν12 = ν13 = 0.30,ν23 = 0.45,G12 = G13 = 5.0 GPa,G23 = 3.0 GPa。先由柔度矩阵求逆得到主方向刚度 C0,再绕 3 轴旋转 θ = 45°,得到 C′。
操作流程如下:
- 按正交各向异性柔度矩阵 S 填入上述工程常数,注意 Sij 中泊松项需满足对称性;
- 对 S 求逆得到 C0,检查 C0 是否对称正定;
- 构造 Q(45°),用张量方式旋转 C0,得到 C′;
- 检查 C′ 的对称性,并计算 C′ 的特征值与 C0 的特征值是否一致;
- 把 C′ 再旋转 -45°,与 C0 比较,最大绝对误差应接近机器精度。
若第 5 步误差明显偏大,优先排查:工程剪应变是否用了 2 倍因子、Voigt 顺序是否一致、Q 是旧到新还是新到旧。这三处是各向异性坐标变换最常见的错误来源。
六、工程实现中的关键检查点
把上述流程写成代码时,建议固定以下检查点:第一,输入工程常数后先验证柔度矩阵对称且正定;第二,旋转前后分别计算刚度矩阵特征值,排序后比较;第三,用随机向量做一次“旋转—反旋转”闭环测试,误差应小于 1e-10 量级;第四,若材料是横观各向同性,检查旋转后是否仍满足横观各向同性关系,例如 C44 与 (C22-C23)/2 是否一致。