曲面的概念

曲面的定义及参数变换

曲面是平面区域 `D` 到 `E^3` 的映射 `bm r(u,v) = (x(u,v), y(u,v), z(u,v))`, 满足

  1. `x, y, z in C^oo(D)`;
  2. `bm r_u = ((del x)/(del u), (del y)/(del u), (del z)/(del u))` 与 `bm r_v = ((del x)/(del v), (del y)/(del v), (del z)/(del v))` 线性无关, 即 `bm r_u ^^ bm r_v != bb 0`.

曲面的参数变换 设 `bm r(u, v): D |-> E^3`, `sigma: bar D |-> D`
`(bar u, bar v) |-> (u, v)`,
若 `sigma` 一阶连续可微, 则切向量微元具有变换 `["d"u; "d"v] = J ["d"bar u; "d"bar v]`, `quad J = (del(u,v))/(del(bar u, bar v))` `= [u_(bar u), u_(bar v); v_(bar u), v_(bar v)]`. `|J| != 0` 时, `bm r` 有新参数表示 `bm r(u(bar u, bar v), v(bar u, bar v))`. 如果存在满足上述条件的参数变换使两个曲面的表达式相同, 则视它们为相同的曲面.

在上述变换下, 坐标切向量 `bm r_u` 和 `bm r_v` 的变换公式为 `[bm r_(bar u), bm r_(bar v)] = [bm r_u, bm r_v] J`,
`bm r_(bar u) ^^ bm r_(bar v) = bm r_u ^^ bm r_v |J|`.

形象记忆: 由 `["d"u; "d"v] = (del(u, v))/(del(bar u, bar v)) ["d"bar u; "d"bar v]`, 得到 `[bm r_(bar u), bm r_(bar v)]` `= (del bm r)/(del(bar u,bar v))` `= (del bm r)/(del(u, v)) (del(u, v))/(del(bar u, bar v))` `= [bm r_u, bm r_v] J`.

球面 `x^2 + y^2 + z^2 = a^2` 有球坐标表示 `{ x = a cos u cos v; y = a cos u sin v; z = a sin u; :}`, `quad u in [-pi/2, pi/2]`, `v in [0, 2pi]`. 和球极投影坐标表示: `{ x = 2a^2 u // d^2; y = 2a^2 v // d^2; z = a delta^2 // d^2; :}`, `quad u, v in RR`. 其中 `P(u, v, 0)` 是赤道平面上的一点, `(x, y, z)` 是 `P` 到北极 `N(0, 0, a)` 的连线与球面的交点. `d = sqrt(u^2 + v^2 + a^2)` 是 `P` 到 `N` 的距离, `delta = sqrt(u^2 + v^2 - a^2)` 是 `P` 到球面的切线长.

旋转面
`xz` 平面上与 `z` 轴无交的曲线 `{x = x(u); z = z(u) :}` 绕 `z` 轴旋转得到 `{x = x(u) cos v; y = x(u) sin v; z = z(u) :}`. 特别当 `x(u) = a cos u`, `z(u) = a sin u` 时, 得到球面.

柱面
`xy` 平面上的曲线 `{x = x(u); y = y(u) :}` 沿 `z` 轴平移得到 `{x = x(u); y = y(u); z = v :}`.

直纹面
称直线沿空间曲线 `bm r = bm a(u)` 滑动扫过的曲面 `bm r(u,v) = bm a(u) + v bm b(u)` 为直纹面. 其中 `bm a` 表示直线与曲线的交点, `bm b` 表示直线在该点的方向. 方程中取定一个 `u`, 就确定一条直母线. 当 `bm a` 为常向量时, 为锥面; 当 `bm b` 方向不变时, 为柱面. 当 `bm b` 始终沿曲线切向时, 方程形如 `bm r(u,v) = bm a(u) + v bm a'(u)`, 称为曲线 `bm r(u)` 的切线面, 它包含了 `bm r(u)` 的全体切线.

切向量, 切平面, 法向量

