正则曲线与弧长参数

    曲线 `bm r(t)` 是参数 `t` (可以视为时间) 的一元向量函数, `bm v = ("d"bm r)/dt` 称为曲线的切向量 (或速度), `v = |bm v|` 是切向量的模 (即速率).
    正则曲线 是满足下面条件的曲线:
  1. 无穷可微: 每一分量是 `C^oo` 函数;
  2. 速率不为零: `v = |bm v| = |("d" bm r)/dt| gt 0`, `AA t in (a, b)`.

以后我们提到曲线, 如无特别说明, 都指正则曲线.

正则曲线在 `(0, T)` 上的弧长为 `s = int_0^T "d"s = int_0^T |"d"bm r| = int_0^T v dt`. 由于 `v gt 0`, 上式确定了时间 `T` 关于 `s` 的隐函数. 故可令曲线以 `s` 为参数, 有 `("d"bm r)/("d"s)` `= dt/("d"s) ("d"bm r)/dt` `= (bm v)/v`. 即曲线在弧长参数下, 速率恒为 1. 这一性质对今后的讨论很有帮助.

今后我们用字母右上角的撇表示对 `s` 求导, 如 `bm r' = ("d"bm r)/("d"s)`; 用字母上的点表示对 `t` 求导, 如 `dot bm r = ("d"bm r)/dt`; 用未加粗的字母表示向量的模, 如 `v = |bm v|`; 用帽子表示单位向量, 如 `hat bm v = (bm v)/v`.

    极坐标下的矢量分析 我们来求 `dot r` 和 `dot hat bm r`. 它们分别代表 `bm r` 在长度和方向上的变化.
  1. 因为 `(:bm r, dot bm r:)` `= 1/2 "d"/dt (:bm r, bm r:)` `= "d"/dt (r^2/2)` `= r dot r`, 所以 `dot r = (:bm r, dot bm r:)//r`.
  2. 记 `bm theta = dot hat bm r`, 则 `bm theta` `= "d"/dt(bm r/r)` `= (r dot bm r - dot r bm r) / r^2` `= (dot bm r (:bm r, bm r:) - bm r (:bm r, dot bm r:)) / r^3` `= ((bm r ^^ dot bm r) ^^ bm r) / r^3`. `= (bm h ^^ bm r)/r^3`. 其中 `bm h = bm r ^^ dot bm r` 称为角动量, 它垂直于 `bm r, dot bm r` 所在的平面. 我们从长度和方向两方面来看上式: 长度上, 两边取模得 `h = r^2 theta`; 方向上, `bm r, bm theta, bm h` 两两垂直成右手系.
  1. `bm r` 的长度不变, 即 `r` 为常数当且仅当 `(:bm r, dot bm r:) = 0`, 即 `bm r` 与 `dot bm r` 垂直;
  2. `bm r` 的方向不变, 即 `hat bm r` 为常向量当且仅当 `bm r ^^ dot bm r = bb 0`, 即 `bm r` 与 `dot bm r` 平行.

平面与空间正则曲线

相关记号

二维情形 设 `bm r` 为平面曲线. 取弧长参数 `s`, 这时切向量 `bm v` 恰为单位向量. 记 `bm t = hat bm v`, 由 `bm t` 的长度不变知 `bm t _|_ bm t'`. 令 `bm n` 是 `bm t` 的法向量, (规定 `bm t, bm n` 成右手系), 则存在标量函数 `kappa(s)` 使得 `bm t' = kappa bm n`. `kappa` 称为曲率. `{bm r"; " bm t, bm n}` 称为曲线的 Frenet 标架. `kappa gt 0` 时, `bm n` 沿逆时针转动 (曲线沿逆时针绕行).

直角坐标系下, `bm r = (x, y)`, `quad "d"bm r = (dx, dy)`, `quad "d"s = |"d"bm r| = sqrt(dx^2+dy^2)`
`quad bm n = [cos pi//2, -sin pi//2; sin pi//2, cos pi//2] bm t` `= [0, -1; 1, 0] ("d"bm r)/("d"s)` `= (-dy/("d"s), dx/("d"s))`.

`bm t, bm n, bm b` 形成右手系, 且均为单位向量. `{bm r"; " bm t, bm n, bm b}` 称为曲线的 Frenet 标架. 以这三个向量为法向量的平面分别称为法平面, 从切平面密切平面.

`tau gt 0` 时, 曲线沿正向穿越密切平面 (即在 `(bm t, bm b)` 平面的投影是上升曲线). 不同于平面曲线, 在空间曲线中, 总有 `kappa ge 0`.

直观上, 空间曲线的曲率可以理解为向心力, 挠率则可以理解为密切平面的运动速率.

Frenet 方程

