Kittel·固態物理

全書逐章 / 第 2 章 波繞射與倒晶格 / 小節 2

02散射波振幅——傅立葉分析與倒晶格向量

SCATTERED WAVE AMPLITUDE — Fourier Analysis; Reciprocal Lattice Vectors

書本 p.27-29 · 小節 2 / 5 · 概念 13 推導 5 公式 17

Bragg 定律只算得出繞射「往哪個角度去」,算不出「有多亮」。這一段把晶體的電子密度攤成傅立葉級數,逼問「哪些傅立葉分量被晶格週期性允許」——答案就是倒晶格;而 bᵢ·aⱼ = 2πδᵢⱼ 這條定義,存在的唯一理由是要讓 exp(iG·T) 剛好等於 1。

這一段要補的洞:Bragg 定律算得出角度,算不出強度我的判讀

前一小節(The Bragg law,書本 p.25)給出的是 2d sin θ = nλ。這條式子只用到一件事——原子平面之間相隔 d。它完全不問每個平面上坐了什麼原子、原胞裡的電子怎麼分布。書上 p.25 自己把這個侷限講得很直白:Bragg 定律是晶格週期性的後果,而且這條定律不涉及與每個格點相聯繫的原子基底(basis)的組成。

問題是實驗上明明看得到 basis 的效果。bcc 結構裡 h+k+l 為奇數的反射整組消失、鑽石結構裡 (200) 消失,這些「該出現卻沒出現」的峰,Bragg 定律一個字都解釋不了。同一個晶格、不同的 basis,繞射圖的位置一樣但強度完全不同。

所以 p.26 的 SCATTERED WAVE AMPLITUDE 一開頭就把缺口點出來:Bragg 的推導漂亮地陳述了「從格點散射出來的波何時建設性干涉」這個條件,但要決定散射強度,必須做更深入的分析,而強度來自原子基底,也就是每個 cell 之內電子的空間分布(原文用的字是 "the spatial distribution of electrons within each cell")。

這一句話決定了接下來一頁半的整條技術路線。既然要處理「每個 cell 內電子的空間分布」,就不能再把原子當成幾何點,必須把電子數密度 n(r) 當成一個連續的場來處理;而既然這個場是週期的,處理它最自然的工具就是傅立葉級數。

整章的路線圖因此是:

步驟內容書本頁
1把 n(r) 展成傅立葉級數,問「哪些傅立葉分量被週期性允許」p.27–28
2答案是一個離散點陣,把它建構出來 = 倒晶格p.29–30
3把繞射條件寫成 Δk = Gp.30 起
4振幅正比於 n_G,把 n_G 拆成各原子的貢獻 = 結構因子p.39 起

本段負責的是第 1 與第 2 步。請特別注意這一段的邏輯方向:它不是在「介紹一個叫倒晶格的新玩意」,而是在解一個方程——找出哪些 G 能讓 Σ n_G exp(iG·r) 保有晶格的平移不變性。倒晶格是這個方程的解,不是前提。這個方向感在後面 (16)(17) 那兩行會變成決定性的。

起點是一句近乎廢話的陳述:n(r + T) = n(r)(p.27)

書上先把第 1 章的結論重述一次:晶體在任何形如 T = u₁a₁ + u₂a₂ + u₃a₃ 的平移下不變,其中 u₁, u₂, u₃ 是整數,a₁, a₂, a₃ 是 crystal axes(晶軸)。

接著擴大範圍:晶體的任何局域物理性質在 T 之下都不變。書上舉了三個例子——電荷濃度(charge concentration)、電子數密度(electron number density)、磁矩密度(magnetic moment density)。

「局域」這兩個字要抓住。非局域量(例如整塊晶體的總電荷、總能量)談不上週期性;(2) 說的是一個場在空間每一點的值,被平移原封不動地複製過去。

對這一章最重要的是其中一個:電子數密度 n(r) 是 r 的週期函數,沿三個晶軸方向的週期分別是 a₁, a₂, a₃。於是得到 (2)。(書上這裡把 a₁, a₂, a₃ 同時當成向量與「週期」在用,意思是沿 a₁ 方向平移 |a₁| 後函數復原。)

然後書上寫下一句方法論宣言,這句話值得抄在筆記第一頁:這樣的週期性替傅立葉分析創造了理想的情境,而晶體最有趣的那些性質,直接與電子密度的傅立葉分量有關。

這不只是本章的綱領,而是整本固態物理的技術綱領。之後你會一再看到同一個動作:遇到週期系統,就改用傅立葉分量當變數。(以下的跨章預告是我補的,書上此處只寫了上面那句方法論宣言:)Bloch 定理(第 7 章)是把波函數這樣處理,聲子(第 4、5 章)是把位移場這樣處理,能帶結構是把週期位能這樣處理。學會這一段,等於學會了後面十幾章共用的那一招。

晶體的平移不變性(本段唯一的物理輸入)

n(r + T) = n(r)

(2)  p.27

n(r):電子數密度,即單位體積內的電子數,量綱 [1/length³]。r:晶體內任一點的位置向量。T = u₁a₁ + u₂a₂ + u₃a₃:晶格平移向量,u₁, u₂, u₃ 為整數。a₁, a₂, a₃:晶軸(書上用語 crystal axes)。

出處推導
由第 1 章建立的晶格平移對稱性直接得到。隱含前提是「理想無窮晶體」——真實晶體有表面、點缺陷、位錯與熱振動,(2) 嚴格說只在理想化下成立。書上此處沒有討論這些偏離。
極限行為
這條式子的資訊量看似為零,但它的威力在於「對所有整數組 (u₁, u₂, u₃) 都要成立」這個全稱量詞——(17) 會顯示,正是這個全稱要求把 G 逼成一個離散格點而不是連續集合。兩種重要的偏離:(i) 真實樣品只有有限個原胞,積分區間不是整數個週期,繞射峰因而有有限寬度(本章 Problem 4, p.44 算的就是這件事,峰寬正比於 1/M);(ii) 非晶質或液體沒有長程平移對稱,(2) 完全失效,傅立葉和必須換成傅立葉積分,繞射圖從銳利的點變成寬闊的暈環。

一維先行 (3):用最沒有爭議的正弦餘弦級數起手

書上刻意先降維:考慮一維函數 n(x),沿 x 方向週期為 a,把它展成正弦與餘弦的傅立葉級數,得到 (3)。

(3) 的寫法有三個刻意的安排:

第一,常數項 n₀ 被單獨拉出來,不放進求和裡。第二,求和只跑 p > 0 的正整數(書上明說 the p are positive integers)。第三,係數 C_p 與 S_p 是實常數,書上稱它們為展開的 Fourier coefficients。

為什麼要從實數級數起手?(書上沒有解釋這個選擇的理由,以下是我補的教學評語:)因為讀者對 sin/cos 級數沒有心理障礙,而且實數性是白送的——每一項本來就是實函數,n(x) 自動是實的,不必額外要求什麼。

代價是記號笨重:兩組係數、求和範圍要限制、常數項要另外處理。後面 (5) 換成複數指數就是為了解決這個笨重,但那時「實數性」就從免費變成要付費——這就是 (6) 的來歷。這一步的得失,書上處理得非常快,是本段最容易讀過去而沒察覺的地方。

另外注意 (3) 裡允許出現的「頻率」只有 2π/a 的整數倍,也就是 2πp/a。為什麼只能是這些?這正是 (4) 要驗證的事。

一維週期函數的實傅立葉級數

n(x) = n₀ + Σ_{p>0} [ C_p cos(2πpx/a) + S_p sin(2πpx/a) ]

(3)  p.27

n₀:常數項,即一個週期內的平均電子密度。p:正整數(書上明寫 positive integers)。C_p, S_p:實常數,書上稱為 Fourier coefficients。a:一維週期。

出處推導
一維週期函數的標準實傅立葉級數。書上直接寫下,沒有討論完備性(「任何週期函數都能這樣展開」屬於分析學結果,Kittel 不處理)。
極限行為
p = 0 的項被單獨寫成 n₀ 是有理由的:cos 0 = 1、sin 0 = 0,若硬併進求和,S₀ 那個自由度恆等於零、係數會退化。n₀ 的物理意義是一個週期內的平均電子密度(量綱仍為 [1/length³],n(x) 只是把三維密度看成沿 x 的函數,並沒有變成線密度);在三維版本 (9) 裡它對應 G = 0 的分量,而在繞射實驗中 G = 0 就是未偏折的直穿光束——它攜帶總電子數的資訊,卻完全不帶結構資訊。這是為什麼繞射圖分析永遠從第一個非零的 G 開始。(G = 0 對應直穿光束這一句是我補的解讀,書上這一節沒有這樣寫。)