称 `bm r_u`, `bm r_v` 为坐标切向量. 它们线性无关, 从而确定了曲面 `S` 在点 `P_0 = (u, v)` 处的切平面 `T_0`. `S` 上过 `P_0` 的任一曲线在 `P_0` 的切向量落在切平面 `T_0` 上; 反之, 对切平面 `T_0` 上的任一向量 `bm t`, 存在曲面上过 `P_0` 的一曲线, 它在 `P_0` 的切向量与 `bm t` 同向.

`bm r_u ^^ bm r_v` 是曲面的一个法向量. `bm n = (bm r_u ^^ bm r_v)/|bm r_u ^^ bm r_v|` 是曲面的一个单位法向量. 法向量所在直线称为法线.

当曲面由方程 `F(bm r) = c` 给出时, 方程两边对 `u, v` 分别求导得 `(:grad F, bm r_u:) = (:grad F, bm r_v:) = 0`, 故 `grad F` 是曲面的法向量, `(:grad F, bm r - bm r_0:) = 0` 是 `bm r_0` 处的切平面.

曲面的切平面, 法线与参数选取无关.

曲面的基本形式

第一基本形式 (The first fundamental form)

`"I" = "d"s^2 = "d" bm r^2`
`= (bm r_u "d"u + bm r_v "d" v)^2`
`= ["d"u, "d"v][bm r_u^T; bm r_v^T][bm r_u, bm r_v]["d"u; "d"v]`
`= ["d"u, "d"v][E, F; F, G]["d"u; "d"v]`
`= E "d"u"d"u + 2F "d"u"d"v + G"d"v"d"v`.
其中 `E = (:bm r_u, bm r_u:)`, `quad F = (:bm r_u, bm r_v:)`, `quad G = (:bm r_v, bm r_v:)`. 第一基本形式是正定的二次型, 是曲面上的度量. 它在合同变换下不变, 与参数选取无关.

将参数变换 `["d"u; "d"v] = J ["d"bar u; "d"bar v]`, `quad [bm r_(bar u), bm r_(bar v)] = [bm r_u, bm r_v] J` 代入得 `"I" = ["d"bar u, "d"bar v][bm r_(bar u)^T; bm r_(bar v)^T] [bm r_(bar u), bm r_(bar v)]["d"bar u; "d"bar v]`, 第一基本形式不变.

`F = 0` 当且仅当 `(u, v)` 是正交参数.