分部积分 设 `bm a, bm b` 为 `t` 的函数, 则 `(:bm a, dot bm b:) = "d"/dt (:bm a, bm b:) - (:dot bm a, bm b:)`. 特别当 `(:bm a, bm b:)` 为常数 (特别的特别, 当两向量正交) 时, `(:bm a, dot bm b:) = -(:dot bm a, bm b:)`.

    设 `bm e_1, bm e_2, cdots, bm e_m` 是参数 `t` 的向量函数, 且不论 `t` 取何值, 它们始终都是两两正交的单位向量, 即 `(:bm e_i, bm e_j:) = delta_(i j)` `= {1, if i = j; 0, if i != j:}`. 记 `omega_(i j) = (:dot bm e_i, bm e_j:)`, 则
  1. `omega_(i j) + omega_(j i) = 0`; 特别地 `omega_(i i) = 0`.
  2. `"d"/dt [bm e_1; vdots; bm e_m]` `= (omega_(i j)) [bm e_1; vdots; bm e_m]`.
  3. 此定理表明, 微分算子 `"d"` 在正交基底下的矩阵是反对称矩阵.
  1. 由 `(:bm e_i, bm e_j:) = 0` 求导即得;
  2. 设 `dot bm e_i = sum_(k=1)^m c_k bm e_k`, 两边与 `bm e_j` 作内积, `omega_(i j) = sum_(k=1)^m c_k delta_(k j)` `= c_j`. 即得证.

现在可以导出二维和三维的 Frenet 方程, 由引理知道, 它们的系数矩阵是反对称的:

二维情形: 由已知 `bm t' = kappa bm n = 0 bm t + kappa bm n`, 借助引理得 `"d"/("d"s) [bm t; bm n] = [0, kappa; -kappa, 0][bm t; bm n]`.

三维情形: 由主法向量的定义知 `omega_(12) = kappa`, `omega_(13) = 0`. 又 `omega_(23) = (:bm n', bm b:) = tau`, 于是 `"d"/("d"s) [bm t; bm n; bm b] = [ 0, kappa, 0; -kappa, 0, tau; 0, -tau, 0; ][bm t; bm n; bm b]`.

杂例

`E^3` 的正则曲线 `bm r(t)` 的曲率和挠率分别为 `kappa(t) = |bm v ^^ dot bm v|/v^3`, `quad` `tau(t) = {:(bm v, dot bm v, ddot bm v):}/|bm v ^^ dot bm v|^2`. 其中 `bm v = dot bm r`.

  1. 记 `bm beta = bm v ^^ dot bm v`, 由 `kappa bm n` `= ("d"bm t)/("d"s)` `= ("d"bm t)/dt dt/("d"s)` `= dot hat bm v // v` `= bm beta ^^ bm v // v^4`, 注意 `(:bm v, bm beta:) = 0`, 两边取模即得结论.
  2. 单位化, 得 `bm n = (bm beta ^^ bm v)/(beta v)` `= (bm beta)/beta ^^ bm t`. 我们知道 `bm n = bm b ^^ bm t`, 下证 `bm b = bm beta // beta`: `bm b = bm t ^^ bm n` `= (bm v)/v ^^ (bm beta ^^ bm v) / (beta v)` `= ((:bm v, bm v:) bm beta - (:bm v, bm beta:) bm v)/(v^2 beta)` `= bm beta // beta`. 进一步, `dot bm beta = bm v ^^ ddot bm v`,
    `bm beta ^^ dot bm beta` `= bm beta ^^ (bm v ^^ ddot bm v)` `= (:bm beta, ddot bm v:) bm v - (:bm beta, bm v:)ddot bm v` `= (:bm beta, ddot bm v:) bm v` `= (bm v, dot bm v, ddot bm v) bm v`.
    记 `gamma = (bm v, dot bm v, ddot bm v)`, 有 `dot bm b` `= (bm beta ^^ dot bm beta) ^^ bm beta // beta^3` `= gamma/beta^3 bm v ^^ bm beta` `= -(gamma v)/beta^2 bm n`. 最终 `tau = (:("d"bm n)/("d"s), bm b:)` `= -1/v (:dot bm n, bm b:)` `= 1/v (:bm n, dot bm b:)` `= gamma/beta^2`.

`E^2` 的正则曲线 `bm r(t) = (x(t), y(t))` 的曲率 `kappa(t) = (dot x ddot y - ddot x dot y)/ ({:dot x:}^2 + {:dot y:}^2)^(3//2)`.