2π/a 這個因子究竟在做什麼:把 (4) 的代數逐步補齊補推導

書上把 (4) 寫成兩行等式一氣呵成,中間「2πp 是 2π 的整數倍」那一步沒有明說。對熟手當然是顯然的,但這一步正是整節的種子,不補出來後面 (17) 會顯得像是另一件新事情。

記住這裡出現的模式,它會原封不動地在三維重演一次:要求平移不變 → 逼出相位必須是 2π 的整數倍 → 逼出波向量落在離散格點上。 (17) 只是把同一句話搬到三維、用三個整數而不是一個。

  1. 目標:驗證 (3) 所定義的 n(x) 真的滿足 n(x + a) = n(x)。這件事並非自動成立。若把 cos(2πpx/a) 換成 cos(κx),它的週期是 2π/κ;只有當 κ 恰好取 2πp/a(p 為整數)時,a 才會是它的週期(或週期的整數倍)。所以 2π/a 這個因子是被要求的,不是隨便挑的。
  2. 代入:把 x 換成 x + a。每個餘弦的幅角變成 2πp(x + a)/a = 2πpx/a + 2πp。正弦同理。這就是 (4) 的第一行:n(x + a) = n₀ + Σ[C_p cos(2πpx/a + 2πp) + S_p sin(2πpx/a + 2πp)]。
  3. 關鍵一步(書上沒有明講):因為 p 是整數,2πp 是 2π 的整數倍;而 cos 與 sin 的週期恰為 2π,所以 cos(θ + 2πp) = cos θ、sin(θ + 2πp) = sin θ。整段 (4) 的邏輯重量全壓在這一行上。
  4. 收尾:於是 (4) 的第一行等於第二行 n₀ + Σ[C_p cos(2πpx/a) + S_p sin(2πpx/a)],而後者按 (3) 的定義就是 n(x)。故 n(x + a) = n(x)。
  5. 把這一步抽象化看:真正被使用的條件是 (2πp/a)·a ∈ 2πℤ。若把平移量從 a 推廣到任意晶格平移 t = ma(m 為整數),要求 κ·t ∈ 2πℤ 對所有 m 成立,解出來就是 κ ∈ (2π/a)ℤ。這正是一維版本的 (14)(b·a = 2π)與 (17)(exp(iG·T) = 1)。三維倒晶格那一整套外積建構,骨架就是這五行。
  6. 量綱旁證:2πp/a 的量綱是 [1/length],乘上 x 才無因次。這已經預告了 p.30 那句「倒晶格中的向量量綱是 [1/length]」。

週期性的驗算:2π/a 保證 n(x) 的週期是 a

n(x + a) = n₀ + Σ[ C_p cos(2πpx/a + 2πp) + S_p sin(2πpx/a + 2πp) ] = n₀ + Σ[ C_p cos(2πpx/a) + S_p sin(2πpx/a) ] = n(x)

(4)  p.27

符號同 (3)。2πp 是把 x 平移一整個週期 a 所產生的額外相位。

出處推導
把 x → x + a 代入 (3),再用 cos 與 sin 的 2π 週期性。
極限行為
若把 a 換成一個不是晶格平移的量 t(t 不是 a 的整數倍),額外相位變成 2πpt/a,一般不是 2π 的整數倍,等式立刻不成立——這就是「只有晶格平移才是對稱操作」的代數表現。校註(原書記號鬆散處):書上在 p.27 說「倒晶格點告訴我們傅立葉級數 (4) 或 (5) 中允許的項」,p.28 又說「把級數 (4) 寫成緊緻形式」,都把 (4) 當成「級數」在指涉。但嚴格講級數是 (3),(4) 只是它的週期性驗算(雖然 (4) 的右側確實把整個級數又抄了一遍)。照字面去找「級數 (4)」會困惑,這是原書編號的鬆散,不是讀者理解錯誤。

倒晶格首次登場,與 Fig. 5(p.27)的完整文字描述

(4) 之後書上立刻下定義:2πp/a 是晶體的 reciprocal lattice(倒晶格)或 Fourier space(傅立葉空間)中的一個點。一維時這些點落在一條直線上。

接著是本頁最關鍵的一句(書上把 reciprocal lattice points 印成粗體,表示這是術語的定義處):倒晶格點告訴我們傅立葉級數中允許出現哪些項。一個項是被允許的,若它與晶體的週期性相容,如 Fig. 5 所示;倒空間中其他的點,在一個週期函數的傅立葉展開裡是不被允許的。

Fig. 5 的內容(網頁不放圖,以下是對書上該圖的文字描述,已用 PyMuPDF 算繪放大目視確認):

圖分上下兩部分。

上半畫的是一個週期為 a 的函數 n(x),畫成一排直立的長條(bar)。每一個長度為 a 的週期之內有兩根長條:一根高、一根矮,「高+矮」這個圖樣沿 x 軸一再重複。圖下方用五段帶雙向箭頭的線段標出連續五個長度為 a 的區間,強調週期就是 a。縱軸標 n(x),橫軸標 x。

下半是一條水平直線,最右端標記 G。線上是一排等間距的黑點,中央那一點標 0,往右依序標 2π/a、4π/a,往左依序標 −2π/a、−4π/a;點與點的間距一律是 2π/a,而且黑點一直延伸到圖的兩端(圖上畫了十幾個點,表示這個點陣是無窮的)。

圖說寫的是:一個週期為 a 的週期函數 n(x),以及在傅立葉變換 n(x) = Σ n_p exp(i2πpx/a) 中可能出現的那些 2πp/a 項。

這張圖的全部訊息可以濃縮成一句話:實空間的一個長度 a,對應倒空間的一串間距 2π/a 的點。實空間的週期決定倒空間的點在哪裡;實空間一個週期內的圖樣(高矮兩根長條)決定每個點上的係數 n_p 有多大。「位置 vs 權重」這個分工,就是後面「倒晶格決定繞射往哪個方向、結構因子決定那個方向有多亮」的雛形。

(以下是我的解讀,書上沒有說明:上半圖為什麼要畫「高+矮」兩根長條,而不是一根一模一樣的?因為那正是 basis。若每個週期內只有一根完全相同的長條,某些 n_p 會恰好為零——那就是一維版本的系統消光。畫兩根不等高的,是在暗示讀者「週期相同、basis 不同,權重就不同」,而這正是 p.26 提出、要到 p.39 才回答的那個問題。)

換成複數指數 (5),以及為此要付的一筆帳 (6)

書上說:把級數寫成緊緻形式 (5) 很方便。這一步同時發生兩件事,必須一起看:

(i) 求和範圍擴大——書上明寫,求和跑遍所有整數 p:正的、負的、以及零。

(ii) 係數變複數——書上明寫,係數 n_p 現在是複數。

這兩件事互相補償,所以自由度不多不少。在 (3) 裡,每個 p > 0 對應兩個實參數 (C_p, S_p);在 (5) 裡,同樣的物理內容由 n_p 與 n₋ₚ 這兩個複數承載,但它們被一個共軛條件綁在一起,剩下的獨立實參數還是兩個。換句話說,(3) → (5) 是純粹換記號,沒有換內容。

代價:實數性不再免費。書上緊接著說,為了確保 n(x) 是實函數,我們要求 (6):n*₋ₚ = nₚ。

書上對星號的位置特別加了一句註解:星號是標在 n₋ₚ 上,表示 n₋ₚ 的複數共軛。這句註解不是廢話——排版上 n*₋ₚ 的星號與下標擠在一起,很容易誤讀。這個條件的內容只有一句話:把下標變號,等於取複數共軛。

順帶澄清一個記號問題:常見的寫法 n₋ₚ = nₚ* 與書上的 n*₋ₚ = nₚ 完全等價(兩邊同取共軛即得)。看到不同教科書寫法不同,不必懷疑自己記錯。

為什麼要為了「緊緻」付這筆帳?因為三維推廣只有複數指數寫得下去。三維時 (3) 那種形式要寫成三重求和、每一項是三個 sin/cos 的乘積展開,根本無法操作;而 exp(iG·r) 一個符號就把三個方向包了進去,而且對「平移」這個操作的行為極其乾淨——exp[iG·(r+T)] = exp(iG·r)·exp(iG·T),指數律直接把平移變成一個乘法因子。整段 (16)(17) 的論證完全建立在這個乘法分解上。

一維傅立葉級數的複數(緊緻)形式

n(x) = Σ_p n_p exp(i2πpx/a)

(5)  p.28

p:跑遍所有整數(正、負、零)。n_p:複數傅立葉係數。2πp/a:倒晶格點(一維)。