第一基本形式和下文的第二基本形式是所谓的 "微分形式", 即微分 `"d"u`, `"d"v` 等与函数的算术组合. 设 `bm v` 是曲面上一点处的切向量, 将它分解为 `bm r_u, bm r_v` 的线性组合 `bm v = xi bm r_u + eta bm r_v`, 则 `v^2 = (:bm v, bm v:)` `= E xi^2 + 2F xi eta + G eta^2`.

  1. 平面在笛卡尔坐标下 `bm r(x, y) = (x, y)` 的第一基本形式 `"I" = dx^2 + dy^2`.
  2. 平面在极坐标下 `bm r(r, theta) = (r cos theta, r sin theta)` 的第一基本形式 `"I" = "d"r^2 + r^2 "d"theta^2`.
  3. 柱面 `bm r(u,v) = (x(u), y(u), v)` 的第一基本形式 `"I" = ({:x':}^2 + {:y':}^2)"d"u^2 + "d"v^2`. 取 `u` 是弧长参数时, `"I" = "d"u^2 + "d"v^2`, 和平面一致.
  4. 球面在经纬度参数下 `bm r(theta, varphi) = (R cos varphi cos theta, R cos varphi sin theta, R sin varphi)` 的第一基本形式 `"I" = R^2(cos^2 varphi "d"theta^2 + "d"varphi^2)`.
  5. 球面在球极投影参数下 `bm r(u,v) = 1/d^2(2 a^2 u, 2 a^2 v, a delta^2)` 的第一基本形式, 其中 `d^2 = u^2 + v^2 + a^2`, `delta^2 = u^2 + v^2 - a^2`: `"I" = ((2a^2)/d^2)^2 ("d"u^2 + "d"v^2)`.
    球极投影参数的第一基本形式计算:
    from sympy import *
    
    u, v, a = S('u,v,a')
    
    d = sqrt(u**2+v**2+a**2)
    r = [2*a**2*u/d**2, 2*a**2*v/d**2, a*(u**2+v**2-a**2)/d**2]
    ru = [diff(ri, u) for ri in r]
    rv = [diff(ri, v) for ri in r]
    E = simplify(sum(ri*ri for ri in ru))
    G = simplify(sum(ri*ri for ri in rv))
    F = simplify(sum(ru[i] * rv[i] for i in range(3)))
    
    print('E:', E)
    print('G:', G)
    print('F:', F)
    print('E - ((2*a**2)/d**2)**2 ==', simplify(E - ((2*a**2)/d**2)**2))
    
  6. 球面的墨卡托 (Mercator) 投影. 将经纬度参数的基础上令 `dy = R/(cos varphi) "d"varphi`, 于是 `y = R ln tan(varphi/2 + pi/4)`,
    `"I" = R^2 cos^2 varphi ("d"theta^2 + dy^2)` `= (R/(cosh(y//R)))^2 ("d"theta^2 + dy^2)`.

    为把 `cos varphi` 换成 `y` 的函数, 令 `t = tan(varphi/2 + pi/4)`, 则 `t = "e"^(y//R)`, `cos varphi` `= sin(varphi + pi/2)` `= (2t)/(1+t^2)` `= 2/("e"^(y//R) + "e"^(-y//R))` `= 1//cosh(y//R)`.

球极投影参数和墨卡托投影十分特殊, 它们是共形映射, 定义如下:

如果在某个参数选取下第一基本形式的 `E = G` 且 `F = 0`, 则称这个参数为等温参数共形参数. 从参数空间到曲面的映射 `bm r(u, v)` 称为共形映射 (conformal map)保角映射. 这个称呼的由来如下: 参数空间的每个点 `z := (u, v)` 的小位移 `dz` 被映射到曲面上的小曲线段 `"d"s`, 通常 `"d"s` 不仅和 `z` 的位置有关, 还和 `dz` 的方向有关. 但如果第一基本形式形如 `"I" = f(z) dz^2`, 它就只与 `z` 有关, 这意味着在参数平面上一个小三角形充分接近 `z` 的时候, 它在曲面上的像是一个与它相似的三角形. 即, 共形映射 `bm r(u, v)` 保持角度不变.

第二基本形式 (The second fundamental form)

`"II" = -(:"d"bm r, "d"bm n:)` `= - ["d"u, "d"v][bm r_u^T; bm r_v^T][bm n_u, bm n_v]["d"u; "d"v]` `= ["d"u, "d"v][L, M; M, N]["d"u; "d"v]` `= L"d"u"d"u + 2M"d"u"d"v + N"d"v"d"v`. 其中 (通过分部积分) `L = -(:bm r_u"," bm n_u:) = (:bm r_(u u)"," bm n:)`,
`M = -(:bm r_v"," bm n_u:)` `= -(:bm r_u"," bm n_v:)` `= (:bm r_(uv)"," bm n:)`,
`N = -(:bm r_v"," bm n_v:) = (:bm r_(v v)"," bm n:)`.
第二基本形式在同向参数变换 (`|J| gt 0`) 下不变, 反向则变号; 在同向刚体运动 (`|T| = 1`) 下不变, 反向则变号.

因为 `bm n` 的长度不变, 所以 `(:bm n_u, bm n:) = (:bm n_v, bm n:) = 0`, 故 `bm n_u, bm n_v` 落在切平面上, 它们也是切向量.

    根据第二基本形式行列式符号的不同, 将曲面上的点作如下分类:
  1. `LN-M^2 gt 0`, 正定或负定, 凸或凹, 椭圆点;
  2. `LN-M^2 lt 0`, 不定, 马鞍型, 双曲点;
  3. `LN-M^2 = 0`, 退化, 抛物点; 若 `L = M = N = 0`, 为平点.

