第 3 章 正则曲面与切空间
一张曲面可以用不同方式描述。球面常被写成参数方程,也可以写成一个方程的等值集合;圆柱面适合用角度和高度参数化,平面则可以直接写成图面。它们看上去只是记号不同,真正影响计算的却是:参数是否能提供两个独立的切向方向?给定一个方程,梯度为什么会自动指向法向?
这一章建立曲面的局部语言。我们会把参数化、level set、切空间和法向联系起来,再在图面、球面和圆柱面上反复检查条件。重点不是背三种模板,而是看到一个新曲面时,知道应该选择哪种表示、在哪一步检查正则性。
1. 参数化的局部视角
设 U⊂R2 是开集,给定 C1 映射
X:U→R3,(u,v)↦X(u,v).
固定 (u0,v0),改变 u 而保持 v=v,得到一条参数曲线;改变 而保持 ,得到另一条参数曲线。因此
Xu(u0,v0),X
是曲面上点 p=X(u0,v0) 的两个候选切向量。
如果这两个向量线性无关,即
Xu×Xv=0,
则称该参数化在 (u0,v0) 处是正则的。它的微分把参数平面里的两个独立方向送到空间中两个独立的方向,局部上不会把一个二维小片压扁成一条线。正则曲面要求每一点附近都存在这样的正则参数化;“正则”描述的是局部可展开性,不要求一张曲面只有一个全球参数化。