出處推導
由 (3) 用 Euler 公式 cos θ = (e^{iθ} + e^{−iθ})/2、sin θ = (e^{iθ} − e^{−iθ})/(2i) 改寫。書上沒有列出係數的對照關係,以下是我補的:n_p = (C_p − i S_p)/2、n₋ₚ = (C_p + i S_p)/2(對 p > 0),而 p = 0 項就是 n₀。由這組對照可以直接看出 n₋ₚ = nₚ*,也就是 (6) 自動成立——(6) 並不是新的物理假設,只是 (3) 的實數性換了記號之後的樣子。
極限行為
p = 0 項即 n₀,是平均電子密度。若把座標原點選在 n(x) 的對稱中心,使 n(x) 成為偶函數,則所有 S_p = 0,於是所有 n_p 都是實數。這就是實務上計算結構因子時「把原點選在反演中心」的動機:它讓複數振幅退化成實數,省掉相位的追蹤。(原點選取這一段解讀是我補的,書上此處未提。)

實數性條件

n*₋ₚ = nₚ

(6)  p.28

星號表複數共軛;書上明確說明星號是標在 n₋ₚ 上,指 n₋ₚ 的複數共軛。等價寫法為 n₋ₚ = nₚ*。

出處推導
書上的處理順序是「先宣告這個條件,再在 (7)(8) 驗證它確實使 p 與 −p 兩項之和為實數」,不是從實數性反推出來的。若照我在 (5) 的 from 欄補的係數對照 n_p = (C_p − iS_p)/2,則 (6) 是自動的推論而非額外要求。
極限行為
取 p = 0 得 n₀* = n₀,即平均密度必為實數——自洽。三維版本是 n*₋G = n_G,書上這一段沒有寫出這個三維形式,是由 (6) 直接平移過去的。物理後果:若晶體另外具有反演對稱 n(−r) = n(r),則 n₋G = n_G;與 (6) 合起來得 n_G = n_G*,即 n_G 為實數。有反演中心的晶體結構因子是實數,沒有反演中心的則是複數——這在繞射相位分析(以及後面異常散射的討論)裡是分水嶺。(反演對稱的推論是我補的。)

(7)(8) 的代數:為什麼 p 與 −p 配成一對就保證是實數補推導

書上這三行寫得極快:令 φ = 2πpx/a,把 p 與 −p 兩項加起來得 (7),再說它等於實函數 (8)。中間每一步都省略了。下面逐步補齊。

推完之後有一個好用的交叉驗算:把 (8) 與 (3) 的第 p 項 C_p cos φ + S_p sin φ 並排,立刻讀出 C_p = 2Re{nₚ}、S_p = −2Im{nₚ}。這與我在 (5) 的 from 欄補的 n_p = (C_p − iS_p)/2 完全一致(取實部得 C_p/2,取虛部得 −S_p/2)。兩條路算出同一組關係,說明 (3) 與 (5) 確實只是同一個級數的兩種寫法。書上沒有做這個對照,但它是確認自己沒讀錯的最快方法。

  1. 設定:令 φ = 2πpx/a(書上明寫這個代換)。注意 −p 那一項的幅角是 2π(−p)x/a = −φ,所以 exp(i2π(−p)x/a) = exp(−iφ)。
  2. 展開:用 Euler 公式,exp(iφ) = cos φ + i sin φ、exp(−iφ) = cos φ − i sin φ。於是 (5) 中 p 與 −p 兩項之和是 nₚ(cos φ + i sin φ) + n₋ₚ(cos φ − i sin φ),這就是 (7) 的第一行。
  3. 合併同類項:把 cos φ 與 sin φ 各自提出來,得 (nₚ + n₋ₚ) cos φ + i(nₚ − n₋ₚ) sin φ。這是 (7) 的第二行(書上把這兩行共用同一個式號 (7))。到這裡為止還完全沒有用到 (6),純粹是恆等變形。
  4. 現在才用 (6)。(6) 說 n*₋ₚ = nₚ,等價於 n₋ₚ = nₚ*。代入第一個括號:nₚ + n₋ₚ = nₚ + nₚ* = 2 Re{nₚ}。(任何複數與其共軛相加,虛部相消,得實部的兩倍。)
  5. 代入第二個括號:nₚ − n₋ₚ = nₚ − nₚ* = 2i·Im{nₚ}。(任何複數減去其共軛,實部相消,得虛部的 2i 倍。)
  6. 負號的來源:i(nₚ − n₋ₚ) = i·(2i Im{nₚ}) = 2i² Im{nₚ} = −2 Im{nₚ}。(8) 式裡 sin 項前面那個減號常被誤以為是印錯,其實它就是 i² = −1。這是本推導唯一容易出錯的地方。
  7. 合起來:(7) = 2Re{nₚ} cos φ − 2Im{nₚ} sin φ,即 (8)。右邊的 2Re{nₚ} 與 2Im{nₚ} 都是實數,cos φ 與 sin φ 也是實數,所以這一對之和是實函數。書上接著說明 Re{nₚ} 與 Im{nₚ} 是實數、分別是 nₚ 的實部與虛部,於是數密度 n(x) 如願是實函數。
  8. 最後一塊(書上沒有明說):要得到「整個 n(x) 是實數」,還需要把所有 p 加總起來。p = 0 項依 (6) 為實數;其餘每一個 p 都與 −p 配成一對,每一對依上面為實數。實數之和為實數,故 n(x) 為實數。少了「逐對配成」這句話,論證並不完整。

p 與 −p 兩項之和(尚未使用實數性條件)

nₚ(cos φ + i sin φ) + n₋ₚ(cos φ − i sin φ) = (nₚ + n₋ₚ) cos φ + i(nₚ − n₋ₚ) sin φ

(7)  p.28

φ = 2πpx/a(書上明寫的代換)。nₚ, n₋ₚ:複數傅立葉係數。書上把等號前後兩行共用式號 (7)。

出處推導
取 (5) 中指標為 p 與 −p 的兩項,用 Euler 公式展開後按 cos φ、sin φ 合併。
極限行為
這一步對任意複數 nₚ、n₋ₚ 都成立,是純代數恆等式;要讓它變成實數才需要 (6)。若 (6) 不成立,(7) 一般是複數,n(x) 就不是一個可觀測的密度——所以 (6) 不是數學上的方便,而是物理上的必要。

p 與 −p 兩項之和的實數形式

2 Re{nₚ} cos φ − 2 Im{nₚ} sin φ

(8)  p.28

Re{nₚ}、Im{nₚ}:nₚ 的實部與虛部,皆為實數(書上明確如此說明)。φ = 2πpx/a。

出處推導
在 (7) 的第二行代入 (6):nₚ + n₋ₚ = 2Re{nₚ},而 i(nₚ − n₋ₚ) = i·(2i Im{nₚ}) = −2Im{nₚ}。減號來自 i² = −1。
極限行為
可以再合成單一餘弦:2|nₚ| cos(φ + arg nₚ)。這個寫法把一個傅立葉分量的兩個獨立實參數重新詮釋成振幅 |nₚ| 與相位 arg nₚ(相位量的是這個密度波相對於座標原點的位移)。這個拆法直指繞射實驗的核心困難:實驗量到的強度正比於 |n_G|²,相位 arg n_G 量不到,所以不能由繞射圖直接反傅立葉回實空間的電子密度。(振幅—相位的詮釋與相位問題是我補的解讀,書上這一節沒有提。)

推廣到三維 (9):這不是展開式,是一個帶未知數的 ansatz

書上用一句話帶過推廣:把傅立葉分析延伸到三維的週期函數 n(r) 是直接的(straightforward)。然後寫下 (9)。

但這裡有一個邏輯細節,錯過了後面就看不懂:(9) 不是一個已知的展開式,而是一個帶未知數的假設形式。 書上寫得其實很清楚——我們必須找出一組向量 G,使得 (9) 在所有讓晶體不變的平移 T 之下不變。G 的集合是待求的。

對照一維就明白為什麼三維要這麼費事。一維時「允許的頻率是 2πp/a」是從 (4) 用眼睛看出來的,因為只有一個方向、只有一個週期。三維時三個晶軸一般既不正交、長度也不同,「哪些波向量與這個晶格相容」不可能用看的,必須建構。這就是為什麼書上接下來要開一個新的小節(Reciprocal Lattice Vectors),用外積寫出 (13)。

書上在 (9) 之後預告了整章的收束點:這組傅立葉係數 n_G 決定 x 光散射振幅。這句話把 (9) 裡的兩個東西各自配了一個實驗對應:

  • G 決定繞射往哪裡去(繞射峰的位置,由晶格決定)
  • n_G 決定那裡有多亮(繞射峰的強度,由 basis 決定)

