JOVANA
Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

場、del 算子、梯度、散度與旋度

場為空間的每一個點都賦予一個數或一支箭頭;del 算子 nabla 則是探查場如何變化的那一件工具。把它指向三個方向,就分別得到梯度(坡度)、散度(外散)和旋度(旋轉)——餘下整個向量微積分都建立在這三種導數之上。

場:空間中每一點上的一個值

走進本級所棲身的世界。在第一卷裡,一個函數吃進一個數、吐回一個數;連向量場你在那裡也只是匆匆一瞥。在這裡,基本對象是一個:一條把值釘在某塊空間區域裡每一個點上的規則。如果那個值是單獨一個數——房間裡的溫度、空氣中的壓強、小山在每一塊地面之上的高度——它就是一個[[scalar-field|標量場]],記作 f(x, y, z)。想象那個房間:每一點上有一個數,即溫度,而整個布置就是一片填滿空間的、平滑的暖意地貌。

但許多量並不是單獨一個數——它們既有大小,又有方向。流動河水的速度、風、引力的牽引、每一點上的電場力:這些都是給每一點繫上一支箭頭、而不是一個數。這就是一個[[vector-field-advanced|向量場]],記作 F(x, y, z) = (P, Q, R),其中 P、Q、R 各自是位置的普通標量函數,給出箭頭的三個分量。想象那條河:每一點上都坐著一支小箭頭,顯示水往哪個方向流、流得多快——一整片箭頭的海洋,時而打著旋,時而筆直奔流。正是這樣的力場與流場,應了本級標題的承諾,也正是向量微積分存在的理由。

del:一支你能用來求導的向量

現在來認識那件統領全局的工具:[[del-operator|del 算子]],寫作 nabla,讀作「del」。它是一個大膽而單純的想法——把三個偏導數打包成一支向量。用符號寫,nabla = (d/dx, d/dy, d/dz):一支箭頭,它的三個槽位裡裝的不是數,而是三道指令——「對 x 求導」「對 y 求導」「對 z 求導」。回想第一卷:偏導數 d/dx 量度一個多元量在你只推動 x、其餘凍住時如何變化;nabla 不過是把這三種推動一併收進一個對象,讓它像普通向量在空間裡指方向那樣,指出「求導的方向」。

這樣打包為何如此有力,道理在這裡。一支向量與另一個量做代數運算,恰好只有三種方式,而 nabla 三種全都遵從。你可以把向量乘到一個標量上(標量乘向量);可以取兩支向量的點積(向量點向量,得一個數);還可以取兩支向量的叉積(向量叉向量,得一支新向量)。把這三者分別施於 nabla,你便一舉生成向量微積分的三種基本導數:nabla f 是梯度,nabla dot F 是散度,nabla cross F 是旋度。用一支向量的三種方式,對應三種導數——這就是全部的骨架,接下來的三節將逐一拆解。

梯度:最陡坡的方向

把 nabla 指向一個標量場,你得到梯度,nabla f = (df/dx, df/dy, df/dz)。它接過一片地貌,在每一點上交回一支箭頭。你在第一卷裡見過它,就是多元函數的梯度;讓它牢牢扎根的畫面是那座山。設 f 是小山在每一塊地面之上的高度。那麼某處的 nabla f 就是指向[[gradient-steepest-ascent|最陡上升]]方向的箭頭——一顆彈珠若往上坡滾,會沿的那個方向——而它的長度恰是那最陡攀升有多陡。山平坦處梯度為零向量;山驟降處梯度則很長。

兩個事實讓梯度不可或缺,二者都直接從那幅畫裡流出。第一,梯度始終垂直於等值集——那些等高的等高線——因為沿一條等高線高度根本不變,於是「變化最陡」的箭頭必然橫著穿過等高線、而不沿著它。第二,梯度是一切方向坡度的總鑰匙:你沿任意單位方向 u 行走時 f 的變化率,恰是點積 nabla f dot u,這正是多元那一級裡方向導數說精確了的事。於是單單一支梯度向量,就一次性含住了每一個方向上的坡度——把它和你選定要走的那個方向點乘一下即可。

散度:一股流向外鋪開多少

現在把 nabla 點入一個向量場,你得到[[calc-divergence|散度]],每點上是單獨一個標量:nabla dot F = dP/dx + dQ/dy + dR/dz。它接過一股流動,交回一個量度「外散」的數。再想那條河,把鏡頭推近,對準漂在水流裡一隻想象中的小方盒水。那一處的散度問:離開盒子的水,是不是比進入盒子的水多?正的散度意味著淨流出——該點像一個微小的,一隻往裡加流體的水龍頭。負的散度意味著淨流入——一個,一道把它吞下去的排水口。散度為零,意味著流進多少便流出多少,盒子既不增也不減;這樣的流動稱為不可壓縮。