记 `bm r = bm r(u,v)`, `bm r_0 = bm r(u_0, v_0)`, `bm n_0 = bm n(u_0, v_0)`, 定义曲面高度函数 `f(u, v) = (:bm r - bm r_0, bm n_0:)`, 则 `f_u = (:bm r_u, bm n_0:)`, `f_v = (:bm r_v, bm n_0:)`, `"II" = ["d"u, "d"v] [{:f_(u u):}, {:f_(uv):}; {:f_(vu):}, {:f_(v v):}]["d"u; "d"v]`.

平面 `bm r(u,v) = (u, v, 0)`. 注意 `bm n` 为常向量, 故 `"II" = -(:"d"bm r, "d"bm n:) = 0`.

柱面 `bm r(u,v) = (x(u), y(u), v)`. 记 `kappa = |x_u, y_u; x_(u u), y_(u u)|`, 有 `"II" = -kappa "d"u"d"u`.

球面 `bm r(theta, varphi) = (a cos theta cos varphi, a cos theta sin varphi, a sin theta)`. `"II" = a "d"theta"d"theta + a cos^2 theta "d"varphi"d"varphi`.

法曲率与 Weingarten 变换

法曲率

设曲面上有一曲线 `bm r`, `s` 是其弧长参数. `bm r` 在一点的单位切向量为 `("d"bm r)/("d"s)`, 曲率向量为 `("d"^2 bm r)/{:"d"s:}^2`. 利用分部积分计算曲率向量与法向量的内积: ` (: ("d"^2 bm r)/{:"d"s:}^2, bm n :) = -(:("d"bm r)/("d"s), ("d"bm n)/("d"s):) = L(("d"u)/("d"s))^2 + 2M("d"u)/("d"s)("d"v)/("d"s) + N(("d"v)/("d"s))^2`. 上式只与曲线在一点处的单位切向量 `("d"bm r)/("d"s) = (("d"u)/("d"s), ("d"v)/("d"s))` 以及曲面的第二基本形式有关, 而与曲线选取无关. 这启发我们作出如下定义:

已知曲面上一点处的单位切向量 `bm v = xi bm r_u + eta bm r_v`, 定义 `k_n(bm v) = L xi^2 + 2M xi eta + N eta^2`, 称为曲面在该点处沿给定方向的法曲率. 若 `bm v` 是任意非零切向量, 则沿 `bm v` 方向的法曲率等于 `k_n(bm v) = k_n(bm v/v) = 1/v^2 (L xi^2 + 2M xi eta + N eta^2) = (L xi^2 + 2M xi eta + N eta^2)/(E xi^2 + 2F xi eta + G eta^2)`.

法曲率反映了曲面沿给定方向的弯曲程度. 将曲面沿 `bm v, bm n` 所在平面 "切开", 则剖面边缘 (视为平面曲线) 的曲率就是 `k_n`. 法曲率在同向参数变换/刚体运动下不变, 反向则变号.

类比于微积分中, 导数 `dy/dx` 是微分 `dy` 与 `dx` 之商, 法曲率 `k_n` 是第二基本形式与第一基本形式之商.

  1. 半径为 `a` 的球面: `k_n = 1/a`.
  2. 平面: `k_n = 0`.
  3. 柱面 `bm r(u,v) = (x(u), y(u), v)`, 其中 `u` 为弧长参数. 此时 `bm r_u, bm r_v` 是正交的单位向量, 取单位切向量 `bm w = cos theta bm r_u + sin theta bm r_v` 得 `k_n(bm w) = -kappa cos^2 theta` (`kappa` 的定义参见).

Weingarten 变换

