本节摘要:位移场是变形的原始记录;对它求导得到变形梯度张量,小变形下线性化即几何方程——六个应变分量与三个位移分量的微分关系。本节讲解从位移到应变的完整链条,并给出可复算的位移场判读实例。
实验室的光学测量能给出试件表面成千上万个点的位移矢量,但位移本身几乎没有判读价值:整块试件平移一毫米,处处位移可观,材料却纹丝没变;刚性转一圈,位移处处不为零,应变处处为零。材料"受了多少委屈"藏在位移的空间变化率里——邻点之间相对位置的拉扯与歪斜。从位移场到应变场,靠的是求导。
把变形前位于 x 的材料点搬到位形 y 处,映射 y 等于 x 加位移场 u。对 x 求导得到变形梯度张量 F,它同时携带变形与刚体转动两部分信息。小变形假设(应变远小于一、转角远小于一)允许把 F 拆开:对称部分就是应变张量,反对称部分是微小转动。刚体转动被识别并剔除——这正是第一章强调"应变是变形的相对度量"的兑现。
小变形下的**几何方程(柯西几何关系)**在直角坐标里只有三种花样:正应变是对应方向位移的偏导(εx 等于 u 对 x 的偏导);剪应变是两个交叉偏导之和(剪应变 γxy 等于 v 对 x 的偏导加 u 对 y 的偏导,张量分量记法是 γxy 的一半)。三个位移分量生成六个应变分量,账本记全。第四章后两节的全部分析——主应变、应变花、极坐标——都建立在这本账上。

取悬臂梁受端部载荷的经典近似位移场(材料力学版本):挠度 v 与 x 的三次方成正比,转角随 x 变化。对它求导,看应变分布说明什么。
# 由位移场求应变:sympy 求导演示(平面问题,坐标单位 mm) # 位移场取自悬臂梁初等解的简化版 import sympy as sp x, y = sp.symbols('x y') u = 2e-5 * x * y # 水平位移场 v = -1e-8 * x**3 # 铅垂挠度场 # 几何方程(小变形) eps_x = sp.diff(u, x) eps_y = sp.diff(v, y) gamma_xy = sp.diff(u, y) + sp.diff(v, x) print("eps_x =", eps_x) print("eps_y =", eps_y) print("gamma_xy =", gamma_xy) # 在三个代表点取值(梁跨中部、顶部/底部,以及近固端底部) for px, py in [(100, 5), (100, -5), (200, -5)]: ex = eps_x.subs({x: px, y: py}) gt = gamma_xy.subs({x: px, y: py}) print(f"点 ({px},{py}): eps_x = {ex:+.1e}, gamma_xy = {gt:+.2e}")
eps_x = 2.0e-05*y eps_y = 0 gamma_xy = 2.0e-05*x - 3.0e-08*x**2 点 (100,5): eps_x = +1.0e-04, gamma_xy = +1.70e-03 点 (100,-5): eps_x = -1.0e-04, gamma_xy = +1.70e-03 点 (200,-5): eps_x = -1.0e-04, gamma_xy = +2.80e-03
判读:εx 在同一截面随 y 反号——梁顶拉伸、梁底压缩、量级千分之一,这正是第六章梁弯曲"平面保持平面"结论的雏形;而梁高度方向 εy 等于零,说明初等理论把挤压效应忽略了(第六章讲剪切变形时会修正它)。剪应变沿跨长增长,峰值在近固端——剪应力危险截面在根部,与弯矩危险截面同址但规律不同。位移场判读的价值在于:先看应变的分布规律,再谈数值大小。
小变形是假设不是定律。橡胶拉伸、金属成形、塌索大挠度里,应变的"相对伸长率"定义失效(伸长一倍时应变该记一还是记零点六九),必须回到变形梯度:应变度量取 C 减 I 的函数(C 等于 F 转置乘 F),常用的是对数应变与格林应变。第九章的几何非线性与第七章的后屈曲都要用这套大变形语言。判读习惯同样要换:大变形下"小应变叠加"不再成立,转动不能忽略,应力也有柯西应力与第二类皮奥拉应力的分野——本册点到入口为止。
# 小应变与大应变的对比:一根杆拉长一倍 import math L0 = 1.0 L1 = 2.0 # 伸长一倍 eps_small = (L1 - L0) / L0 # 工程应变 eps_log = math.log(L1 / L0) # 对数应变 print(f"工程应变 = {eps_small:.3f},对数应变 = {eps_log:.3f}") # 分两步各拉 50%,对数应变可加,工程应变不可加 s1 = math.log(1.5); s2 = math.log(1.5) print(f"两步对数应变之和 = {s1 + s2:.3f}(等于一步到位)") print(f"两步工程应变之和 = {0.5 + 0.5:.3f}(对应伸长 2.25 倍,不是 2 倍)")
工程应变 = 1.000,对数应变 = 0.693 两步对数应变之和 = 0.693(等于一步到位) 两步工程应变之和 = 1.000(对应伸长 2.25 倍,不是 2 倍)
判读:伸长一倍时两种应变差了三成;分步加载时工程应变不能累加而对数应变可以——大变形计算选哪把尺子,结论会实质不同。小变形世界里两者几乎相等(应变千分位时差异可忽略),这就是初等理论可以放心用工程应变的原因。
几何方程能不能真的滤掉刚体运动,值得动手验一次。取微小刚体转动 θ 等于零点零零二弧度的位移场:u 等于负 θ 乘 y,v 等于 θ 乘 x。代入几何方程:εx 与 εy 两个偏导都是零,剪应变是负 θ 加 θ 之和,同样为零——位移场处处不为零,应变处处为零,锁有效。再叠加一个平移(位移加常数),偏导依旧不动。这两次验证的实验含义:DIC 测得的位移云图里,整体漂移与转台安装误差都会自动被几何方程筛掉,判读者拿到云图后第一动作就是把刚体部分剥掉看相对变形——现在你知道这一步为什么合法。
应变张量已到手。下一节给它建立记账规则:线应变、剪应变与体积变化。