這正是 p.26 提出的那個問題的答案骨架。

記號提醒:求和指標從一維的整數 p 變成了向量 G,這個求和是對「倒晶格上所有點」求和,實際上是一個三重無窮和 Σ_{v₁} Σ_{v₂} Σ_{v₃}。

三維週期函數的傅立葉展開(G 待定)

n(r) = Σ_G n_G exp(iG · r)

(9)  p.28

G:待求的向量集合(後來證明就是倒晶格向量 (15))。n_G:複數傅立葉係數,書上明言它決定 x 光散射振幅。r:實空間位置向量。

出處推導
(5) 的三維推廣。書上把它當成一個要求提出:必須找到一組 G,使 (9) 在所有晶格平移 T 之下不變。這個要求在 (16)(17) 被解出來。
極限行為
G = 0 的項給出平均電子密度。整個展開的離散性(求和而非積分)完全來自 (2) 的長程週期性:若系統失去長程週期性(非晶、液體、熔融態),允許的 G 從離散點陣塌成連續譜,(9) 必須改寫成傅立葉積分——這就是為什麼非晶材料的繞射圖是寬闊的暈環而不是銳利的點。(這個推論是我補的,書上此處未提。)

Inversion of Fourier Series(p.28):為什麼要證這件看起來顯然的事

先講一件格式上的事,免得你照目錄找不到:Inversion of Fourier Series. 在書上是一個「跑進式小標」(run-in heading)——以粗體(正體,與小節標題 Fourier Analysis、Reciprocal Lattice Vectors 所用的粗斜體不同)印在段落的開頭,後面直接接正文,不另起一行。章首目錄(p.23)與書前目錄都沒有收錄它。它不是一個獨立小節,而是 Fourier analysis 這個小節內部的一段。

這一段要證的是 (10):係數 n_p 可以用一個積分從 n(x) 裡「取出來」。

為什麼這件事需要證? 因為 (5) 與 (10) 是相反方向的兩件事:

  • (5):給定所有係數 → 組出函數。這是合成。
  • (10):給定函數 → 取出某一個係數。這是分析。

物理上真正要用的是後者。實驗量到的是 n(r)(或它的繞射圖),要得到的是 n_G。沒有 (10),(9) 就只是一個形式上的展開,無法拿來算任何東西。第 2 章後半所有的結構因子計算,用的是與 (12) 同一個積分,只差一個歸一化因子:書上 p.39 的 (39) 把結構因子 S_G 定義成 over a single cell 的積分,沒有 V_c⁻¹,所以 S_G = V_c n_G。(12) 本身則是 (10) 的三維版。

書上的證法是回代驗證,不是從頭推導。 把 (5) 代進 (10) 的右邊,看看能不能還原出 n_p。書上最後一句明說:結果 n_p = a⁻¹ n_p a = n_p 是一個恆等式,所以 (10) 是一個恆等式。這種「先假設結論成立,再代回去看看自洽不自洽」的手法在物理教科書很常見;因為每一步都是等號,邏輯上與直接推導等價。

傅立葉係數的反演公式(一維)

nₚ = a⁻¹ ∫₀^a dx n(x) exp(−i2πpx/a)

(10)  p.28

積分跑一個完整週期,從 0 到 a。a⁻¹:歸一化因子。指數上的負號與 (5) 中的正號互為共軛。

出處推導
書上以回代 (5) 的方式驗證(見 (11) 與其後的正交性積分),沒有另外從頭推導。
極限行為
指數上的負號不能省:它的作用是把 (5) 裡第 p 項的相位「轉回原點」,讓該項的被積函數變成常數 1、積分得 a;而其他所有項在一個週期內仍轉整數圈,積掉為零。若誤寫成正號,取出來的會是 n₋ₚ 而不是 nₚ。歸一化因子 a⁻¹ 的作用可由 p = 0 檢驗:n₀ = (1/a)∫₀^a n(x) dx,恰為一個週期內的平均密度,量綱也對([1/length³] 不變)。

回代後的自洽檢驗式

nₚ = a⁻¹ Σ_{p′} n_{p′} ∫₀^a dx exp[ i2π(p′ − p)x/a ]

(11)  p.28

p′:(5) 中的求和啞指標,跑遍所有整數。p:(10) 中指定要取出的那一個特定整數。兩者必須用不同的符號,這是初學最常混淆的地方。

出處推導
把 (5) 改用啞指標寫成 n(x) = Σ_{p′} n_{p′} exp(i2πp′x/a),代入 (10);再把與 x 無關的 n_{p′} 提到積分之外,並用指數律把 exp(i2πp′x/a)·exp(−i2πpx/a) 合併成 exp[i2π(p′−p)x/a]。
極限行為
交換求和與積分這一步嚴格說需要級數一致收斂,書上沒有討論;對物理上的電子密度(有界、平滑)沒有問題。真正的關鍵全在那個積分上——它只認得 p′ 與 p 相不相等,完全不認得它們各自是多少。這就是下一條式子(正交性)。

正交性積分逐步算:為什麼 p′ ≠ p 時恰好是零補推導

書上在 p.29 頂端直接給出 p′ ≠ p 時積分的值,中間的不定積分沒有寫。這一步是整段傅立葉分析的技術核心,也是 Fig. 5 那句「只有倒晶格點對應的項被允許」的全部內容,值得逐步算一次。

算完之後,Fig. 5 的話才能說完整。書上說「倒空間中其他的點不被允許」,聽起來像是一條規定;事實上它是這條積分自動篩選的結果。把 n(x) 對整條無窮長的線做傅立葉變換(不是只積一個週期),得到的是 ñ(κ) = Σ_p n_p·2π·δ(κ − 2πp/a):一串位在倒晶格點上的 δ 函數,權重 2π n_p,其餘所有 κ 嚴格為零。這就是 Fig. 5 下半那排點的精確意思——不是「我們只挑這些點」,而是「其他點的投影量本來就是零」。(無窮長線的傅立葉變換與 δ 函數的形式是我補的,書上這一節只積一個週期,沒有寫出這個式子。)

順帶一提,同樣的正交性在三維版本是 ∫_cell dV exp[i(G′−G)·r] = V_c δ_{G′G},它是 (12) 成立的理由;書上用一句「As in (10)」帶過,沒有寫出來。而這條三維正交性的證明,用的正是 (14):把位置換成分數座標 r = x₁a₁ + x₂a₂ + x₃a₃(dV = V_c dx₁dx₂dx₃),由 b_i·a_j = 2πδ_ij 把指數化成 exp[i2π(Δv₁x₁ + Δv₂x₂ + Δv₃x₃)],再拆成三個一維積分,每一個都回到上面剛算過的情形。

  1. 令 q ≡ p′ − p。因為 p′ 與 p 都是整數,q 是整數。要算的是 I = ∫₀^a dx exp(i2πqx/a)。
  2. 先處理 q ≠ 0。 不定積分:因為 d/dx exp(i2πqx/a) = (i2πq/a)·exp(i2πqx/a),所以 ∫ exp(i2πqx/a) dx = [a/(i2πq)]·exp(i2πqx/a)。那個分子上的 a 來自這裡(把 i2πq/a 移到分母,a 就跑上來),最常被抄漏。
  3. 代上下限 x = a 與 x = 0:I = [a/(i2πq)]·[exp(i2πq) − exp(0)] = [a/(i2πq)]·(e^{i2πq} − 1)。這正是書上 p.29 頂端印出的那條(未編號)式子,書上以 p′ − p 寫 q。
  4. 用整數性收尾:q 是整數,而 exp[i2π(整數)] = 1(書上明白寫出這個理由)。於是括號 (e^{i2πq} − 1) = 1 − 1 = 0,故 I = 0。注意分母 i2πq ≠ 0,不是 0/0 的不定形。
  5. 再處理 q = 0(即 p′ = p)。 不能用第 2 步的式子,因為分母為零。回到被積函數本身:書上明寫 the integrand is exp(i0) = 1,於是 I = ∫₀^a 1 dx = a。
  6. 合併兩種情形:I = a·δ_{p′p}。(用 Kronecker delta 寫成一條是我補的;書上在這裡沒有用 δ,δ 要到 (14) 才被引入。)
  7. 代回 (11):n_p = a⁻¹ Σ_{p′} n_{p′}·a·δ_{p′p} = a⁻¹·n_p·a = n_p。求和中只有 p′ = p 那一項存活,其餘全被篩掉。書上寫成 n_p = a⁻¹ n_p a = n_p,並說這是一個恆等式,所以 (10) 是恆等式。
  8. 幾何圖像(書上沒有給,但這是最該記住的):exp(i2πqx/a) 這個複數在 x 從 0 走到 a 的過程中,在複平面的單位圓上恰好繞了 q 整圈。繞整數圈之後,所有位置的平均值就是圓心,也就是 0。只有 q = 0(完全不轉,永遠停在 1)時平均值才不是零,而是 1(乘上區間長度 a)。「恰好整數圈」這五個字就是晶格週期性在這條積分裡的全部化身。

