尋犀記 (5)

2023/11/21閱讀時間約 16 分鐘

五、函數在不同座標系的梯度

在二維平面上,連續變動的點 (x₁, y₁)、(x₂, y₂)、(x₃, y₃)⋯ 可以統稱為 (x, y)。

(x, y) 代表:沿著 x 軸向量 x̂ 之方向、行進了 x 的距離,再沿著 y 軸向量 ŷ 之方向、行進了 x 的距離,將兩者加總,所對應到的平面上的某個點。

(x, y) 的所有點 (x₁, y₁)、(x₂, y₂)、(x₃, y₃)⋯ 的集合,稱為「關係」(relation)。

將前述、僅僅是「關係」的集合,再加上「輸入、輸出」的要件,也就是,將 x 視為輸入的自變數,y 視為輸出的應變數,那麼,這樣的關係,就稱為「函數關係」(functional relation)。

函數關係、類似於機器的輸入與輸出,可以表示為:

y = f(x)

想像有一台機器叫做 f(x) = y,這台機器上面的 x 是它的投幣處,y 是商品跳出處;投進去的銅板是 x₁,跳出來的飲料是 y₁。

現在,假設,要買第二種飲料,所以要投進去的銅板數目不一樣,投 x₂ 進去,得到飲料 y₂⋯ 以下類推。

函數關係、由於受限於「輸入、輸出」的要件,所以,一個輸入的數值、不會產生二個以上的不同的輸出值,換句話說,自變數與應變數、不會是「一對多」的關係。

如果 x、和 y 都是連續的,則在二維平面上,輸入值 x、和輸出值 y、所共同對應的點,會構成一條連續的線。

易言之:

y = f(x) 是二維平面上的曲線,y 是函數的「值」。

我們可以將二維平面上的曲線,視為是三維空間中的曲線的投影。依此,三維空間中的曲線函數、可以表示為:

z = f(x, y(x))

易言之:

z = f(x, f(x)) 是三維空間上的曲線,z 是函數的「值」。

倘若,現在,x、和 y 都是自變數,彼此不受縛於函數的關係,而在二維平面上的每個 (x, y) 的點、又都對應到三維空間的「值」,則這樣的函數關係、會構成三維空間中的曲面。

易言之:

z = f(x, y) 是三維空間中的曲面,z 是函數的「值」。

同理,在我們所熟悉的直角座標系 (Cartesian coordinates) 以外的正交座標系中:

r = f(θ) 是極座標系 (polar coordinates)、二維平面上的曲線;

z = f(r, θ) 是圓柱座標系 (cylindrical coordinates)、三維空間中的曲面。

三維空間的函數,可以各由直角座標系的觀點、和極座標系的觀點、分別觀察。在符號的使用上,我們省略函數的 f 字、而代以函數在三維空間的「值」z;

亦即,表示為:

z = z(x, y) = z(r, θ)

以更符合精簡、經濟的要求。

以上,是對於函數的概要介紹。

前篇、舉出了畢氏定理的向量表達:

x x̂ + y ŷ = r r̂

其中,x̂ 是 x 座標軸上的向量,ŷ 是 y 座標軸上的向量;x̂ 和 ŷ 互相垂直。

文字敘述,即是:

從底邊 x 和斜邊 r 的交點為原點出發、沿著 x̂ 方向移動,至終點,再以此端點為起點、沿著 ŷ 方向移動,而至終點;前述的移動、相當於:由原來的原點出發、沿著 r̂ 方向移動,而至終點。

前式,經由將等號兩邊同乘、同除的變化,其結果、相當於:

(x/r) x̂ + (y/r) ŷ = (r/r) r̂

cos θ x̂ + sin θ ŷ = r̂

r cos θ x̂ + r sin θ ŷ = r r̂

上列等式,既有單位圓周上的半徑向量 r̂,亦有 x 座標軸上的單位向量 x̂、和 y 座標軸上的單位向量 ŷ;所以,可以說:畢氏定理的向量表達,其實已經蘊含了直角座標系 (Cartesian coordinates) 與極座標系 (polar coordinates) 的轉換關係 (transformation relation)。

它們的第一層轉換關係如下:

r = √(x² + y²)

θ = arctan (y/x)

x = r cos θ

y = r sin θ

偏導數 (partial derivative) 指的是:在一個連續改變的形體中,某個數值、沿著構成另一數值的座標軸之方向移動,其改變之程度。

視某個數值、為另一個數值的函數,並在其他分量不變的前提下、取偏導數,其幾何的意義相當於:在連續改變的形體上、選擇其中的一條切線,並求得其斜率。

