本篇文章我們從一般化的 R n \mathbb{R}^n Rn 空間回到我們生活的 R 2 , R 3 \mathbb{R}^2,\mathbb{R}^3 R2,R3空間,看看低維空間中的曲線有哪些性質,主要計算下在非弧長參數下的曲線,曲率撓率的一般表達式。
最後引入環繞數的概念,講講怎麼數曲線轉了多少圈。
4.1 二維空間中的曲線
二維空間中的曲線(plane curves)的Frenet運動方程:
d d t ( e 1 ( t ) e 2 ( t ) ) = ( 0 ω ( t ) − ω ( t ) 0 ) ⋅ ( e 1 ( t ) e 2 ( t ) ) \frac{d}{dt}\begin{pmatrix} e_1(t)\\ e_2(t) \end{pmatrix}= \begin{pmatrix} 0&\omega (t)\\ -\omega (t)& 0 \end{pmatrix}\cdot \begin{pmatrix} e_1(t)\\e_2(t) \end{pmatrix} dtd(e1(t)e2(t))=(0−ω(t)ω(t)0)⋅(e1(t)e2(t))
這裡 ω ( t ) = ω 1 , 2 ( t ) = e 1 ′ ( t ) ⋅ e 2 ( t ) \omega (t)=\omega_{1,2}(t) =e_1'(t)\cdot e_2(t) ω(t)=ω1,2(t)=e1′(t)⋅e2(t) ,曲率 κ ( t ) ≜ ω ( t ) ∣ c ′ ( t ) ∣ \kappa(t)\triangleq \frac{\omega (t)}{|c'(t)|} κ(t)≜∣c′(t)∣ω(t),詳細的定義寫在之前一篇筆記中。
進一步,在弧長參數下有 c ′ ′ ( s ) = e 1 ′ ( s ) = ω ( s ) e 2 ( s ) = κ ( s ) e 2 ( s ) c''(s)=e'_1(s)=\omega(s)e_2(s)=\kappa(s)e_2(s) c′′(s)=e1′(s)=ω(s)e2(s)=κ(s)e2(s) 是以有 ∣ c ′ ′ ( s ) ∣ = ∣ κ ( s ) ∣ |c''(s)|=|\kappa(s)| ∣c′′(s)∣=∣κ(s)∣
這裡我們可以看到平面曲線曲率正負的意義:
首先最主要的一點是,因為在每一點曲率是一個數而已,這說明曲線二階導的方向,與 e 2 ( s ) e_2(s) e2(s)的方向相同或者相反,總之他們在一條直線上!
(我寫完之後幾天又繞回了這個問題,發現這是相當本質的一個結論, n n n維歐式空間中,非退化的曲線,自身前 n n n 階導數就是正交的!)
因為二階導數的正負,決定了曲線的凹凸性,二階導大于0,曲線下凸;二階導小于0,曲線上凸;二階導等于0,曲線沒有凸性。
再結合由Frenet标架自身性質所決定的, e 1 ( s ) e_1(s) e1(s)為曲線的切線方向, e 2 ( s ) e_2(s) e2(s)由 e 1 ( s ) e_1(s) e1(s)逆時針旋轉 9 0 ∘ 90^{\circ} 90∘ 得到(為了和 R 2 \mathbb{R}^2 R2空間中的基底保持相同定向。)是以我們知道, κ ( s ) > 0 \kappa (s)>0 κ(s)>0 表示 e 2 ( s ) e_2(s) e2(s)與曲線彎曲方向相同,反之,則相反;若 κ ( s ) = 0 \kappa(s)=0 κ(s)=0自然表示曲線在這一點處不彎曲。(不同的參數 s s s 或者 t t t 并不改變上述向量的方向,隻是在大小上相差個常數倍。)
接下來,我們來算一算,如果不對曲線進行弧長參數化,用最原本的參數,曲率的表達式是怎樣的:
Proposition 4.1.1 c : I → R 2 c:I\rightarrow \mathbb{R}^2 c:I→R2 為一條滿足Frenet條件的參數化平面曲線,則其曲率 κ ( t ) = det ( c ′ ( t ) , c ′ ′ ( t ) ) ∣ c ′ ( t ) ∣ 3 \kappa(t)=\frac{\text{det}(c'(t),c''(t))}{|c'(t)|^3} κ(t)=∣c′(t)∣3det(c′(t),c′′(t))
Proof:
對任意參數曲線,都可以寫成 c = c ~ ∘ ϕ c = \tilde{c} \circ \phi c=c~∘ϕ的形式,這裡 s = ϕ ( t ) = ∫ x 0 t ∣ c ′ ( τ ) ∣ d τ , ∴ ϕ ′ = ∣ c ′ ( t ) ∣ s=\phi (t)= \int^t_{x_0}|c'(\tau)|d\tau,\therefore \phi'=|c'(t)| s=ϕ(t)=∫x0t∣c′(τ)∣dτ,∴ϕ′=∣c′(t)∣(證明寫在筆記(2)中的命題2.2.5)
那麼
c ′ ( t ) = ϕ ′ ( c ~ ′ ∘ ϕ ) , c ′ ′ ( t ) = ϕ ′ ′ ( c ~ ′ ∘ ϕ ) + ( ϕ ′ ) 2 ( c ~ ′ ′ ∘ ϕ ) c'(t)=\phi'(\tilde{c}' \circ \phi), c''(t)=\phi''(\tilde{c}' \circ \phi)+(\phi')^2(\tilde{c}'' \circ \phi) c′(t)=ϕ′(c~′∘ϕ),c′′(t)=ϕ′′(c~′∘ϕ)+(ϕ′)2(c~′′∘ϕ)
注意這裡 c ~ ′ ∘ ϕ = c ~ ′ ( s ) = e ~ 1 , c ~ ′ ′ ∘ ϕ = c ~ ′ ′ ( s ) = κ ~ ( s ) e ~ 2 ( s ) \tilde{c}' \circ \phi=\tilde{c}'(s)=\tilde{e}_1, \tilde{c}'' \circ \phi=\tilde{c}''(s)=\tilde{\kappa}(s)\tilde{e}_2(s) c~′∘ϕ=c~′(s)=e~1,c~′′∘ϕ=c~′′(s)=κ~(s)e~2(s)
寫成矩陣的形式:
( c ′ ( t ) c ′ ′ ( t ) ) = ( ϕ ′ 0 ϕ ′ ′ ϕ ′ 2 ) ( 1 0 0 κ ~ ) ( e ~ 1 ( t ) e ~ 2 ( t ) ) \begin{pmatrix} c'(t)\\ c''(t) \end{pmatrix}= \begin{pmatrix} \phi'& 0\\ \phi''& \phi^{'2} \end{pmatrix} \begin{pmatrix} 1&0\\ 0&\tilde{\kappa} \end{pmatrix} \begin{pmatrix} \tilde{e}_1(t)\\ \tilde{e}_2(t) \end{pmatrix} (c′(t)c′′(t))=(ϕ′ϕ′′0ϕ′2)(100κ~)(e~1(t)e~2(t))由于曲率在參數變換下不變,上式兩邊取行列式便得到了結果。
事實上,曲線為平面圓周,當且僅當曲率恒為非零常數;當曲率恒為零時,對應的曲線退化為一條直線。
4.2 三維空間中的曲線
類似的,我們可以計算一般非弧長參數曲線的曲率。在三維空間中,“曲率”含有兩部分,曲率 κ ( t ) \kappa (t) κ(t) 和撓率 τ ( t ) \tau(t) τ(t),分别計算下:
Proposition 4.2.1 c : I → R 3 c:I\rightarrow \mathbb{R}^3 c:I→R3 為一條滿足Frenet條件的參數化空間曲線,則其曲率 κ ( t ) = ∣ c ′ ( t ) × c ′ ′ ( t ) ∣ ∣ c ′ ( t ) ∣ 3 \kappa(t)=\frac{|c'(t)\times c''(t)|}{|c'(t)|^3} κ(t)=∣c′(t)∣3∣c′(t)×c′′(t)∣, τ ( t ) = det ( c ′ ( t ) , c ′ ′ ( t ) , c ′ ′ ′ ( t ) ) ∣ c ′ ( t ) × c ′ ′ ( t ) ∣ 2 \tau(t)=\frac{\text{det}(c'(t),c''(t),c'''(t))}{|c'(t)\times c''(t)|^2} τ(t)=∣c′(t)×c′′(t)∣2det(c′(t),c′′(t),c′′′(t)).
Proof:
與二維情況類似,将曲線寫為 c = c ~ ∘ ϕ c = \tilde{c} \circ \phi c=c~∘ϕ,然後求導,寫成矩陣形式:
( c ′ ( t ) c ′ ′ ( t ) c ′ ′ ′ ( t ) ) = ( ϕ ′ ϕ ′ ′ ϕ ′ 2 ϕ ′ ′ ′ 3 ϕ ′ ϕ ′ ′ ( ϕ ′ ) 3 ) ( 1 0 κ ~ ( s ) − κ ~ 2 ( s ) κ ~ ′ ( s ) κ ~ ( s ) τ ~ ( s ) ) ( e ~ 1 ( t ) e ~ 2 ( t ) e ~ 3 ( t ) ) \begin{pmatrix} c'(t)\\ c''(t)\\c'''(t) \end{pmatrix}= \begin{pmatrix} \phi'&&\\ \phi''& \phi^{'2}&\\ \phi'''& 3\phi' \phi''& (\phi')^3 \end{pmatrix} \begin{pmatrix} 1& &\\ 0&\tilde{\kappa}(s)&\\ -\tilde{\kappa}^2(s) & \tilde{\kappa}'(s) &\tilde{\kappa}(s) \tilde{\tau}(s) \end{pmatrix} \begin{pmatrix} \tilde{e}_1(t)\\ \tilde{e}_2(t)\\ \tilde{e}_3(t) \end{pmatrix} ⎝⎛c′(t)c′′(t)c′′′(t)⎠⎞=⎝⎛ϕ′ϕ′′ϕ′′′ϕ′23ϕ′ϕ′′(ϕ′)3⎠⎞⎝⎛10−κ~2(s)κ~(s)κ~′(s)κ~(s)τ~(s)⎠⎞⎝⎛e~1(t)e~2(t)e~3(t)⎠⎞
先計算曲率 κ ( t ) \kappa(t) κ(t): c ′ ( t ) × c ′ ′ ( t ) = ϕ ′ ( t ) e ~ 1 ( s ) × ( ϕ ′ ′ e ~ 1 ( s ) + ( ϕ ′ ) 2 κ ~ ( s ) e ~ 2 ( s ) ) = ∣ c ′ ( t ) ∣ 3 k ~ ( s ) e ~ 3 ( s ) c'(t)\times c''(t)=\phi'(t)\tilde{e}_1(s)\times (\phi'' \tilde{e}_1(s)+(\phi')^2\tilde{\kappa}(s)\tilde{e}_2(s))=|c'(t)|^3\tilde{k}(s)\tilde{e}_3(s) c′(t)×c′′(t)=ϕ′(t)e~1(s)×(ϕ′′e~1(s)+(ϕ′)2κ~(s)e~2(s))=∣c′(t)∣3k~(s)e~3(s)
由曲率的參數變換不變性, κ ( t ) = ∣ c ′ ( t ) × c ′ ′ ( t ) ∣ ∣ c ′ ( t ) ∣ 3 \kappa(t)=\frac{|c'(t)\times c''(t)|}{|c'(t)|^3} κ(t)=∣c′(t)∣3∣c′(t)×c′′(t)∣.
再在上面矩陣兩邊取行列式,就得到: τ ( t ) = det ( c ′ ( t ) , c ′ ′ ( t ) , c ′ ′ ′ ( t ) ) ∣ c ′ ( t ) × c ′ ′ ( t ) ∣ 2 \tau(t)=\frac{\text{det}(c'(t),c''(t),c'''(t))}{|c'(t)\times c''(t)|^2} τ(t)=∣c′(t)×c′′(t)∣2det(c′(t),c′′(t),c′′′(t))
空間曲線由曲率和撓率唯一決定,假若二者均為常數(注意在空間中,曲率 κ > 0 \kappa>0 κ>0):
1.當 τ ≠ 0 \tau \neq 0 τ=0時,曲線為螺旋線(Helix);
2.當 τ \tau τ恒為非零常數時,曲線退化為平面圓周。
證明也很簡單,一方面螺旋線的曲率撓率恒為常數;另一方面,任意恒為常數的曲率撓率,總可以寫成螺旋線所對應的形式。
接下來我們再來看一看Frenet标架,是如何唯一決定曲線的.
我們試圖對一條弧長參數化曲線進行泰勒展開來做,這就涉及到用Frenet标架來表示曲線的導數,這個也好辦,上方矩陣形式的最後兩個矩陣就是我們要的:
( c ′ ( s ) c ′ ′ ( s ) c ′ ′ ′ ( s ) ) = ( 1 0 κ ( s ) − κ 2 ( s ) κ ′ ( s ) κ ( s ) τ ( s ) ) ( e 1 ( s ) e 2 ( s ) e 3 ( s ) ) \begin{pmatrix} c'(s)\\ c''(s)\\c'''(s) \end{pmatrix}= \begin{pmatrix} 1& &\\ 0&\kappa(s)&\\ -\kappa^2(s) & \kappa'(s) &\kappa(s) \tau(s) \end{pmatrix} \begin{pmatrix} e_1(s)\\ e_2(s)\\ e_3(s) \end{pmatrix} ⎝⎛c′(s)c′′(s)c′′′(s)⎠⎞=⎝⎛10−κ2(s)κ(s)κ′(s)κ(s)τ(s)⎠⎞⎝⎛e1(s)e2(s)e3(s)⎠⎞
我們現在可以用泰勒公式了:
c ( s 0 + s ) ≈ c ( s 0 ) + s c ′ ( s 0 ) + s 2 2 c ′ ′ ( s 0 ) + s 3 6 c ′ ′ ′ ( s 0 ) = c ( s 0 ) + ( s − κ 2 6 s 3 ) e 1 + ( κ 2 s 2 + κ ′ 6 s 3 ) e 2 + κ τ 6 s 3 e 3 \begin{aligned} c(s_0+s)&\approx c(s_0)+sc'(s_0)+\frac{s^2}{2}c''(s_0)+\frac{s^3}{6}c'''(s_0)\\ &=c(s_0)+(s-\frac{\kappa^2}{6}s^3)e_1+(\frac{\kappa}{2}s^2+\frac{\kappa'}{6}s^3)e_2+\frac{\kappa \tau}{6}s^3e_3\\ \end{aligned} c(s0+s)≈c(s0)+sc′(s0)+2s2c′′(s0)+6s3c′′′(s0)=c(s0)+(s−6κ2s3)e1+(2κs2+6κ′s3)e2+6κτs3e3
因為 s s s 是小量,其高階可以扔掉,是以在 e 1 − e 2 e_1-e_2 e1−e2 平面上,曲線的改變近似為 ( s , κ 2 s 2 ) (s,\frac{\kappa}{2}s^2) (s,2κs2);
在 e 1 − e 3 e_1-e_3 e1−e3 平面上,曲線的改變近似為 ( s , κ τ 6 s 3 ) (s,\frac{\kappa \tau}{6}s^3) (s,6κτs3);
在 e 2 − e 3 e_2-e_3 e2−e3 平面上,曲線的改變近似為 ( κ 2 s 2 , κ τ 6 s 3 ) (\frac{\kappa}{2}s^2,\frac{\kappa \tau}{6}s^3) (2κs2,6κτs3).
這裡剛好說到第三個曲線,被成為Neil抛物線,其特點是在尖點(cusp)處連續可導,當然在這裡他就不滿足函數的定義了。
将他們畫在三維坐标系中:
(圖來自 UTM Calculus and Analysis in Euclidean Space p402)
這裡 T T T是Tangent vector的簡寫,對應 e 1 e_1 e1;
N N N 是Normal vector,對應 e 2 e_2 e2;
B B B 是Binormal vector,對應 e 3 e_3 e3.
4.3 環繞數定理
這個是平面曲線的全局性質(Global Theory),之前講的标架,曲率都是對曲線的局部而言,那麼對全局我們可以先考慮,比方說,曲線轉了多少圈。
這一章在Klingenberg的書中語言叙述還是挺繁瑣的,直覺了解就好。
先說下什麼是閉曲線:
用好了解的說法,這條曲線具有周期性,且處處都是光滑的(特别是在相同兩部分連接配接的地方)。在傅裡葉分析裡我們還會見到他,圓上的曲線。
簡單就是一一映射的意思。
是以簡單閉曲線就是一條光滑周期參數曲線,且在每個周期上,都是一一映射的。
接下來是環繞數的概念:
在平面上一個光滑參數曲線的切向量是會随着曲線的方向轉的,取定一個固定的坐标系,把切向量和 x x x-坐标軸的夾角定義為 θ ( t ) \theta(t) θ(t) ,其中 t t t 為曲線的參數,那麼顯然這個 θ ( t ) \theta(t) θ(t) 除了在 π \pi π 和 2 π 2\pi 2π 這兩個零界點附近都是光滑的。
拿圓舉例子,在起始位置,它的切向量和x軸夾角為 π 2 \frac{\pi}{2} 2π,繼續逆時針前進,到它的正上方時,夾角為 π \pi π,快到正下方,卻還沒到時,夾角接近 2 π 2\pi 2π ,當到了正下方後,與 x x x-軸夾角從新從0算起。
是以我們總可以通過給夾角加一個 2 π 2\pi 2π的整數倍,使得這個夾角函數 θ ( t ) \theta(t) θ(t)是連續且可導的,比方說剛說的例子,本來過了圓周的正下方,夾角重新回到0,我們隻要對他加 2 π 2\pi 2π,使得夾角變成 2 π + θ 2\pi+\theta 2π+θ,變成全局的連續可導函數即可。
環繞數,對光滑參數曲線,定義為在曲線的兩個端點 [ a , b ] [a,b] [a,b]的角度之差再除 2 π 2\pi 2π: n c = θ ( b ) − θ ( a ) 2 π n_c=\frac{\theta(b)-\theta(a)}{2\pi} nc=2πθ(b)−θ(a).
比方說對機關圓周 c = ( cos θ , sin θ ) , θ ∈ [ 0 , 2 π ] c=(\cos \theta,\sin \theta), \theta\in[0,2\pi] c=(cosθ,sinθ),θ∈[0,2π]的環繞數,按定義為1;
機關圓周 c = ( cos 2 θ , sin 2 θ ) , θ ∈ [ 0 , 2 π ] c=(\cos2 \theta,\sin 2\theta), \theta\in[0,2\pi] c=(cos2θ,sin2θ),θ∈[0,2π]的環繞數,按定義為2;
機關圓周 c = ( cos ( − θ ) , sin ( − θ ) ) , θ ∈ [ 0 , 2 π ] c=(\cos{(- \theta)},\sin{(- \theta)}), \theta\in[0,2\pi] c=(cos(−θ),sin(−θ)),θ∈[0,2π]的環繞數,按定義為-1.
更進一步,對于分段光滑的參數曲線,定義一個外角(exterior angle),記為 α i \alpha_i αi,表示對于一個分段光滑節點 a i a_i ai 左右兩端點角度的內插補點:即從 c ′ ( a i − ) c'(a_i^-) c′(ai−)到 c ′ ( a i + ) c'(a_i^+) c′(ai+)的角度內插補點,規定逆時針為正,順時針為負, − π < α i < π -\pi<\alpha_i<\pi −π<αi<π.
是以對分段光滑參數曲線的環繞數就定義為: n c = 1 2 π ∑ i ( θ i ( b i ) − θ i ( a i ) ) + 1 2 π ∑ i α i . n_c=\frac{1}{2\pi}\sum_i(\theta_i(b_i)-\theta_i(a_i))+\frac{1}{2\pi}\sum_i\alpha_i. nc=2π1i∑(θi(bi)−θi(ai))+2π1i∑αi.
這裡的 a i , b i a_i,b_i ai,bi表示分段光滑區間的端點。
接下來是看起來很顯然,但很有用的環繞數定理(Umlaufsatz),這是他的德語名字。
Theorem 4.3.1 假設 c : I → R n c:I\rightarrow \mathbb{R}^n c:I→Rn是一條分段光滑的,正則的簡單閉曲線,則它的環繞數 n c = ± 1. n_c=\pm1. nc=±1.
這裡的簡單閉曲線其實可以很複雜:
比如簡單光滑曲線可以不簡單:
再比如簡單分斷光滑曲線可以相當複雜:
但他們的環繞數其實都是 1 1 1或者 − 1 -1 −1,即繞着走到起點,其實都隻繞了一圈。
參考:
[1]W. Klingenberg. A course in differential geometry. Translated from the German by David Hoffman. Graduate Texts in Mathematics, Vol. 51. Springer-Verlag, 1978.
[2]J. Shurman. Calculus and Analysis in Euclidean Space Undergraduate Texts in Mathematics,Springer-Verlag, 2016.
[3]廈門大學楊波老師的講義:http://math.xmu.edu.cn/group/ga/dg_files/surface_notes.pdf