自然, `kappa` 可以通过计算 `("d"^2 bm r)/{:"d"s:}^2` 与 `bm n` 关于 `x, y` 的表达式来求得. 不过也可以将二维问题视为三维问题, 利用上题结论, `kappa(t) = +- (dot x ddot y - ddot x dot y)/ ({:dot x:}^2 + {:dot y:}^2)^(3/2)`. 为确定其符号, 设 `kappa != 0`, 因为 `{bm t, bm n}` 为正定向的, 所以 `(bm t, bm n, bm k) gt 0`, `bm k` 是 `z` 轴的单位向量. 由于 `bm n = 1/kappa ("d"bm t)/("d"s)`, 上式化为 (??) `(dot bm r, ddot bm r, kappa bm k) gt 0`, 即 `|dot x, dot y, 0; ddot x, ddot y, 0; 0, 0, kappa| gt 0`. 可见前述式子应当取正号.

在极坐标下, 曲线 `r = f(theta)` 的曲率 `kappa(theta) = (r^2 + 2{:r':}^2 - rr'')/(r^2 + {:r':}^2)^(3//2)`. 其中各导数均表示对 `theta` 求导.

`{ x = r(theta) cos theta; y = r(theta) sin theta; :}` `{ x' = r' cos theta - r sin theta; y' = r' sin theta + r cos theta; :}` `{ x'' = r'' cos theta - r' sin theta - y'; y'' = r'' sin theta + r' cos theta + x'; :}` 易知 `{:x':}^2 + {:y':}^2 = r^2 + {:r':}^2`, 将这些计算结果代入上一题, 有 `kappa = (r^2 + {:r':}^2)^(-3/2)({:x':}^2 + x'(r'' sin theta + r' cos theta) - y'(r'' cos theta - r' sin theta) + {:y':}^2)`, 即为所求.

圆柱螺旋线 `bm r(t) = (a cos t, a sin t, bt)` (`a gt 0`) 的曲率的挠率分别为 `kappa = a/(a^2+b^2)`, `quad tau = b/(a^2+b^2)`. 有趣的是, 上式的反函数具有相同形式: `a = kappa/(kappa^2+tau^2)`, `quad b = tau/(kappa^2+tau^2)`. 事实上, `f(bm r) = bm r//r^2` 正是关于单位圆的反演变换.

平面曲线的曲率恒等于 0 当且仅当它是直线; 恒等于非零常数当且仅当它是半径为 `1/kappa` 的圆.

设空间曲线 `bm r` 的曲率 `kappa` 和挠率 `tau` 为常数, 则

  1. `kappa = 0`, `bm r` 是直线;
  2. `kappa gt 0`, `tau = 0`, `bm r` 是半径为 `1/kappa` 的圆;
  3. `kappa gt 0`, `tau != 0`, `bm r` 是半径为 `kappa/(kappa^2+tau^2)`, 速率为 `tau/(kappa^2+tau^2)` 圆柱螺旋线.

空间曲线的曲率恒不等于 0 时, 它落在一张平面上当且仅当其挠率恒等于 0.

设曲线 `bm r` 落在以 `bm a` 为单位法向量的平面上, 则 `bm r` 的切向量与 `bm a` 垂直, 即 `(:bm t, bm a:) = 0`. 求导得 `kappa (:bm n, bm a:) = 0`. 由假设 `kappa(s) != 0`, 得到 `(:bm n, bm a:) = 0`. 再求导得 `(:-kappa bm t + tau bm b, bm a:) = 0`, 因此 `tau (:bm b, bm a:) = 0`. 由 `bm a` 与 `bm t, bm n` 垂直知 `bm a` 与 `bm b` 平行, 从而 `(:bm b, bm a:) = +-1`, `tau -= 0`.
反之设 `tau -= 0`, 由 `("d"bm b)/("d"s) = -tau bm n` 知 `bm b` 是常向量. 因为 `bm t` 与 `bm b` 垂直, `bm t` 只能落在同一平面内, 即曲线 `bm r` 落在同一平面内.

常用 "不屈 (曲) 不挠" 形容一个人很顽强.

曲线论基本定理

曲线的弧长, 曲率和挠率在刚体运动 (同向合同变换) 下不变.

平面和空间的 Frenet 方程给出了各自 Frenet 标架的运动方程, 它们是一阶线性常微分方程组. 下面的两个定理说明, 我们可以通过求解此方程组来重建曲线, 且此曲线是唯一的. 换言之, 在相差一个刚体运动下, 曲线由曲率和挠率唯一决定.

设 `E^3` 中有两条弧长参数曲线 `bm r_1(s), bm r_2(s)` 定义在同一参数区间 `(a, b)` 上, 且它们的曲率与挠率在 `(a, b)` 上恒等: `kappa_1(s) = kappa_2(s) gt 0`, `tau_1(s) = tau_2(s)`, `AA s in (a, b)`. 则存在 `E^3` 的一个刚体运动使两条曲线相等.

设 `kappa(s), tau(s) in C^1(a, b)`, `kappa(s) gt 0`. 则存在 `E^3` 的弧长参数曲线, 它以 `s` 为弧长参数, 以 `kappa` 为曲率, `tau` 的挠率.