Gauss 映射 将曲面上的一点映为该点处的法向量 (`S_2` 为单位球面): `bm g: S |-> S^2`
`bm r(u, v) |-> bm n(u, v)`.
Weingarten 变换 `cc W` 是 Gauss 映射的导映射 (符号取反), 它是切平面上切向量间的线性变换. 我们定义 `cc W(bm r_u) = -bm n_u`, `cc W(bm r_v) = -bm n_v`; 一般地, `cc W: T_0 |-> T_0`
`a bm r_u + b bm r_v |-> -a bm n_u - b bm n_v`.
Weingarten 变换也可以用于微分形式: `cc W("d"bm r)` `= cc W(bm r_u "d"u + bm r_v "d"v)` `= -bm n_u "d"u - bm n_v "d"v` `= -"d"bm n`.

也有定义 Weingarten 变换为 `cc W("d"bm r) = "d"bm n` 的.

Weingarten 变换与曲面的参数选取无关.

在参数替换 `["d"u; "d"v] = J ["d"bar u; "d"bar v]` 下, `a bm r_u + b bm r_v` `= [bm r_u, bm r_v] [a; b]` `= [bm r_(bar u), bm r_(bar v)] J^-1 [a; b]`,
`-a bm n_u - b bm n_v` `= -[bm n_u, bm n_v] [a; b]` `= -[bm n_(bar u), bm n_(bar v)] J^-1 [a; b]`,
替换后的两向量仍满足 Weingarten 变换的定义.

曲面沿单位切向量 `bm t` 的法曲率可用 Weingarten 变换刻画: `k_n(bm t) = (:cc W(bm t), bm t:)`.

设 `bm t = a bm r_u + b bm r_v`, 则 `cc W(bm t) = -a bm n_u -b bm n_v`, `(:cc W(bm t), bm t:)` `= a^2 L + 2 a b M + b^2 N` `= k_n(bm t)`.

Weingarten 变换是自共轭变换: `AA bm v, bm w in T_0`, `(:cc W(bm v), bm w:) = (:cc W(bm w), bm v:)`. 特别取两个向量为切平面的单位正交基底 `bm e_1, bm e_2` 时, 由上式知 Weingarten 变换在正交基底下的矩阵为二阶实对称阵.

设 `bm v = a bm r_u + b bm r_v`, `bm w = c bm r_u + d bm r_v`, 则 `cc W(bm v) = -a bm n_u -b bm n_v`, `cc W(bm w) = -c bm n_u - d bm n_v`, `(:cc W(bm v), bm w:)` `= a c L + (a d + b c) M + b d N` `= (:cc W(bm w), bm v:)`.

Weingarten 变换的矩阵即 Gauss 映射的 Jacobi 阵 (取反). 一般地, 函数 `(x, y, z) |-> (P(x, y, z), Q(x, y, z), R(x, y, z))` 的导线性变换为 `cc A(bm i, bm j, bm k) = (bm i, bm j, bm k) [P_x, P_y, P_z; Q_x, Q_y, Q_z; R_x, R_y, R_z]` `= (bm i, bm j, bm k) J`. `J` 是导线性变换的矩阵, 即 Jacobi 阵.

由线性代数中实对称矩阵的结论知, Weingarten 变换的两个特征值是实数. 它们不相等时, 有两个相互正交的特征向量; 相等时, 任一切向量都是特征向量.

主曲率

称 Weingarten 变换的两个特征值 `k_1, k_2` 为主曲率, 相应的特征向量为主方向. 由 知道, 主曲率就是主方向上的法曲率.

Euler 公式 设 `k_1, k_2` 为主曲率, `bm e_1, bm e_2` 为相应主方向的单位向量, 利用 计算知, 法曲率可用主曲率表达: ` k_n(bm e_1 cos theta + bm e_2 sin theta) = k_1 cos^2 theta + k_2 sin^2 theta`. 可以看出, 当 `k_1 != k_2` 时, `k_n` 在主方向上取得极值; `k_1 = k_2` 时, 各方向上的法曲率相等.

计算 Gauss 曲率 `K = k_1 k_2` 与平均曲率 `H = (k_1 + k_2)/2`.