正交性積分(p′ ≠ p 的情形;原書未編號)

∫₀^a dx exp[i2π(p′−p)x/a] = [ a / (i2π(p′ − p)) ] · ( e^{i2π(p′−p)} − 1 ) = 0

p.29

p′, p:整數。分子上的 a 來自變數代換(積分上限),是最常被抄漏的因子。書上只印出等號右邊那一段(分數乘括號等於零);等號左邊的積分式來自 (11)。

出處推導
對 (11) 中的積分直接求不定積分並代入上下限 0 與 a。書上只印結果,不定積分那一步省略。
極限行為
它等於零的唯一理由是 p′ − p 為整數,使 e^{i2π(整數)} = 1。這個「整數」不是巧合,而是晶體平移群的離散性。兩種重要的破壞方式:(i) 若積分區間不是整數個週期——例如晶體只有有限的 M 個原胞——括號不再精確歸零,得到的是有限寬度的繞射峰,本章 Problem 4(Width of diffraction maximum, p.44)算出的正是 |F|² = sin²(½M a·Δk)/sin²(½ a·Δk),峰寬正比於 1/M,對巨觀的 M 而言窄到極致;(ii) p′ = p 時本式不適用(分母為零),必須回到被積函數 exp(i0) = 1,積分值為 a。

傅立葉係數的反演公式(三維)

n_G = V_c⁻¹ ∫_cell dV n(r) exp(−iG · r)

(12)  p.29

V_c:晶體一個 cell 的體積(書上原話是 the volume of a cell of the crystal)。∫_cell:積分跑遍一個 cell。dV:體積元。

出處推導
書上只寫「As in (10)」——意思是把 (10) 的一維論證原封不動搬到三維:以 (9) 代入右邊,再用三維正交性 ∫_cell dV exp[i(G′−G)·r] = V_c δ_{G′G}。三維正交性書上沒有證明(它靠的是 (14):換成分數座標後拆成三個一維積分),這一點值得讀者自己補上。
極限行為
G = 0 給出 n₀ = (1/V_c)∫_cell n dV = 一個 cell 內的電子數除以 cell 體積,即平均電子密度。實務上最要小心的是 V_c 用哪一個 cell 必須與 G 的定義一致:若用 primitive cell,(13) 的 b_i 就要用 primitive 的 a_i 算;若改用 conventional cell(例如 fcc 的立方胞),對應的倒晶格會多出一些「額外的」G 點,而那些點上 n_G 恰為零——這就是系統消光(systematic absence)的來源,本章後面 FOURIER ANALYSIS OF THE BASIS(p.39 起)處理的就是這件事。
典型數值
以矽為例(鑽石結構,慣用立方晶格常數 a = 5.430 Å):primitive cell 體積 V_c = a³/4 = 40.0 ų,其中含 2 個矽原子、合計 28 個電子,故 n₀ = 28/40.0 ≈ 0.70 電子/ų = 7.0 × 10²³ 電子/cm³。這個數量級(每立方公分 10²³–10²⁴ 個電子)是所有固體的共同尺度,可以當成檢查 n_G 計算是否離譜的標準。

小結(一):這一頁半其實只做了一件事我的判讀

在進入倒晶格向量的建構之前,先把 p.27–29 前半收攏一次。整段的骨架只有三句話:

  1. 週期性((2))使得允許出現的傅立葉分量落在一個離散的點集上,而不是連續的。
  2. 這個離散點集就叫倒晶格(Fig. 5 的下半)。
  3. 正交性積分讓我們能把每一個係數單獨取出來((10)、(12)),於是這個展開從形式變成可計算。

一維與三維的對照表如下。把它一欄一欄讀下來,會發現三維唯一真正新增的東西只有一格:

概念一維(p.27–28)三維(p.28–29)
週期/平移aT = u₁a₁ + u₂a₂ + u₃a₃
展開式(5) n(x) = Σₚ nₚ exp(i2πpx/a)(9) n(r) = Σ_G n_G exp(iG·r)
允許的「頻率」2πp/a,p ∈ ℤG = v₁b₁ + v₂b₂ + v₃b₃,v_i ∈ ℤ
實數性條件(6) n*₋ₚ = nₚn*₋G = n_G(書上未寫出)
反演公式(10) nₚ = a⁻¹∫₀^a dx n exp(−i2πpx/a)(12) n_G = V_c⁻¹∫_cell dV n exp(−iG·r)
歸一化體積aV_c
正交性∫₀^a dx exp[i2π(p′−p)x/a] = a δ_{p′p}∫_cell dV exp[i(G′−G)·r] = V_c δ_{G′G}(書上未寫出)

唯一真正新的那一格是「允許的頻率長什麼樣」。一維時答案用看的就有了(2πp/a);三維時三軸不正交、不等長,答案必須被建構出來。

所以接下來的 Reciprocal Lattice Vectors 小節,任務只有一個:把這張表最後一格填滿。 它看起來像是在介紹一個新概念,其實只是在解一道方程。

Reciprocal Lattice Vectors(p.29):書上怎麼端出這個建構

書上的開場是:要繼續做電子濃度的傅立葉分析,我們必須找出 (9) 那個傅立葉和 Σ n_G exp(iG·r) 裡的向量 G。

緊接著一句很有個性的話:有一個強而有力、但有點抽象(powerful, somewhat abstract)的程序可以做到這件事;這個程序構成固態物理絕大部分的理論基礎,在那裡傅立葉分析是家常便飯(書上的說法是 "the order of the day")。

「somewhat abstract」這個形容詞值得停一下。書上只用 somewhat abstract 形容整個程序,對 (13) 的外觀沒有任何評語;至於 (13) 看起來像是從天上掉下來的——三個外積、一個共同分母、一個 2π——那是我的評語,不是 Kittel 的。他選擇的敘述順序是先給定義 (13)、再驗證性質 (14),而不是先提出要求 (14)、再解出 (13)。後面的推導區塊會把兩個方向都走一次——反過來走一遍,你就會發現 (13) 沒有任何神祕之處,它只是一組線性方程的顯式解。

然後書上寫:我們建構倒晶格的軸向量 b₁, b₂, b₃(reciprocal lattice 以粗體印出,表示這是術語的正式定義處)。接著是 (13)。

(13) 的結構很規律,值得先看清楚再去記:

  • 分子是「另外兩個」直晶格向量的外積,按 1 → 2 → 3 → 1 的循環順序排列:b₁ 用 a₂ × a₃,b₂ 用 a₃ × a₁,b₃ 用 a₁ × a₂。(注意 b₂ 是 a₃ × a₁ 而不是 a₁ × a₃,順序反了就差一個負號。)
  • 分母三條完全相同,都是純量三重積 a₁·a₂ × a₃。
  • 前置因子都是 2π。

分母的意義:a₁·a₂ × a₃ 就是三個直晶格向量張出的平行六面體體積,也就是 primitive cell 的體積(第 1 章的內容)。書上在 (13) 這裡沒有把它寫成 V_c,但它與 (12) 裡的 V_c 是同一個東西。

(13) 之後書上緊接三句話,每一句都有分量:

  1. 這些 2π 因子結晶學家不用,但在固態物理裡很方便。(下面會專門討論這件事。)
  2. 若 a₁, a₂, a₃ 是晶格的 primitive vectors,則 b₁, b₂, b₃ 是倒晶格的 primitive vectors(書上把這幾個字印成粗體)。
  3. (13) 所定義的每一個向量,都與晶格的兩個軸向量正交。

第 3 句是 (14) 的理由,也是整條建構真正的支點。

倒晶格軸向量的定義

b₁ = 2π (a₂ × a₃)/(a₁·a₂ × a₃) ; b₂ = 2π (a₃ × a₁)/(a₁·a₂ × a₃) ; b₃ = 2π (a₁ × a₂)/(a₁·a₂ × a₃)

(13)  p.29

a₁, a₂, a₃:直晶格(crystal lattice)的軸向量。b₁, b₂, b₃:倒晶格的軸向量。分母 a₁·a₂ × a₃ 是純量三重積,等於 primitive cell 的體積 V_c(書上此處未使用 V_c 這個符號,但它與 (12) 的 V_c 相同)。

