力学

张量分析基础与连续介质力学的控制方程

引言

连续介质力学是固体力学与流体力学共同的理论基础。它将物质抽象为在空间上连续分布、无限可分的介质,用应力、应变、位移等场量描述其力学行为,而不追问物质内部的分子结构。这些场量大多是不随坐标系选取而改变的客观物理量,因此张量成为书写连续介质力学定律的自然语言:只有用张量写出的方程,才能在任意坐标系下保持形式不变。本文系统梳理 Cartesian 指标记号下的张量代数,建立变形几何学与应力分析的核心概念,最后以守恒律收束出对固体与流体同样成立的通用控制方程。

张量代数与指标记号

在三维 Euclidean 空间中取定直角坐标基 $\boldsymbol{e}_i$,任意矢量可写为 $\boldsymbol{v} = v_i \boldsymbol{e}_i$。这里采用 Einstein 求和约定:同一项中重复出现的下标隐含对 1 到 3 求和。两个最基本的特殊张量是 Kronecker 符号与置换(Levi-Civita)符号:

$$delta_{ij} = begin{cases} 1, & i = j \ 0, & i neq j end{cases}, qquad varepsilon_{ijk} = begin{cases} +1, & (i,j,k) text{为偶排列} \ -1, & (i,j,k) text{为奇排列} \ 0, & text{有重复指标} end{cases}$$

二者满足恒等式 $\varepsilon_{ijk}\varepsilon_{imn} = \delta_{jm}\delta_{kn} - \delta_{jn}\delta_{km}$,利用它可以机械化地证明几乎所有矢量恒等式。例如叉乘写作 $(\boldsymbol{a}\times\boldsymbol{b})_i = \varepsilon_{ijk}a_jb_k$,梯度、散度与旋度分别写作 $\partial_i\phi$、$\partial_i v_i$ 与 $\varepsilon_{ijk}\partial_j v_k$。

二阶张量可视为矢量到矢量的线性映射,其分量在坐标旋转 $Q_{ij}$ 下按 $T’_{ij} = Q_{im}Q_{jn}T_{mn}$ 变换,这一变换律正是”张量”的严格定义。任意二阶张量可唯一分解为对称部分与反对称部分:$T_{ij} = \frac{1}{2}(T_{ij}+T_{ji}) + \frac{1}{2}(T_{ij}-T_{ji})$。对称二阶张量(应力与应变均属此类)存在三个与坐标选取无关的标量不变量:

$$I_1 = T_{ii}, \qquad I_2 = \tfrac{1}{2}\left[(T_{ii})^2 - T_{ij}T_{ji}\right], \qquad I_3 = \det\boldsymbol{T}$$

其特征值(主值)$\lambda$ 满足特征方程 $\lambda^3 - I_1\lambda^2 + I_2\lambda - I_3 = 0$,对应的特征向量即主方向。下表汇总连续介质力学中常用运算的三种记号对照。

运算 实体记号 指标记号 说明
梯度 $\nabla\phi$ $\partial_i\phi$ 标量场升一阶
散度 $\nabla\cdot\boldsymbol{v}$ $\partial_i v_i$ 矢量场降一阶
旋度 $\nabla\times\boldsymbol{v}$ $\varepsilon_{ijk}\partial_j v_k$ 矢量场的局部转动
并矢 $\boldsymbol{a}\otimes\boldsymbol{b}$ $a_i b_j$ 构造二阶张量
双点积 $\boldsymbol{A}:\boldsymbol{B}$ $A_{ij}B_{ij}$ 收缩为标量
张量作用于矢量 $\boldsymbol{T}\cdot\boldsymbol{n}$ $T_{ij}n_j$ 线性映射

变形几何学

取参考构型中物质点的坐标为 $\boldsymbol{X}$,变形后位置为 $\boldsymbol{x} = \boldsymbol{\varphi}(\boldsymbol{X}, t)$。变形梯度张量 $\boldsymbol{F} = \partial\boldsymbol{x}/\partial\boldsymbol{X}$(分量形式 $F_{iJ} = \partial x_i/\partial X_J$)是刻画局部变形的核心量:物质线元按 $\mathrm{d}\boldsymbol{x} = \boldsymbol{F},\mathrm{d}\boldsymbol{X}$ 映射,体积元按 $\mathrm{d}v = J,\mathrm{d}V$ 缩放,其中 $J = \det\boldsymbol{F} > 0$ 表示局部体积比。

由于 $\boldsymbol{F}$ 同时包含纯变形与刚体转动,描述材料点的真实变形必须消除转动的影响。定义右 Cauchy–Green 张量 $\boldsymbol{C} = \boldsymbol{F}^{\mathsf{T}}\boldsymbol{F}$ 与 Green–Lagrange 应变张量:

$$\boldsymbol{E} = \frac{1}{2}\left(\boldsymbol{C} - \boldsymbol{I}\right), \qquad E_{IJ} = \frac{1}{2}\left(\frac{\partial u_I}{\partial X_J} + \frac{\partial u_J}{\partial X_I} + \frac{\partial u_K}{\partial X_I}\frac{\partial u_K}{\partial X_J}\right)$$

当位移梯度很小时,式中乘积项可以略去,$\boldsymbol{E}$ 退化为小应变张量 $\varepsilon_{ij} = \frac{1}{2}(u_{i,j} + u_{j,i})$,这正是线弹性力学使用的应变度量。$\boldsymbol{C}$ 的三个特征值等于主伸长比的平方,对应特征向量给出参考构型中的主方向;这组量与刚体转动无关,因此是构造各向同性本构关系的自然变量。

应力张量与守恒律

Cauchy 应力公理指出:过体内任一点、以 $\boldsymbol{n}$ 为单位法向的截面上,牵引力矢量由线性映射 $t_i = \sigma_{ij}n_j$ 给出。$\sigma_{ij}$ 即 Cauchy 应力张量,描述真实构型下单位面积上的内力,是连续介质力学中最重要的动力学量。在此基础上,普适的守恒律可写为:质量守恒(参考构型形式)$\rho J = \rho_0$;线动量守恒给出 Cauchy 第一运动方程:

$$\frac{\partial \sigma_{ij}}{\partial x_j} + \rho b_i = \rho \frac{\mathrm{d}v_i}{\mathrm{d}t}$$

其中 $b_i$ 为单位质量体力。角动量守恒在非极性介质中等价于应力张量的对称性 $\sigma_{ij} = \sigma_{ji}$;能量守恒则把机械功率与内能变化率、热流联系起来。值得强调的是,这些方程对固体与流体同样成立,二者的差别完全体现在本构关系——即应力与变形(或变形速率)之间的材料特定关系——之中。本系列后续文章讨论的广义胡克定律、牛顿黏性律与塑性流动法则,正是对这一缺口的不同填补方式。

数值实现

下面的程序用 NumPy 演示变形分析与应力分析的基本计算:给定变形梯度求右 Cauchy–Green 张量、Green 应变与主伸长比;给定应力张量求三个不变量、主应力与指定截面上的牵引力。

import numpy as np

# 变形梯度(例:单轴拉伸与简单剪切的组合)
F = np.array([[1.20, 0.15, 0.0],
              [0.00, 0.90, 0.0],
              [0.00, 0.00, 1.00]])
C = F.T @ F                        # 右 Cauchy-Green 张量
E = 0.5 * (C - np.eye(3))          # Green-Lagrange 应变张量
J = np.linalg.det(F)               # 体积比
lam2, N = np.linalg.eigh(C)        # C 的特征值 = 主伸长比的平方
print(f"J = {J:.4f}")
print("主伸长比:", np.round(np.sqrt(lam2), 4))
print("Green 应变 E:n", np.round(E, 4))

# Cauchy 应力张量(例:某点应力状态,单位 MPa)
sig = np.array([[120.0, 30.0,  0.0],
                [ 30.0, 60.0, 20.0],
                [  0.0, 20.0, 80.0]])
I1 = np.trace(sig)
I2 = 0.5 * (I1**2 - np.trace(sig @ sig))
I3 = np.linalg.det(sig)
print(f"nI1 = {I1:.1f}, I2 = {I2:.1f}, I3 = {I3:.1f}")
w, V = np.linalg.eigh(sig)         # 主应力与主方向
print("主应力:", np.round(w, 2))
n = np.ones(3) / np.sqrt(3.0)      # 截面法向 (1,1,1)/sqrt(3)
print("该截面牵引力 t =", np.round(sig @ n, 2), "MPa")

运行结果显示,该变形的体积比 $J = 1.08$,三个主伸长比约为 1.22、0.88 与 1.00,即材料沿一个主方向被拉伸、沿另一主方向被压缩。应力分析部分给出的三个主应力约 133.6、87.3、39.1 MPa,恰为不变量特征方程的三个根;而法向 $\boldsymbol{n} = (1,1,1)/\sqrt{3}$ 截面上的牵引力与坐标面上的力矢量完全不同——同一点、同一应力状态,在不同取向截面上产生不同的力,这正是”应力是张量而非矢量”的直观含义。

结论与展望

张量指标记号把连续介质力学的运动学与动力学统一在一套坐标无关的框架内:变形梯度 $\boldsymbol{F}$ 与 Green 应变 $\boldsymbol{E}$ 描述运动学,Cauchy 应力 $\sigma_{ij}$ 与三大守恒律描述动力学,而连接二者的本构关系留待具体理论补充。掌握这套语言后,弹性力学的应力-应变关系、流体力学的牛顿黏性假设、塑性与断裂理论中的屈服与破坏判据,都可以看作在同一框架下对 $\sigma_{ij}$ 的不同构造,这正是本系列后续文章的主线。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注