由定义, Gauss 曲率等于 Weingarten 变换 `cc W` 的行列式, 平均曲率等于 `cc W` 的迹的一半. 设 `cc W` 在基 `(bm r_u, bm r_v)` 下的矩阵为 `bm A = [a, b; c, d]` (未必对称), 即 `cc W(bm r_u) = -bm n_u = a bm r_u + b bm r_v`,
`cc W(bm r_v) = -bm n_v = c bm r_u + d bm r_v`.
以上两式分别与 `bm r_u, bm r_v` 作内积, 得 `[L, M; M, N] = [a, b; c, d][E, F; F, G]`, `[a, b; c, d] = [L, M; M, N][E, F; F, G]^-1`. 易知 Gauss 曲率 `K = |a,b; c,d| = |L,M; M,N|//|E,F; F,G|`. 平均曲率 `H = (a+d)//2`.

Gauss 曲率 `K` 满足 `bm n_u ^^ bm n_v` `= (a bm r_u + b bm r_v) ^^ (c bm r_u + d bm r_v)` `= (ad-bc) bm r_u ^^ bm r_v = K bm r_u ^^ bm r_v`. 直观上, Gauss 映射将曲面上的小块邻域映到单位球面上的区域. 对应区域的面积之比 `K = |bm n_u ^^ bm n_v|/|bm r_u ^^ bm r_v|` 就是 Gauss 曲率.

曲面的第三基本形式定义为 `"III" = (:"d"bm n, "d"bm n:)`, 它也是正定二次型, 且有 `K "I" - 2H "II" + "III" = 0`.

即证 `(:("d"bm n)/("d"s), ("d"bm n)/("d"s):) + 2H(:("d"bm r)/("d"s), ("d"bm n)/("d"s):) + K = 0`. 记 `("d"bm r)/("d"s) = bm e_1 cos theta + bm e_2 sin theta`, 则上式左边等于 `k_1^2 cos^2 theta + k_2^2 sin^2 theta - (k_1 + k_2)(k_1 cos^2 theta + k_2 sin^2 theta) + k_1 k_2` `= 0`.

主曲率的几何意义

曲面举例

[曲面绘制工具]

旋转曲面

`bm r(u, v) = (f(u) cos v, f(u) sin v, g(u))`, `f gt 0`.

直接计算 `bm r_u = (f'(u)cos v, f'(u)sin v, g'(u))`,
`bm r_v = (-f(u)sin v, f(u)cos v, 0)`,
`E = {:f':}^2+{:g':}^2`, `quad F = 0`, `quad G = f^2`,
`L = (f' g'' - f'' g')/sqrt E`, `quad M = 0`, `quad N = (fg')/sqrt E`,
`k_1 = L/E`, `quad k_2 = N/G`, `quad K = k_1 k_2`, `quad H = (k_1 + k_2)/2`.
若取 `u` 为 `xz` 平面上曲线 `(f(u), g(u))` 的弧长参数, 则 `{:f':}^2 + {:g':}^2 = 1`, `f'f'' + g'g'' = 0`, 由此推出 ` f'g'' - f''g' = -(f'')/(g')`. 上面各式有比较简单的表达式 `E = 1`, `quad F = 0`, `quad G = f^2`,
`L = -(f'')/(g')`, `quad M = 0`, `quad N = fg'`,
`k_1 = -(f'')/(g')`, `quad k_2 = (g')/f`, `quad K = -(f'')/f`, `quad H = 1/2 ((g')/f - (f'')/(g'))`.

    常 Gauss 曲率旋转曲面
  1. `K = k^2 gt 0` 时, 解常微分方程 `f''(u) + k^2 f(u) = 0` 得 `f(u) = A cos(k u + varphi)`. 由约束 `{:f':}^2 + {:g':}^2 = 1` 得到 `A = 1//k`, `g(u) = A sin(k u + varphi)`. 这是半径为 `1//k` 的球面.
  2. `K = -k^2 lt 0` 时, 类似有 `f(u) = A cosh h u + B sinh k u`, ??

常平均曲率旋转曲面

直纹面与可展曲面

全脐点曲面