出處推導
書上直接定義,沒有推導。它的全部語意就是 (14):這樣定義出來的 b_i 恰好滿足 b_i·a_j = 2πδ_ij。後面的推導區塊會證明 (13) 與 (14) 互為充要——(13) 只是 (14) 這組線性方程的顯式解。
極限行為
量綱檢查:分子 [length]²、分母 [length]³,故 b_i 的量綱是 [1/length],與 p.30 的明文陳述一致。正交特例:若直晶格三軸互相正交,(13) 退化成 b_i = 2π â_i/|a_i|,即 b_i 與 a_i 同方向、長度為 2π/|a_i|;簡單立方就給出 b_i = (2π/a)x̂_i,倒晶格仍是簡單立方、邊長 2π/a(本章 p.34 的 Reciprocal lattice to sc lattice 處理這個情形)。一般情形:三軸不正交時 b_i 與 a_i 一般不平行,這是初學最常犯的錯,六方晶是最容易踩到的反例。
典型數值
以矽(fcc 晶格 + 雙原子 basis,a = 5.430 Å)為例:fcc 的 primitive vectors 長度 |a_i| = a/√2 = 3.840 Å,primitive cell 體積 V_c = a³/4 = 40.0 ų。其倒晶格是 bcc(本章 p.37 處理),primitive vectors 形如 (2π/a)(−1, 1, 1),長度 |b_i| = 2π√3/a = 2.00 Å⁻¹。注意 2π/|a_i| = 2π/3.840 = 1.64 Å⁻¹ ≠ 2.00 Å⁻¹——這個數字上的不相等,就是「b_i 與 a_i 一般不平行、長度也不是單純取倒數」最直接的證據。

把 (13) 與 (14) 接起來:兩個方向都走一次補推導

書上只寫了一句「(13) 定義的每個向量與晶格的兩個軸向量正交,因此 b_i·a_j = 2πδ_ij」,把驗算留給讀者。這裡把兩個方向都補齊:先由 (13) 驗出 (14),再反過來由 (14) 解出 (13)。

走完第二個方向之後,還有一個附帶收穫:它解釋了為什麼書上敢直接宣稱「若 a_i 是 primitive vectors,則 b_i 是倒晶格的 primitive vectors」。因為 (14) 是一組雙線性的對偶關係,它在兩組基底之間建立一對一的對應;直晶格基底的 primitive 性(每個晶格點都能寫成整數組合、而且沒有多餘的點)會一對一地翻譯成倒晶格基底的 primitive 性。書上沒有證這件事,(15) 只是把它當成已知在用。實務上這一點很要緊:用 conventional cell 的 a_i 去套 (13),得到的 b_i 不是倒晶格的 primitive vectors,由它們生成的點陣會比真正的倒晶格稀疏,而 fcc 的倒晶格是 bcc 這種事就完全看不出來。

  1. 【方向一 · i ≠ j】 以 b₁·a₂ 為例。由 (13),b₁ ∝ a₂ × a₃;而外積 a₂ × a₃ 依定義同時垂直於 a₂ 與 a₃。所以 b₁·a₂ = 0 且 b₁·a₃ = 0。其餘同理:b₂ ⊥ a₃ 與 a₁,b₃ ⊥ a₁ 與 a₂。這正是書上那句「(13) 定義的每個向量與晶格的兩個軸向量正交」。共六條等式,對應 (14) 中 i ≠ j 的六格。
  2. 【方向一 · i = j】 b₁·a₁ = 2π (a₂ × a₃)·a₁ / (a₁·a₂ × a₃)。用純量三重積在循環置換下不變的性質:(a₂ × a₃)·a₁ = a₁·(a₂ × a₃),於是分子與分母完全相同,約掉得 b₁·a₁ = 2π。b₂·a₂、b₃·a₃ 同理。三條對角線都等於 2π。
  3. 於是 (14) 的九格全部驗證完畢:b_i·a_j = 2πδ_ij。順便注意一件事——這九個條件正好是九個方程,而 b₁, b₂, b₃ 加起來也正好有九個未知分量。方程數等於未知數個數,這就暗示 (14) 反過來應該能唯一決定 b_i。下面就做這件事。
  4. 【方向二 · 由 (14) 反解 (13)】 把 b₁ 當未知向量。(14) 要求 b₁·a₂ = 0 且 b₁·a₃ = 0,也就是 b₁ 同時垂直於 a₂ 與 a₃。在三維空間中,同時垂直於兩個不共線向量的方向只有一條——就是 a₂ × a₃ 的方向。所以必然 b₁ = λ (a₂ × a₃),其中 λ 是待定純量。
  5. 再用剩下的那一條 b₁·a₁ = 2π:λ (a₂ × a₃)·a₁ = 2π,解得 λ = 2π/(a₁·a₂ × a₃)。代回即得 (13) 的第一式。b₂、b₃ 完全同理(把指標循環一次即可)。
  6. 結論:(13) 與 (14) 完全等價。 (13) 是顯式解,(14) 是它所滿足的方程。Kittel 選擇先寫 (13),是為了讓讀者馬上有一個可以動手算的公式;但真正該背下來的是 (14)——因為後面所有的推導((17)、繞射條件、Laue 方程、Bloch 定理)用到的都只有 (14),從來不會用到外積的具體形式。
  7. 存在性附註:整個建構要求 a₁·a₂ × a₃ ≠ 0,也就是三個晶格向量不共面。這對真實晶體自動成立(否則它就不是三維晶格)。若三軸共面,倒晶格在該方向上不存在——這正是二維系統(表面、石墨烯)要用二維倒晶格處理的原因。

倒晶格的定義性質(本段最該記住的一條)

b_i · a_j = 2π δ_ij , 其中 δ_ij = 1(i = j)、δ_ij = 0(i ≠ j)

(14)  p.29

δ_ij:Kronecker delta,書上在 (14) 之後明確給出這個定義。i, j 各跑 1, 2, 3,故 (14) 實際上是九條等式。

出處推導
由 (13) 直接驗算得到(見上一個推導區塊)。書上給的理由是「(13) 定義的每個向量與兩個晶軸正交」,加上三重積的循環不變性給出對角線的 2π。
極限行為
這九條式子就是倒晶格的全部定義內容,(13) 只是它的一個顯式解。凡是後面用到倒晶格的地方,真正被使用的都是 (14)。它也解釋了「倒」這個字:把 (14) 寫成矩陣形式 BᵀA = 2π I(A 的行向量是 a_j、B 的行向量是 b_i),得 B = 2π (A⁻¹)ᵀ——倒晶格的基底矩陣就是直晶格基底矩陣的逆轉置再乘 2π,「倒」指的是矩陣求逆,不是逐個分量取倒數。由此立刻得到體積關係 det B = (2π)³/det A,即 V_倒 = (2π)³/V_c。本章 Problem 3(Volume of Brillouin zone, p.44)要求讀者證明第一 Brillouin zone 的體積是 (2π)³/V_c,用的就是這個關係。(矩陣形式與體積關係是我補的,書上此處未寫。)

2π 因子與量綱:兩件看似瑣碎、實際上會害你算錯的事我的判讀

書上對這兩件事各只寫了一句話,但它們是實務上最常見的錯誤來源,值得展開。

一、那個 2π:兩套慣例並存

書上 p.29 在 (13) 之後只交代一句:這些 2π 因子結晶學家不用,但在固態物理裡很方便。(原文用的字是 "not used by crystallographers"。)

這句話背後是兩套並存的慣例:

固態物理慣例結晶學慣例
定義關係b_i·a_j = 2π δ_ija*_i·a_j = δ_ij
兩者關係b_i = 2π a*_i—
倒晶格向量長度|b₁| = 2π/d₁|a*₁| = 1/d₁
繞射條件寫法Δk = G,|k| = 2π/λ散射向量 S,|S| = 2 sin θ/λ
常見使用者Kittel、Ashcroft–Mermin、DFT 程式單晶繞射軟體、結構解析社群

後果:同一個「倒晶格向量」在兩套書裡差了一個因子 2π,所有含 G 的公式也跟著差。讀文獻、用軟體(DFT 程式如 VASP、Quantum ESPRESSO 走固態物理慣例;結構繪圖與 XRD 解析軟體多半走結晶學慣例)時,第一件事就是確認對方的 2π 在不在。混用兩套慣例,是實務上最常見的「因子 2π 錯誤」來源。

為什麼固態物理要留著 2π? 因為固態物理的主角是波。平面波寫成 exp(ik·r),波向量的大小是 k = 2π/λ,本身就含 2π。要讓繞射條件乾淨地寫成波向量的相減 Δk = G,G 就必須和 k 在同一個尺度上。結晶學的主角則是晶面間距,用 1/d 當單位最直觀,多一個 2π 只是累贅。哪一邊都沒有錯,只是主角不同。