進而,純量函數在各個座標軸方向的偏導數、分別構成其梯度向量 (gradient vector) 的分量,在幾何上、此意謂:在二維平面上,曲線的梯度向量、就是與等高線 (isocontour line) 垂直的法向量,在三維空間中,曲面的梯度向量、就是與切平面 (tangent plane) 垂直的法向量。

比方,在騎腳踏車時,如果上坡的路線過於陡峭,則我們可以將往上直騎的路線、改為斜向,這樣、可以比較省力,其投影的意義為:在二維平面上,由於梯度向量的方向、垂直於等高線,因而,乃是最快到達下一個等高線的方向,同時、也是上坡最為費力的方向;如果,這時,將往上直騎的路線改為斜向,由於非與梯度向量平行,便不那麼費力,但相應付出的、則是較慢到達的代價。

再者,由於函數的梯度向量、總是與等高線的切線方向垂直,所以,如果行進的路線、並不是沿著等高線的切線方向前進,那麼,除非,行進的位置、恰好位於路徑的最高點、或最低點,否則,便不會有與梯度向量垂直的情況發生,換句話說,亦僅有在路徑的最高點、或最低點的時刻,行進的方向、才會與等高線的切線方向平行;此分析、稱為「受限制的極大化問題」(the constrained-optimization problem)。

若分別就函數在極座標系的分量、之於其在直角座標系的分量、進行偏微分,及就函數在直角座標系的分量、之於其在極座標系的分量、進行偏微分,那麼,二座標系的分量數值之轉換,就更能夠顯現它們之間的深刻關係。

此即:

∂r/∂x = ∂/∂x (√(x² + y²))

= (x / √(x² + y²))

= r cos θ / r

= cos θ

∂r/∂y = ∂/∂y (√(x² + y²))

= (y / √(x² + y²))

= r sin θ / r

= sin θ

∂θ/∂x = ∂/∂x (arctan (y/x))

