一步一步建立直观
先预测,再点“演示本步”核对右图。每一步都重设到指定情形,随后可以自由修改参数。
01先看小桨轮,而非单个粒子
选择纯旋转场。每个点沿圆周运动,速度处处与半径垂直;把一个很小的桨轮放入场中,它会旋转,但一小团粒子的面积不会改变。对于场 ,散度为零,平面旋度为 。旋度读数与角速度差一个因子二。
02再看小片区域是否膨胀
选择径向增长场,速度与位置成正比。小片区域的两条边都按同一比例增长,面积的瞬时相对增长率因此是 。这解释散度为什么把不同坐标方向的伸缩率相加。单条轨线远离原点,并不单独构成散度的定义。
03旋转与压缩可以同时发生
第三种场把旋转与收缩叠加,粒子沿螺线向内运动。右图展示的是这一常系数场的轨线;散度与旋度分别检测局部面积变化和局部转动。一般空间变化的场需要在每个位置做局部计算,不能只看整条轨迹像不像旋涡。
2.17.1 流动场的一根箭头还不够¶
向量场在每个位置给出速度。要判断附近区域膨胀还是旋转,不能只看中心那根箭头,还要看周围箭头怎样变化。放入一个很小的方框,比较各边的流入与流出,就能测量局部净扩张趋势。
对 ,左右边的水平流量差主要来自 ,上下边的垂直差来自 。除以小面积再取极限,得到散度 。它关心的是速度变化带来的净流出,而不是速度本身大不大。
2.17.2 环流与膨胀是不同测量¶
再沿小方框边界绕一圈,计算速度沿切向的贡献。相对边的差产生 ,这是平面旋度。场 让小桨轮转动,却不膨胀,所以散度零、旋度非零。
场 则横向拉伸、纵向压缩,瞬时面积效应抵消,散度为零,也没有局部环流。零散度不是“什么都没发生”,而是两方向的面积效应恰好平衡。对这种线性场,追踪小方形会比看单根箭头清楚。
这些量都是局部一阶信息。把它们与整个区域的边界流量联系起来,需要散度定理或斯托克斯定理及其条件。这里只建立局部测量的意义;遇到全局势函数问题,还必须检查定义区域,而不能仅凭某一点或某个局部公式作结论。
与本图相连的定义与证明:4.1 · 长度平方的增长只由径向项控制。本节的具体条件与形式化范围见下文。
数学表述 2.17.1¶
散度衡量微小区域的净流出趋势,旋度衡量局部环流趋势。二者是不同的局部测量。
对平面向量场 ,,标量旋度为 。对于 ,散度为 ;对于 ,散度为零、旋度为 。
例 2.17.1 把概念用于具体计算
场 让面积按瞬时相对速率 膨胀;旋转场 保持局部面积却产生旋转。
练习 2.17.1¶
的散度和旋度?
展开解答与检查
均为零,但它仍会拉伸一个方向并压缩另一个方向。
Lean 对照 2.17.1 命题、证明与适用边界
计算对角线性向量场的两个偏方向导数之和;未形式化散度定理或斯托克斯定理。
Calculus.planar_divergence
theorem planar_divergence (a b : ℝ) :
deriv (fun x : ℝ => a*x) 0 + deriv (fun y : ℝ => b*y) 0 = a+b := by
have ha : deriv (fun x : ℝ => a*x) 0 = a := by
simpa using ((hasDerivAt_id (0:ℝ)).const_mul a).deriv
have hb : deriv (fun x : ℝ => b*x) 0 = b := by
simpa using ((hasDerivAt_id (0:ℝ)).const_mul b).deriv
rw [ha, hb]