二、量綱:一個隨時可用的除錯工具

書上 p.30 明白寫出:直晶格中的向量具有 [length] 的量綱;倒晶格中的向量具有 [1/length] 的量綱。

這不是形式上的註記,而是最便宜的除錯手段。任何含 G 的式子,指數上必須是無因次的,所以 G 一定要與一個 [length] 的量配對(G·r、G·T)。若你的推導中出現 G + r、或 G² 與 r² 相加這種東西,一定錯了。

把這個習慣再往前推一步:exp(iG·T) 的指數必須無因次,而且必須是 2πi 的整數倍。前者由量綱保證,後者由 (14) 保證。兩項都檢查過,這一類式子幾乎不可能寫錯。

三、一個高頻誤解:|b₁| = 2π/|a₁| 嗎?

只有三軸互相正交時才對。 一般情形下,b₁ 是垂直於 a₂、a₃ 所張平面的向量,它的長度由 primitive cell 在 a₁ 方向上的「高」決定,而不是由 |a₁| 決定。精確關係是:

b₁= 2πa₂ × a₃/ V_c = 2π / d₁

其中 d₁ 是由 a₂、a₃ 張出的那族晶面的面間距(因為 V_c = |a₂ × a₃| × d₁,底面積乘高)。上面矽的數字算例(|b_i| = 2.00 Å⁻¹ 而 2π/|a_i| = 1.64 Å⁻¹)就是這件事的直接展示。

順帶一提,|b| = 2π/d 這個式子是後面把倒晶格向量與 Miller 指標接起來的關鍵——(hkl) 這族晶面對應的倒晶格向量 G_hkl 垂直於該族晶面、長度為 2π/d_hkl。書上這一節還沒有講到這一層(要到繞射條件與 Laue 方程之後),但它是第 1 章 Miller 指標與第 2 章倒晶格真正接合的地方。

倒晶格點的集合

G = v₁b₁ + v₂b₂ + v₃b₃ , v₁, v₂, v₃ ∈ ℤ

(15)  p.29

v₁, v₂, v₃:整數(書上用 v 而不是 h, k, l)。b₁, b₂, b₃:由 (13) 定義的倒晶格軸向量。書上明定:具有這種形式的向量 G 稱為 reciprocal lattice vector(倒晶格向量)。

出處推導
以 b₁, b₂, b₃ 為基底、係數取整數所生成的點陣。書上稱這些點為倒晶格中的點,並在此處正式定義「倒晶格向量」這個術語。
極限行為
整數性是全部的重點。 若 v_i 容許取非整數,(17) 的指數就不再是 2πi 的整數倍,(9) 的平移不變性立刻破功。換句話說,倒晶格的離散性不是一個假設,而是被 (2) 逼出來的結論。與 Miller 指標的關係:本章 p.45 的 Problem 5 在括號裡明白說「h, k, l 可以寫成 v₁, v₂, v₃,而且常常這樣做」——所以 (hkl) 與 (v₁v₂v₃) 是同一組整數,第 1 章的晶面指標與這裡的倒晶格座標指的是同一件事。

把平移代入傅立葉展開

n(r + T) = Σ_G n_G exp(iG · r) exp(iG · T)

(16)  p.29

T = u₁a₁ + u₂a₂ + u₃a₃:任一晶格平移,u_i 為整數。其餘符號同 (9)。

出處推導
直接把 r → r + T 代入 (9),再用指數律 exp[iG·(r + T)] = exp(iG·r)·exp(iG·T) 把平移的效果分離成一個乘法因子。這一步之所以乾淨,正是當初從 (3) 換成 (5)、再換成 (9) 所付出代價的回報。
極限行為
這條式子把整個問題壓縮成一個純量條件。要讓 n(r + T) = n(r) 對所有 r 與所有 T 成立:因為 {exp(iG·r)} 這組函數對不同的 G 彼此線性獨立,兩邊逐項比較係數,必須每一項都滿足 exp(iG·T) = 1。書上沒有把「線性獨立 ⇒ 可以逐項比較」這一步說出來,但少了它,(16) → (17) 的推論在邏輯上是不完整的。

平移相位恆為 1(整段論證的樞紐)

exp(iG·T) = exp[ i(v₁b₁ + v₂b₂ + v₃b₃) · (u₁a₁ + u₂a₂ + u₃a₃) ] = exp[ i2π(v₁u₁ + v₂u₂ + v₃u₃) ]

(17)  p.30

v₁, v₂, v₃:倒晶格向量的整數係數(來自 (15))。u₁, u₂, u₃:平移向量的整數係數。(本式印在書本 p.30,已超出本段指定的 p.27–29 範圍,但它是 p.29 的 (16) 的直接續篇,不放進來這段論證就斷掉。)

出處推導
把 (15) 與 T 的定義代入內積,展開成九項後用 (14) b_i·a_j = 2πδ_ij 收成三項。展開的細節書上沒有寫,見下一個推導區塊。
極限行為
書上在 (17) 之後說得非常清楚:指數的形式是 2πi 乘上一個整數,因為 v₁u₁ + v₂u₂ + v₃u₃ 是整數——它是整數乘積之和。因此 exp(iG·T) = 1,代回 (16) 就得到所要的不變性 n(r + T) = n(r) = Σ n_G exp(iG·r)。這一步是整章的邏輯樞紐:G 之所以非得是倒晶格向量,唯一的理由就是要讓這個相位剛好轉整數圈。 若把 G 換成任意向量 k,指數 k·T 一般不是 2π 的整數倍,(9) 就不再具有晶格週期性。順帶一提,同一條式子也是第 7 章 Bloch 定理中「k 與 k + G 描述同一個狀態」的根源,以及第一 Brillouin zone 之所以足夠涵蓋全部資訊的理由。(Bloch 與 Brillouin zone 的連結是我補的跨章說明。)

(16) → (17) 的展開逐步:九項怎麼收成三項,以及必要性的補證補推導

書上把 (17) 寫成一行等式,中間那個內積的展開沒有寫。這裡補齊,因為這是 (14) 最核心的一次使用(同一個動作在 p.33 的 Laue 方程還會再做一次),也是「為什麼一定要是倒晶格向量」的全部答案。

補完必要性之後,這一段的地位才完整。書上只證了充分性(用倒晶格向量可以,不變性成立),讀者很容易以為 Kittel 只是「挑了一組好用的 G」。事實上沒有第二種選擇:任何能讓 (9) 保持晶格週期性的 G,都必然落在倒晶格上。這個「唯一性」是後面把繞射峰與倒晶格點一一對應(繞射圖就是倒晶格的一張地圖)的邏輯依據——如果 G 的選法有很多種,繞射圖就對應不到唯一的倒晶格了。

  1. 出發式:G·T = (v₁b₁ + v₂b₂ + v₃b₃) · (u₁a₁ + u₂a₂ + u₃a₃)。
  2. 用雙線性拆開:內積對兩個引數都是線性的,所以可以逐項相乘,得到 3 × 3 = 9 項:G·T = Σ_{i=1..3} Σ_{j=1..3} v_i u_j (b_i · a_j)。
  3. 套 (14):b_i·a_j = 2πδ_ij。δ_ij 在 i ≠ j 時為 0,於是九項中的六個交叉項(v₁u₂ b₁·a₂、v₁u₃ b₁·a₃、v₂u₁ b₂·a₁、v₂u₃ b₂·a₃、v₃u₁ b₃·a₁、v₃u₂ b₃·a₂)全部歸零。這六個零就是 (13) 裡那三個外積的全部用處。
  4. 只剩對角項:i = j 的三項,每一項的 b_i·a_i = 2π。於是 G·T = 2π v₁u₁ + 2π v₂u₂ + 2π v₃u₃ = 2π(v₁u₁ + v₂u₂ + v₃u₃)。
  5. 指數化:exp(iG·T) = exp[i2π(v₁u₁ + v₂u₂ + v₃u₃)],這就是 (17) 的右邊。
  6. 最後一步是純算術:v_i 與 u_i 都是整數;整數乘整數是整數,三個整數相加還是整數。記 m ≡ v₁u₁ + v₂u₂ + v₃u₃ ∈ ℤ,則 exp(i2πm) = cos(2πm) + i sin(2πm) = 1 + i·0 = 1。
  7. 代回 (16):n(r + T) = Σ_G n_G exp(iG·r) · 1 = n(r)。(2) 成立,證畢。請注意這條證明只用到 (14),完全沒有用到 (13) 的外積形式——再一次說明 (13) 只是方便的顯式解,(14) 才是本體。
  8. 【必要性的補證,書上沒有做】 上面證的是「G 取倒晶格向量 ⇒ 平移不變」,這是充分性。反過來呢?要 exp(iG·T) = 1 對所有整數組 (u₁, u₂, u₃) 成立,分別取 (1,0,0)、(0,1,0)、(0,0,1),得到 G·a₁、G·a₂、G·a₃ 三者都必須是 2π 的整數倍。因為 b₁, b₂, b₃ 是完備基底,任何向量都能展開成 G = x₁b₁ + x₂b₂ + x₃b₃(x_j 為實數);用 (14) 算得 G·a_j = 2π x_j。於是 x_j 必為整數,這正是 (15)。
  9. 結論:倒晶格不只是「一個可行的選擇」,而是唯一的選擇。充分性與必要性都成立,(15) 是平移不變性這個條件的完整解集。