= (1 / (1 + (y/x)²) ∂/∂x (y/x)

= (1 / (1 + (y/x)²) (-y/x²)

= -y / (x² + y²)

= -r sin θ / r²

= - sin θ / r

∂θ/∂y = ∂/∂y (arctan (y/x))

= (1 / (1 + (y/x)²) ∂/∂y (y/x)

= (1 / (1 + (y/x)²) (1/x)

= x / (x² + y²)

= r cos θ / r²

= cos θ / r

∂x/∂r = cos θ

∂x/∂θ = -r sin θ

∂y/∂r = sin θ

∂y/∂θ = r cos θ

本篇的目的,首先,是要尋找極座標系的梯度向量 (gradient vector) 之運算法則,其次,想要進而探討的是:在經由不同座標系間的數值轉換後,梯度是否仍然是一個不變量?

我們知道,座標系、其實是某種特定觀點的選取,而由不同的觀點、去看待相同的一件事物時,哪些、會改變,哪些、不會改變,則是我們有興趣研究的課題。

據說,恆河的水,餓鬼看它、是一條大火流,人看見的、只是一條河流,在天界神仙的眼裡、卻是充滿了珍寶的光流;流的形象、會改變,但它怎麼彎曲、又往哪個方向流去、則不會改變。

是以,雖說「萬法唯心所現」,但是,由觀點之不同、所構成的視野之差異,與說一切、不過是由心的投影、所虛構出來的幻境,這兩者之間、還是要善加甄別,不能籠統地一概而論。

二維的極座標系、有兩個單位座標向量,它們互相垂直。

此即:

θ̂·r̂ = 0

其中,半徑向量 r̂、為:

r̂ = cos θ x̂ + sin θ ŷ

旋轉向量 θ̂、乃是由半徑向量 r̂ 之於旋轉角度 θ 進行微分求得,其為:

θ̂ = - sin θ x̂ + cos θ ŷ

至於位置向量 (position vector),由前述畢氏定理的向量表達:

x x̂ + y ŷ = r r̂

可以知道,在直角座標系中,位置向量 R⃗、應表示為如下的形式:

R⃗ = x x̂ + y ŷ

其向量的表達形式、為:

R⃗ = (x, y)

而在極座標系中,位置向量 R⃗、則應表示為如下的形式:

R⃗ = r r̂

其向量的表達形式、為:

R⃗ = (r, 0)

這是因為,半徑向量 r̂ 是、而且僅是旋轉角度 θ 的函數,它不會沿著自身的方向伸長、或縮短,而僅會依着旋轉角度的改變而旋轉;因此,不同的旋轉角度 θ、即對應著相應的半徑向量 r̂。

以是之故,位置向量 R⃗ 乃純由被旋轉角度 θ 決定的半徑向量 r̂、乘以某數值而得,而非分別由半徑向量 r̂、和旋轉向量 θ̂、乘以某數值、相加而得;

亦即,不是如此:

R⃗ = r r̂ + θ θ̂

因而,若將位置向量 R⃗ 表示為如下的向量形式:

R⃗ = (r, θ)

應該是有問題的。

位置向量 R⃗ 的微小改變、是為:

d (r r̂) = (dr) r̂ + r (dr̂)

= (dr) r̂ + r (dr̂/dθ dθ)

= (dr) r̂ + r (d/dθ r̂ dθ)

= (dr) r̂ + r (d/dθ (cos θ x̂ + sin θ ŷ) dθ)

= (dr) r̂ + r ((- sin θ x̂ + cos θ ŷ) dθ)

= (dr) r̂ + r dθ (- sin θ x̂ + cos θ ŷ)

= dr r̂ + r dθ θ̂

= (dr, r dθ)

除了前述座標系間、分量數值的轉換關係之外,函數本身的「值」、也可以經由沿著構成其分量的座標軸之方向移動、求得偏導數。

此即:

∂z/∂x = ∂z/∂r ∂r/∂x + ∂z/∂θ ∂θ/∂x

= ∂z/∂r (cos θ) + ∂z/∂θ (- sin θ / r)

= (cos θ) ∂z/∂r + (- sin θ / r) ∂z/∂θ

∂z/∂y = ∂z/∂r ∂r/∂y + ∂z/∂θ ∂θ/∂y

= ∂z/∂r (sin θ) + ∂z/∂θ (cos θ / r)

= (sin θ) ∂z/∂r + (cos θ / r) ∂z/∂θ

∂z/∂r = ∂z/∂x ∂x/∂r + ∂z/∂y ∂y/∂r

= ∂z/∂x (cos θ) + ∂z/∂y (sin θ)

= (cos θ) ∂z/∂x + (sin θ) ∂z/∂y

∂z/∂θ = ∂z/∂x ∂x/∂θ + ∂z/∂y ∂y/∂θ

= ∂z/∂x (-r sin θ) + ∂z/∂y (r cos θ)

= (-r sin θ) ∂z/∂x + (r cos θ) ∂z/∂y

可以看出:它們彼此構成了Jacobian 矩陣之轉換關係,此處不擬列出。

現在,我們要問:一個函數、在極坐標系中的梯度向量為何?

已知,函數本身的「值」,其微小的改變、以極座標系表示、為:

dz = ∂z/∂r dr + ∂z/∂θ dθ

而這個改變,依鏈鎖律 (chain rule),又相當於它的梯度向量、與位置向量的微小改變、相乘之內積:

dz = ∇ z(r, θ) · dR⃗

= ∇ z(r, θ) · d (r r̂)

= (∇ₛ, ∇ₜ) · (dr, r dθ)

= ∇ₛ dr + ∇ₜ r dθ

拿這個結果、和前式相比較,就可以知道,函數在極座標系的梯度向量、即為:

∇ z(r, θ) = (∇ₛ, ∇ₜ)

= (∂z/∂r, (1/r) ∂z/∂θ)

= ∂z/∂r r̂ + (1/r) ∂z/∂θ θ̂

這代表,梯度向量、在極座標系的運算法則、為:

∇ = (∂/∂r, (1/r) ∂/∂θ)

另外,我們想要知道,由直角座標系的觀點、所求得的梯度、是否能與極座標系的梯度相通。

函數本身的「值」,其微小的改變、以直角座標系表示、為:

dz = ∂z/∂x dx + ∂z/∂y dy

而這個改變,依鏈鎖律 (chain rule),又相當於它的梯度向量、與位置向量的微小改變、相乘之內積:

dz = ∇ z(x, y) · dR⃗

= ∇ z(x, y) · d (x x̂ + y ŷ)

= (∇ₓ, ∇ᵧ) · (dx, dy)

= ∇ₓ dx + ∇ᵧ dy

拿這個結果、和前式相比較,再將前述函數本身的「值」、沿著 x、y 軸方向移動、所得到的偏導數之內容代入,就可以知道,函數在直角座標系的梯度向量、為:

∇ z(x, y) = (∇ₓ, ∇ᵧ)

= (∂z/∂x, ∂z/∂y)

= [(cos θ) ∂z/∂r + (- sin θ / r) ∂z/∂θ, (sin θ) ∂z/∂r + (cos θ / r) ∂z/∂θ]

= [(cos θ) ∂z/∂r + (- sin θ / r) ∂z/∂θ] x̂ + [(sin θ) ∂z/∂r + (cos θ / r) ∂z/∂θ] ŷ

= [(cos θ) x̂ ∂z/∂r + (- sin θ / r) x̂ ∂z/∂θ] + [(sin θ) ŷ ∂z/∂r + (cos θ / r) ŷ ∂z/∂θ]

= [(cos θ) x̂ ∂z/∂r + (sin θ) ŷ ∂z/∂r] + [(- sin θ / r) x̂ ∂z/∂θ + (cos θ / r) ŷ ∂z/∂θ]

= [cos θ x̂ + sin θ ŷ] ∂z/∂r + [(- sin θ / r) x̂ + (cos θ / r) ŷ] ∂z/∂θ

= [r̂] ∂z/∂r + [(1/r) θ̂] ∂z/∂θ

= ∂z/∂r r̂ + (1/r) ∂z/∂θ θ̂

此結果、等於函數在極座標系的梯度向量。

因此,我們得到:

∇ z(x, y) = ∇ z(r, θ)

這就證明了:函數的梯度向量,不論是用極座標系、或直角座標系的觀點求得,其結果皆相同。

一般化而言,位置向量 R⃗ 的微小改變、為:

dR⃗ = ∂R⃗/∂u₁ du₁ + ∂R⃗/∂u₂ du₂

= (∥∂R⃗/∂u₁∥ / ∥∂R⃗/∂u₁∥) ∂R⃗/∂u₁ du₁+ (∥∂R⃗/∂u₂∥ / ∥∂R⃗/∂u₂∥) ∂R⃗/∂u₂ du₂

= ∥∂R⃗/∂u₁∥ (∂R⃗/∂u₁ / ∥∂R⃗/∂u₁∥) du₁+ ∥∂R⃗/∂u₂∥ (∂R⃗/∂u₂ / ∥∂R⃗/∂u₂∥) du₂

= ∥∂R⃗/∂u₁∥ (û₁) du₁ + ∥∂R⃗/∂u₂∥ (û₂) du₂

= ∥∂R⃗/∂u₁∥ du₁ û₁ + ∥∂R⃗/∂u₂∥ du₂ û₂

= (∥∂R⃗/∂u₁∥ du₁, ∥∂R⃗/∂u₂∥ du₂)

函數本身的「值」,其微小的改變、為:

dz = ∂z/∂u₁ du₁ + ∂z/∂u₂ du₂

而這個改變,依鏈鎖律 (chain rule),又相當於它的梯度向量、與位置向量的微小改變、相乘之內積:

dz = ∇ z(u₁, u₂) · dR⃗

= ∇ z(u₁, u₂) · (∥∂R⃗/∂u₁∥ du₁ û₁ + ∥∂R⃗/∂u₂∥ du₂ û₂)

= (∇ᵤ, ∇ᵥ) · (∥∂R⃗/∂u₁∥ du₁, ∥∂R⃗/∂u₂∥ du₂)

= ∇ᵤ ∥∂R⃗/∂u₁∥ du₁ + ∇ᵥ ∥∂R⃗/∂u₂∥ du₂

拿這個結果、和前式相比較,就可以知道,函數的梯度向量、在一般化的情況、即為:

∇ z(u₁, u₂) = (∇ᵤ, ∇ᵥ)

= ((1 / ∥∂R⃗/∂u₁∥) ∂z/∂u₁, (1 / ∥∂R⃗/∂u₂∥) ∂z/∂u₂)

= ((1/h₁) ∂z/∂u₁, (1/h₂) ∂z/∂u₂)

= (1/h₁) ∂z/∂u₁ û₁ + (1/h₂) ∂z/∂u₂ û₂

h₁、h₂ 分別為偏導數向量之長度,稱為標度因子 (scale factors)。

已知,在二維平面上,位置向量 R⃗ 的微小改變之一般化表達、是為:

dR⃗ = (∥∂R⃗/∂u₁∥ du₁, ∥∂R⃗/∂u₂∥ du₂)

= (h₁ du₁, h₂ du₂)

將其與梯度向量之一般化表達排比對照,二者,由於標度因子 h₁、h₂ 之凹凸嵌入,猶如齒輪的嚙合般、上下密合。

    在我死前
    在我死前
    留言0
    查看全部
    發表第一個留言支持創作者!