留意這次類型的轉變,並好好品味它:散度吃進一個向量場(每點一支箭頭),交回一個標量場(每點一個數)。這正是點積在盡它的本分——兩支向量的點積總是一個數。它算出的那個數是地地道道局部的:某點的 nabla dot F 只取決於該點緊鄰的小鄰域裡箭頭如何變化,是「流出減流入」的無窮小版本。這個局部的「外散率」,是本級即將登場的一條大定理的種子——散度定理,它會把一塊區域內部所有這種微觀外散加起來,得到穿過其表面向外的總通量。眼下,只把散度讀作每一點上的「源或匯」的強度。

旋度:一股流旋轉多少

用向量 nabla 的第三種、也是最後一種方式是叉積,它給出[[curl|旋度]],nabla cross F——又是一個向量場,因為兩支向量的叉積是一支向量。散度量度外散,旋度則量度旋轉。在某點的流動裡放下一隻小小的槳輪。如果水在一側推得比另一側更狠,槳輪就轉起來。那一點的旋度,就是記錄這局部旋轉的箭頭:它沿槳輪所繞的轉軸指向(依右手定則——右手四指隨旋轉彎曲,拇指即給出方向),其長度是局部轉動速率的兩倍。流動無打旋處旋度為零,這樣的場稱為無旋。

有一個常見的陷阱值得立刻點明:旋度說的是局部的旋轉,而不是整股流動整體上是否繞著圈走。水緊緊旋著沖下排水孔,與水沿一條又寬又直的河滑行,二者都可能有旋度、也都可能沒有,全看那「切變」——相鄰流線是否以不同速度運動。一股完美的圓形流動,若外圈的水恰好落後得足夠多,也可以是無旋的;而一股筆直的流動,若一岸跑得比另一岸快、把那隻小槳輪擰動,也可以有旋度。檢驗始終如一:一隻自由漂浮的槳輪會不會繞自己的中心轉?這——而非流線的形狀——才是旋度所探測的。

把三者合在一起

ONE OPERATOR, THREE DERIVATIVES   ( nabla = (d/dx, d/dy, d/dz) )

  gradient    nabla f       scalar field  ->  vector field   (slope, steepest ascent)
  divergence  nabla . F     vector field  ->  scalar field   (spreading: source/sink)
  curl        nabla x F     vector field  ->  vector field   (rotation: local spin)

  Two identities that are always true (for smooth fields):

    curl of a gradient  =  0        nabla x (nabla f) = 0     gradients never swirl
    div of a curl       =  0        nabla . (nabla x F) = 0   curls never spread

  Divergence of a gradient = the Laplacian:

    nabla . (nabla f) = nabla^2 f = d2f/dx2 + d2f/dy2 + d2f/dz2
三種導數按「輸入什麼類型、輸出什麼類型」排好,再加上每個光滑場都遵守的兩條恆等式,以及散度與梯度合力搭出的拉普拉斯算子 nabla^2 f。

盒子裡那兩條[[vector-identities|向量恆等式]]值得停一停,因為它們不是偶然——它們就是 nabla 與自己的點積和叉積,從同一套代數裡落出來。任何梯度的旋度為零,nabla cross (nabla f) = 0,呼應著「一支向量與自身叉乘為零」:一個純粹是坡度的場,永遠不會打旋。任何旋度的散度為零,nabla dot (nabla cross F) = 0,呼應著「一支向量先點後叉為零」:一個純粹是旋轉的場,永遠不會外散。這兩個事實,是日後積分定理、以及整個的概念賴以轉動的、不聲不響的合頁。

還有一種組合,而它是數學物理裡最重要的算子:梯度的散度,nabla dot (nabla f) = nabla^2 f,拉普拉斯算子。它把那些純二階導數 d2f/dx2 + d2f/dy2 + d2f/dz2 加起來,量度一點上的值與其鄰居的平均值相差多少——這是擴散、穩態溫度、靜電學的核心。你也會遇到與之相關的向量拉普拉斯算子。拉普拉斯算子正是這些算子超越「記帳」之所以要緊的緣由:它坐鎮那幾大偏微分方程——熱方程、波動方程、拉普拉斯方程——的正中央,而本卷餘下的內容,正是為解它們而建。

  1. 先認清場的類型:是標量場 f(每點一個數)還是向量場 F(每點一支箭頭)。這決定了哪個算子才有資格作用。
  2. 對標量場,取梯度 nabla f,得到最陡坡的箭頭——一個垂直於等值集的向量場。
  3. 對向量場,取散度 nabla dot F(一個標量:淨外散)和旋度 nabla cross F(一個向量:局部旋轉)。
  4. 需要時再組合:先梯度後散度給出拉普拉斯算子 nabla^2 f;並記住「梯度的旋度」與「旋度的散度」恆為零。