晶格說了「在哪裡」;那麼,有多亮?
前三篇給了你一份強大的禮物,卻悄悄扣住了另一半。布拉格定律、勞厄條件與埃瓦爾德作圖,回答的都是同一個問題——繞射束能出現在哪裡?它們每一個都是純粹的晶格幾何:把單位晶胞給我,我就告訴你反射被允許閃射出來的確切角度。但站到一張真實的繞射圖前面,有件它們從不提起的事會撲面而來。斑點不是一樣亮的。有的耀眼,有的幾乎看不見,還有一些明明幾何欣然允許,卻乾脆整個不見。那份亮度從哪裡來,而不見的斑點又跑去了哪裡?這就是本篇要處理的全部事情。
回想這整座階梯上最古老的那個分野:晶格是一組相同的點,而晶體是晶格加基元——真正被蓋印到每一個點上的原子。布拉格定律與埃瓦爾德球只看得見晶格,所以它們永遠只能告訴你反射的位置。亮度,則是來自基元的訊息——來自盒子裡哪個原子坐在哪裡。把這個念頭量化,你就得到一句主宰底下一切的俐落話:一個反射被量到的繞射強度,正比於 |F|^2,也就是一個叫做結構因子的複數的長度平方。位置來自晶格;強度來自基元,而基元被打包進了 F 裡。
把這句頭條帶著走完整個階段:一張粉末圖譜的峰位置,給你單位晶胞——盒子的大小與形狀;而峰強度,給你基元——真正坐在盒子裡的東西。兩個不同的問題,由同一張照片的兩個不同半邊回答。一旦把它們搞混,關於繞射的一切就永遠差那麼一點兜不攏。
一個原子的回聲:原子散射因子
在把整個基元加起來之前,先一路放大到單獨一個原子,因為第一篇早已告訴我們:X 光散射自電子,而非原子核。一個原子是一小團 Z 個電子的雲,而它的散射強度有自己的名字——原子散射因子 f,也叫做形狀因子(form factor)。在角度最低之處,入射束與出射束幾乎平行,雲裡每一個電子都同步散射,它們的小波完美地疊加,振幅就單純等於 Z,也就是這個原子的電子數(以單一自由電子的散射為單位)。所以 f(0) = Z:一個鉛原子(82 個電子)是遠比碳原子(6 個)響亮得多的散射體,這也正是為何重原子會主宰一張 X 光圖譜。
現在來到關鍵的轉折:f 並不停在 Z——它隨角度增大而衰減。原因非常有物理味。電子雲不是一個點;它是一顆大約一埃寬的毛絨球,尺寸與波長本身相當。在低角度時整團雲齊聲散射,但當散射角張開,來自雲近側的小波與來自雲遠側的小波,抵達時愈來愈不同步,於是部分抵消,總振幅就往下垂。實務上 f 是對 sin(theta)/lambda 作圖:它從 Z 出發,平滑地衰減。對碳而言,它從 6 一路滑到大約 2,大約在 sin(theta)/lambda = 0.5 每埃之處。要記住的教訓是:高角度反射在其他任何事情發生之前,就先被發了一個較弱的 f,所以它們往往偏暗。
誠實看待 f 描述的是什麼:它是 X 光被電子雲散射的強度,所以它追隨原子序 Z。換一種探針,整幅圖就變了。中子散射自那顆極小、基本上像個點的原子核,所以它們的散射長度幾乎不隨角度衰退,還能讓氫這樣的輕原子喊得跟重原子一樣大聲。電子散射自靜電位,強度遠比 X 光大,這對薄樣品的成像是恩賜,卻也拖進了動力學散射(dynamical scattering),正是穿透式電子顯微鏡需要超薄薄膜的原因。同一個晶體,三種不同的 f——請有意識地挑選你的探針。
把基元的小波加起來:結構因子
一個真實的單位晶胞通常裝著不只一個原子,而整個觀念一句話就講完:對某個給定的反射 (hkl),基元裡每一個原子都拋出自己那道散射小波,這些小波會相加——但每一道抵達時帶著它自己的相位,由這個原子在晶胞裡究竟坐在哪決定。一個停在反射晶面之間深處的原子,會落後於坐在晶面上的原子;那份落後就是相位差。把幾何算一遍,一個位於分數座標 (x, y, z) 的原子,其相位恰好是 2 pi 乘 (h x + k y + l z)。把這些小波加起來,每一道振幅是 f_j、各自轉過自己的相位,你就得到結構因子:F_hkl = 對 j 求和的 f_j 乘 exp[2 pi i (h x_j + k y_j + l z_j)]。它不過就是基元自己的一個小小傅立葉和,在反射 (hkl) 這一點求值。
- 列出基元:把單位晶胞裡每一個原子寫下來,連同它的元素(這決定 f_j)與它的分數座標 (x_j, y_j, z_j)。
- 挑出你要的反射,也就是整數三元組 (hkl)。
- 對每一個原子算出它的相位,也就是角度 2 pi (h x_j + k y_j + l z_j),並讀出它在該反射角度下的散射因子 f_j。
- 把小波加起來:F_hkl = f_j 乘 exp[2 pi i (h x_j + k y_j + l z_j)] 的總和——字面上就是在複數平面裡把一支支小箭頭相加,每支長 f_j、轉過它的相位。
- 把長度平方:強度正比於 |F_hkl|^2。萬一那些箭頭恰好抵消成零,那個反射就系統性地消失,無論幾何多大聲地說它該出現。
一個實作範例:為何體心立方藏起了 (100)
看著這台機器讓一個反射消失。取一個體心立方金屬,例如 α-鐵:只有一種原子,所以兩者的 f 相同,坐在晶胞裡僅僅兩個位置——角落 (0, 0, 0) 與體心 (1/2, 1/2, 1/2)。把它們餵進總和。F_hkl = f 乘 [1 + exp(2 pi i 乘 (h/2 + k/2 + l/2))] = f 乘 [1 + exp(pi i (h+k+l))] = f 乘 [1 + (-1)^(h+k+l)]。現在只要讀它。當 h+k+l 為偶數,(-1)^(偶) = +1,於是 F = 2f——一個強反射。當 h+k+l 為奇數,(-1)^(奇) = -1,於是 F = 0——什麼都沒有。從物理上說,對奇數和而言,體心原子的小波恰好落在角落原子之後半個波長,兩者徹底抵消。於是 (100)、(111)、(210) 就是不在那裡,而 (110)、(200)、(211) 則發亮。這些空缺,就是系統消光。
STRUCTURE FACTOR of a cubic ELEMENT (one atom type, scattering factor f)
BCC motif: (0,0,0) and (1/2,1/2,1/2)
F = f [ 1 + (-1)^(h+k+l) ]
h+k+l even -> F = 2f (reflection PRESENT)
h+k+l odd -> F = 0 (systematic ABSENCE)
FCC motif: (0,0,0),(1/2,1/2,0),(1/2,0,1/2),(0,1/2,1/2)
F = f [ 1 + e^(pi i(h+k)) + e^(pi i(h+l)) + e^(pi i(k+l)) ]
h,k,l ALL even OR ALL odd -> F = 4f (PRESENT)
h,k,l mixed parity -> F = 0 (ABSENCE)
first reflections simple-cubic BCC FCC
(hkl) h+k+l (all present)
(100) 1 mixed yes ABSENT ABSENT
(110) 2 mixed yes yes ABSENT
(111) 3 all-odd yes ABSENT yes
(200) 2 all-even yes yes yes
(210) 3 mixed yes ABSENT ABSENT
(211) 4 mixed yes yes ABSENT
(220) 4 all-even yes yes yes
對一個面心立方金屬(例如銅)跑同樣的總和——四個原子,位於角落與三個面心——會掉出一條不同的規則:只有當 h、k、l 全為偶數或全為奇數時 F = 4f,而任何奇偶混雜的組合 F = 0。所以銅顯示 (111) 與 (200),卻抹掉 (100) 與 (110)。留意這個深刻之處:三種情況裡角落原子完全相同,然而簡單立方、體心立方與面心立方各自印出一組不同的存活斑點。消光,就是基元在倒晶格上留下的指紋。把這枚指紋倒著讀——從不見的反射,回推到造成它們的置心、螺旋軸與滑移面——正是下一篇的看家本領。
多重度、溫度,以及讀出基元
誠實一點:|F|^2 是強度的核心,但它不是量到的整個峰。還有兩個效應值得一席之地,第一個是多重度。在粉末裡——上百萬顆朝著四面八方的小晶體——許多對稱等價的晶面共享完全相同的間距 d,因此堆進同一個峰。在立方晶體裡,族 {100} 有 6 個成員、{110} 有 12 個、{111} 有 8 個,所以 (110) 這個峰是被十二個等價晶面一起餵大的。於是粉末峰高按 多重度 乘 |F|^2 縮放——之後還有更多因子(勞侖茲-偏極化、吸收)疊在上頭一路搭車。把 |F|^2 當成強度的核心來報,而不是最終的那個數字。
第二個效應是溫度。原子從不靜止;它們繞著自己的位置抖動,而一個被抹開的原子,是一個略微模糊的散射體,對高角度反射所探測的細節尤其如此。德拜-沃勒因子捕捉了這件事:它把每個強度乘上 exp(-2M),其中 2M 隨 (sin(theta)/lambda)^2 增大、也隨均方振動振幅增大——所以把它加熱,最先淡去的就是高角度峰。這不是晶格的損壞,也不是無序;原子平均而言仍在它們的位置上。只不過一個顫抖的靶,把清脆的高角度小波反射得稍稍不那麼忠實而已。把晶體冷卻下來,那些遠處的峰就會亮回來。
現在來到整篇一路鋪墊的回報:因為 F 是把原子連同它們的 f 一起加總,所以強度讀出的正是基元本身。經典的示範是拿 NaCl 對比 KCl。兩者都採岩鹽結構,所以兩者被允許的反射相同。但在岩鹽裡,全奇數的反射帶著 F = 4(f_陽離子 - f_陰離子),是散射因子的一個差。在 NaCl 裡,陽離子與陰離子不同(Na+ 有 10 個電子,Cl- 有 18 個),所以 (111) 清清楚楚在那裡。在 KCl 裡,K+ 與 Cl- 都帶 18 個電子——近乎相同的雲——於是 f_陽離子 - f_陰離子 塌向零,(111) 幾乎消失,讓 KCl 假扮成一個晶胞邊長只有一半的簡單立方。同一個晶格、同樣的位置;單憑強度,就洩漏了裡頭坐著什麼原子。