曲面上两个主曲率相等的点称为脐点. 由法曲率的定义知, 脐点处第二基本形式与第一基本形式的系数成比例, 即 `L/E = M/F = N/G = a`, `a != 0` 时, 这一点称为圆点, `a = 0` 时称为平点. 例如球面上各点均为圆点, 平面各点均为平点.

极小曲面 (平均曲率为零的曲面)

[来自 Riemann Geometry an Introduction]

The catenoid (Euler, 1740) `sqrt(x^2+y^2) = cosh z`.

此为旋转曲面, 取参数 `bm r = (u cos v, u sin v, "arch "u)` `= (u cos v, u sin v, ln(u + sqrt(u^2-1)))`, 令 `f(u) = u`, `g(u) = ln(u + sqrt(u^2-1))`, 则 `E = {:f':}^2+{:g':}^2` `= 1 + 1/(u^2-1) = u^2/(u^2-1)`, `quad F = 0`, `quad G = f^2 = u^2`,
`L = (f' g'' - f'' g')/sqrt E` `= -u/(u^2-1)^(3//2) * sqrt(u^2-1)/u = 1/(1-u^2)`, `quad M = 0`, `quad N = (fg')/sqrt E = u/sqrt(u^2-1) * sqrt(u^2-1)/u = 1`,
`k_1 = L/E = 1/(1-u^2) * (u^2-1)/u^2` `= -1/u^2`, `quad k_2 = N/G = 1/u^2`,
`quad K = k_1 k_2 = -1/u^4`, `quad H = (k_1 + k_2)/2 = 0`.

The helicoid (Meusnier, 1776) `tan z = x//y`.

取参数 `bm r = (u v, v, arctan u)`, 则 `bm r_u = (v, 0, 1/(1+u^2))`, `bm r_v = (u, 1, 0)`, `bm r_u ^^ bm r_v = (-1/(1+u^2), u/(1+u^2) v)`,
`bm r_(u u) = (0, 0, (-2u)/(1+u^2)^2)`, `bm r_(u v) = (1, 0, 0)`, `bm r_(v v) = (0, 0, 0)`.
记 `|bm r_u ^^ bm r_v| = n`, `|E, F; F, G| = Delta`, 有 `E = v^2 + 1/(1+u^2)^2`, `F = u v`, `G = u^2 + 1`,
`L = 1/n (-2u v)/(1+u^2)^2`, `M = -1/n 1/(1+u^2)`, `N = 0`.
最终 `[a, b; c, d]` `= 1/n 1/Delta [(-2 u v)/(1+u^2)^2, -1/(1+u^2); -1/(1+u^2), 0]` `[u^2+1, -u v; -u v, v^2+1/(1+u^2)^2]`,
`H = 1/n 1/Delta ((-u v)/(1+u^2) + (u v)/(1+u^2)) = 0`.

Scherk's surface, 1835 `"e"^z = (cos x)/(cos y)`, 即 `z = ln cos x - ln cos y` `= int_y^x tan t dt`.

取参数 `bm r = (u, v, ln cos u - ln cos v)`, 则 `bm r_u = (1, 0, -tan u)`, `bm r_v = (0, 1, tan v)`. `bm r_u ^^ bm r_v = (tan u, -tan v, 1)`,
`bm r_(u u) = (0, 0, -sec^2 u)`, `bm r_(u v) = (0, 0, 0)` `bm r_(v v) = (0, 0, sec^2 v)`.
于是 `E = 1 + tan^2 u = sec^2 u`, `F = -tan u tan v`, `G = 1 + tan^2 v = sec^2 v`,
`L = -sec^2 u // n`, `M = 0`, `N = sec^2 v // n`
最终 `[a, b; c, d]` `= 1/n 1/Delta [sec^2 u, -tan u tan v; -tan u tan v, sec^2 v]` `[sec^2 v, 0; 0, -sec^2 u]`,
`H = 1/n 1/Delta(sec^2 u sec^2 v - sec^2 u sec^2 v) = 0`.