把邏輯方向釘死:不要用「倒晶格就是傅立葉變換」帶過我的判讀

有一句流傳很廣的簡化說法:「倒晶格就是實晶格的傅立葉變換。」作為記憶口訣沒問題,但它把因果講反了,而且掩蓋了 Kittel 真正的論證。

Kittel 的邏輯鏈只有三步,每一步都是被逼出來的:

  1. 要求:n(r + T) = n(r),對所有晶格平移 T 成立。這是唯一的物理輸入((2))。
  2. 選擇一種寫法:假設 n(r) 寫得成 Σ_G n_G exp(iG·r)。這是方法的選擇,不含物理((9))。
  3. 逼出結論:(16)(17) 顯示,第 1 步要成立的充要條件是每一個 G 都滿足 exp(iG·T) = 1,而這等價於 G 落在由 (14) 定義的格點上。

所以倒晶格是一個方程的解。它不是先驗存在、然後「碰巧」等於某個傅立葉變換;它是「哪些平面波與這個晶格的平移群相容」這個問題的答案集合。

為什麼要這麼講究方向?因為一旦換了系統,你能不能直接套口訣,完全取決於你懂不懂上面這三步。(以下三個例子 Kittel 本節完全沒有提,屬於書外延伸。)

  • 超晶格與摩爾紋:兩個不同的週期疊在一起,共同的平移群變小(週期變長),倒晶格點因而變密,出現「衛星峰」。用「傅立葉變換」口訣算不出衛星峰在哪;用「解 exp(iG·T) = 1」則立刻算得出來——只要先寫對新的平移群。
  • 表面重構:表面的二維平移群與體材不同,於是表面有一套自己的二維倒晶格,這就是 LEED 圖樣所顯示的東西。第 1 步的 T 換了,第 3 步的答案就換了。
  • 準晶:沒有三維平移群,(17) 的整條論證完全失效,但它依然有銳利的繞射峰。這說明「銳利繞射峰」與「平移週期性」並不是同一件事——Kittel 這一節的推導嚴格只適用於後者。

一句話收尾:先有平移不變性的要求,才有 G 的形式。 這就是 (16)(17) 那兩行的全部意義,也是這一段值得反覆讀的理由。

常見誤解與自我檢查清單我的判讀

先把讀這一段最容易帶走的錯誤觀念列出來:

常見說法為什麼錯/要補什麼
「b₁ 平行於 a₁」只有三軸互相正交時才對。一般而言 b₁ 只被保證 ⊥ a₂ 且 ⊥ a₃,它與 a₁ 的關係只有 b₁·a₁ = 2π 這一條。六方晶是最容易踩到的反例。
「|b₁| = 2π/|a₁|」同上。正確的是 |b₁| = 2π/d₁,d₁ 是由 a₂、a₃ 張出的那族晶面的面間距。矽的例子:2.00 Å⁻¹ 對 1.64 Å⁻¹。
「用 conventional cell 算倒晶格也一樣」不一樣。(13) 要用 primitive vectors,書上明說「若 a_i 是 primitive vectors,則 b_i 是倒晶格的 primitive vectors」。用 conventional cell 算出來的點陣會多出一些點,那些點上 n_G = 0(系統消光),而「fcc 的倒晶格是 bcc」這件事也完全看不出來。
「(6) 是一個物理假設」不是。它只是「n(x) 是可觀測的實數密度」在複數記號下的代數翻譯。這一整段的物理輸入只有 (2) 一條。
「p′ ≠ p 的積分為零,是因為 sin、cos 的平均為零」方向對但不精確。精確的理由是 p′ − p 為整數,使 e^{i2π(p′−p)} = 1,括號恰好歸零。若積分區間不是整數個週期(有限晶體),它就不為零——本章 Problem 4 算的正是這件事。
「G 的選法有很多種,倒晶格只是其中一種方便的選法」不對。必要性的補證顯示倒晶格是唯一解:任何滿足平移不變性的 G 都必然在倒晶格上。
「(13) 裡的 2π 可以自由拿掉」慣例可以改,但一旦改了,(14) 的右邊、(17) 的相位、繞射條件的寫法、Brillouin zone 的尺寸全部要一起改。混用兩套慣例是實務上最常見的因子 2π 錯誤。
「倒晶格的『倒』就是取倒數」是矩陣求逆(B = 2π(A⁻¹)ᵀ),不是逐分量取倒數。只有在三軸正交的特例下,兩者才看起來一樣。

自我檢查:讀完這一段,你應該能在完全不翻書的情況下做到六件事——

  1. 用一句話說出為什麼 (3) 裡的因子必須是 2π/a 而不能是別的數;
  2. 默寫 (10),並說出指數上為什麼是負號、前面為什麼要除以 a;
  3. 手算 ∫₀^a exp[i2π(p′−p)x/a] dx 的兩種情形,並說出分子上那個 a 是從哪裡來的;
  4. 由 (14) 反解出 (13)(而不是背 (13));
  5. 從 (16) 一路推到 n(r + T) = n(r),並在中途明確指出哪一步用到「整數」;
  6. 說出為什麼倒晶格是唯一解,而不只是一個方便的選擇。

做不到第 3、4、6 項的話,這一段還沒讀完。

這些式子接下來被用在哪裡我的判讀

本章之內(頁碼依章首目錄 p.23):

  • Diffraction conditions(p.30 起):把 (9) 的 n_G 與入射/出射波向量之差 Δk = k′ − k 接起來,導出 Δk = G。書上在 p.30 已經開始鋪陳:相距 r 的兩個體積元所散射的波,相位差因子是 exp[i(k − k′)·r](Fig. 6)。
  • Laue equations(p.33):把 Δk = G 對三個晶軸各取一次內積,用 (14) 化成 a₁·Δk = 2πv₁ 這類條件。這一步完全靠 (14),不靠 (13)。
  • Brillouin zones(p.32 起):第一 Brillouin zone 就是倒晶格的 Wigner–Seitz cell,整個建立在 (15) 這個點陣上。p.34、p.36、p.37 分別處理 sc、bcc、fcc 的倒晶格。
  • Fourier analysis of the basis(p.39 起):把 n_G 拆成每個原子的貢獻之和,得到結構因子與原子形狀因子。到這裡才真正回答 p.26 提出的那個問題——強度來自 basis。整章至此閉環。

本章之外(以下為我補的跨章連結):

  • 第 4、5 章 聲子:晶格振動的簡正模由波向量 k 標記,而 k 與 k + G 描述同一個模——因為原子只坐在離散格點上,取樣定理使得更短的波長無法被區分。這個等價性直接來自 (17)。第一 Brillouin zone 之所以足夠涵蓋全部的振動模,理由就在這裡。
  • 第 7 章 Bloch 定理與能帶:週期位能展開成 U(r) = Σ_G U_G exp(iG·r)——形式上就是 (9) 換一個物理量。中央方程把 k 與 k ± G 耦合起來,能隙開在 Brillouin zone 邊界。(9) 這個寫法在那一章會原封不動再用一次。
  • 第 6、8、9 章 Fermi surface:Fermi surface 畫在倒空間裡,週期性 zone scheme 所用的平移就是 (15) 的 G。

與 Cth(熱容/熱時間常數萃取)研究的接點(我補的):FinFET 的自我發熱與熱時間常數,最終由聲子的態密度與群速度決定,而聲子色散只需要在第一 Brillouin zone 內給出——這是 (17) 的直接後果。在奈米尺度的 fin 裡,幾何侷限改變的是允許的 k 點(由樣品尺寸與邊界條件決定),倒晶格本身不變(由晶格決定)。把這兩件事分清楚,是讀聲子侷限(phonon confinement)與尺寸相依熱導率文獻時第一個要建立的觀念。這一段建立的正是其中的前者。