切空间的定义
设 S⊂R3,p∈S。如果 γ:(−ε,ε)→ 是一条 曲线且 ,那么 是沿着曲面走过 时可能出现的速度向量。所有这样的速度向量组成的集合定义为切空间
TpS={γ′(0):γ 在 S
对一个正则参数片,切空间有更容易计算的形式
TpS=span{Xu(u0
为什么两者相同?若 γ(t)=X(u(t),v(t)),链式法则给出
γ′(0)=Xuu′(0)+
所以曲面内曲线的速度一定落在右侧张成的平面中。反过来,对任意常数 a,b,取参数平面中的直线 (u(t),v(t))=(u0+at,,则
dtdX(u0+at,v
局部性保证这条参数直线在足够小的 t 范围内留在 U 中,因此每个线性组合都确实是曲面内曲线的速度。

若 Xu×Xv=0,可以取单位法向量
n=∥Xu×Xv∥X
换成 Xv×Xu 会得到相反方向的法向量;法向的方向选择有两个,但法向线本身是唯一的。
2. 方程描述的曲面:level set
设 F:R3→R 是 C1 函数,考虑
S=F−1(0)={(x,y,z):F(x,y,
如果在 p∈S 处
∇F(p)=0,
那么 p 是 level set 的正则点。隐函数定理保证:在 p 附近,至少可以把一个坐标写成另外两个坐标的函数,因而 S 局部是一张正则曲面。梯度不为零是关键条件,不能只因为方程看起来光滑就省略。
为什么梯度是法向量?设 γ(t) 是留在 S 内的曲线,且 γ(0)=p。因为 F(γ(t))≡,对 求导:
0=dtdF(γ(t))=∇F(γ(t
在 t=0 处,所有切向量 γ′(0) 都与 ∇F(p) 正交。因此
TpS={w∈R3:∇F(p)⋅w
法向线由 ∇F(p) 张成。

如果已知一个正则参数化 X(u,v) 满足 F(X(u,v))=0,也能从同一条恒等式得到
∇F(X)⋅Xu=0,∇F(X)⋅Xv
所以 level set 法向与参数化叉积法向平行。前者通常适合从隐式方程直接求法向,后者同时给出切向基和参数方向。
3. 图面是最容易检查的正则曲面
给定 C1 函数 f:U⊂R2→R,它的图面为
X(u,v)=(u,v,f(u,v)).
两个偏导是
Xu=(1,0,fu),X
Xu×Xv=(−fu,−
最后一个坐标恒为 1,因此叉积永远不为零;任何 C1 图面都是正则的。它也可以写成 level set
F(x,y,z)=z−f(x,y)=0,
其梯度为 (−fx,−fy,1),与参数化叉积完全一致。
图面在 p=(u0,v0,f(u0,v 处的切平面是
z−f(u0,v0)=
这是多变量微积分中线性近似的几何版本:两个水平坐标发生小变化时,高度的一阶变化由梯度给出。

完整例题:抛物面上的切平面与法向
求曲面
S: z=x2+2y2
在 p=(1,1,3) 处的切空间、一个单位法向量和切平面,并检查一条确实位于曲面内的曲线是否给出切向量。
这里优先选图面参数化,因为题目给出的是显式图面,偏导直接提供切向基;再用 level set 作独立检查,可以避免把法向符号或点坐标算错。
参数化为 X(u,v)=(u,v,u2+2v。于是 、。在 处,两个切向量为 与 ,它们线性无关。
4. 球面:参数图的边界不一定是曲面奇点
半径为 R 的球面可用球坐标参数化:
X(θ,φ)=(Rsinθcosφ, Rsinθsinφ, Rcosθ),
其中 0<θ<π,0<φ<2π 是一个常见的局部参数范围。参数偏导在极点 θ=0,π 会退化,因为不同的 在极点表示同一个点,且 。这不意味着球面在极点不正则,只说明这一个坐标图在极点失效;可以换另一张参数图,或直接使用 level set。
球面是
F(x,y,z)=x2+y2+z
的 level set。只要 R>0,球面上 ∇F=2(x,y,z)=0,所以每一点都是正则点,法向方向就是径向方向。

5. 圆柱:同一曲面两种表达各有用途
半径为 R>0 的圆柱面可参数化为
X(θ,z)=(Rcosθ,Rsinθ,z).
偏导为
Xθ=(−Rsinθ,Rcosθ,0),X
叉积为 (Rcosθ,Rsinθ,0),长度为 R,所以参数化处处正则。它的 level set 写成
F(x,y,z)=x2+y2−R2
∇F=(2x,2y,0).
参数化告诉我们两个自然切向方向:绕轴的圆周方向和沿轴方向;level set 直接告诉我们法向是水平径向方向。遇到需要描述切向量时,参数化更方便;遇到需要写法平面或检查某点是否正则时,梯度通常更快。

完整例题:圆柱上一条曲线的切向量
设 S:x2+y2=4,并考虑曲线
γ(t)=(2cost,2sint,t).
求 t=π/3 处的切向量,判断它是否位于圆柱的切空间中,并求该点的单位法向量。
这次使用 level set 检查切向量,再用参数化理解切空间的两个方向。两种方法的交会正好展示了隐式和显式描述的互补。
先确认曲线在圆柱上:(2cost)2+(2sint)2=,恒满足方程。它的速度为 。在 处,。

在交互中选择同一个球面或圆柱面,切换参数化与 level set 表示。先预测两种表示算出的法向是否只差一个正负号,再观察坐标图在球面极点附近为什么会失效。重点不是记住某个控件的输出,而是把“参数退化”和“曲面本身不正则”区分开。
可以在曲面上移动点,拖动一条留在曲面内的曲线方向,检查速度向量与梯度的点积。若点积不为零,说明拖动的方向并非真正沿曲面;重置后比较图面、球面和圆柱的法向变化,能把局部线性近似与几何约束连起来。
练习
练习 1(理解:正则参数化)
判断 X(u,v)=(u+v,u−v,0) 是否正则,并求其切平面方向。
Xu=(1,1,0)、Xv=(,两者不成比例,叉积为 。因此处处正则,切空间是 平面,两个参数方向给出其中一组切向基。
练习 2(应用:level set)
求椭球面 S:x2+4y2+z2=9 在 处的一个法向量和切平面方程。
取 F=x2+4y2+z2−9,则 ,在 处为 ,可化为法向量 。切平面为 ,即 。同时 ,所以该点是正则点。
练习 3(应用:图面)
对图面 z=xy,求点 (1,2,2) 处的切平面。
令 f(x,y)=xy,有 fx=y、f。在 处二者分别为 ,所以切平面为 ,整理得 。
练习 4(迁移:参数奇点)
球面参数化在北极处对角度参数退化。这个事实是否说明北极不是正则曲面点?给出判断理由。
不说明。该球面参数图在北极处把所有角度压到同一点,导致该坐标图的一个偏导为零;这是坐标图失效,不是曲面本身失去局部平面结构。用 F=x2+y2+z2−R 描述时,北极处梯度为 ,所以北极仍是 level set 的正则点。
练习 5(迁移:切向量判别)
设 S:F(x,y,z)=0,∇F(p)=0。如何判断一个向量 是否属于 ?这个判别为什么只需要一条方程?
计算 ∇F(p)⋅w。若结果为零,w 与 level set 的法向正交,因而属于切平面;若不为零,则含有法向分量,不能是曲面内曲线在 p 处的速度。正则条件使切空间恰好是法向量的正交补,在三维中一个非零法向的正交补是二维平面,所以一个线性方程足以刻画它。
6对 level set F(x,y,z)=0,在点 p 处最先应检查哪一条件?

看到曲面问题时,可以先问它更适合哪种表示:参数化把两个切向方向直接交给你,level set 把约束和法向直接交给你。两种表示都必须经过正则性检查;坐标图的退化也要和曲面本身的奇点分开。