米氏散射原理:云和牛奶为什么是白色的
从”透明的水为什么变成白色的云”说起
组成云的是水,组成牛奶的大部分也是水。水在可见光里几乎透明,可当我们抬头看云,或者把牛奶倒进玻璃杯,看到的却是纯然的白色:没有彩虹的边缘,也看不出任何颜色偏好。这说明变白的不是水本身,而是水被打散成的微小水滴或脂肪球,把它们对光的散射方式改变了。
另一件熟悉的事同样值得注意。同样是阳光穿过大气,天空呈现蓝色,而云偏偏是白色。这两种现象的分界并不在于材料,而在于散射体的尺寸:大气中的氮氧分子只有零点几个纳米,云中的水滴直径在微米量级,两者相差上万倍。当散射体的尺寸从”远小于波长”长大到”与波长可比”时,散射的规律会换一套写法,这就是本文要讲清的米氏散射(Mie scattering)。
尺寸参数:用一个数判断该用哪套散射理论
判断该用哪套理论,不需要先把麦克斯韦方程解出来,只要算一个无量纲的比值——尺寸参数:
$$x = \frac{2\pi a}{\lambda}$$
其中 $a$ 是散射体的半径(单位 m),$\lambda$ 是入射光在介质中的波长(单位 m)。分子分母长度单位相消,$x$ 是一个纯数,这正是它好用的地方:不同波段、不同粒径的散射问题,都被压缩到同一根数轴上比较。
先代入两个日常数字。取可见光中段的 $\lambda = 0.55\ \mu m = 5.5\times10^{-7}\ m$:
- 空气分子尺度约 $0.3\ nm$,对应 $x\approx0.003$,远小于 1;
- 云滴半径取 $5\ \mu m$,对应 $x = 2\pi\times5/0.55\approx57$,远大于 1;
- 牛奶脂肪球直径取 $0.5\ \mu m$(半径 $a=0.25\ \mu m$),对应 $x\approx2.9$,正好落在 1 附近。
表 1:按尺寸参数 $x=2\pi a/\lambda$ 划分的三个散射区间(以可见光 $\lambda=0.55\ \mu m$ 为参照)。
| 区间 | 尺寸参数 | 典型散射体(可见光下) | 散射强度对波长的依赖 | 角分布特点 |
|---|---|---|---|---|
| 瑞利散射 | $x \ll 1$ | 空气分子、几纳米颗粒 | 强烈,截面 $\propto \lambda^{-4}$ | 前向与后向近乎对称 |
| 米氏散射 | $x \gtrsim 1$ | 雾滴、牛奶脂肪球、气溶胶 | 减弱,随 $x$ 出现振荡结构 | 前向散射占优并随 $x$ 变窄 |
| 几何光学 | $x \gg 1$ | 云滴、雨滴、大颗粒粉尘 | 很弱,趋于与波长无关 | 前向极强,可用光线追迹近似 |
对同一个散射体,改变波长就等于改变尺寸参数,因此”它属于哪个区间”并不是材料的固有属性。同一团气溶胶在可见光下处于米氏区,换成波长几十厘米的无线电波,尺寸参数立刻远小于 1,散射行为就退回瑞利型;反过来,毫米波雷达看雾滴时,尺寸参数又远小于 1。区间的归属随波长迁移,这一点在工程选型时经常被忽略。
云滴的有效半径在实际观测与仿真中并非单一数值。图 1 给出四组水云滴谱,形状参数同为 $\gamma=7$,有效半径 $R_e$ 分别取 4、8、13、18 μm,曲线随有效半径增大而整体右移。按同一尺寸参数公式,这四组云滴在 0.55 μm 可见光下的尺寸参数约为 46 至 206,全部落在”米氏散射到几何光学”的过渡区间,而不是瑞利区。

图 1:形状参数 γ=7 时,有效半径 Re=4、8、13、18 μm 的四组水云滴 Gamma 粒径分布;随有效半径增大,粒径分布整体向大尺寸一侧移动。
这说明云的光学行为不能用”小颗粒散射”的直觉去推。云滴的尺寸参数在几十到几百之间,散射已经不是简单的偶极辐射,而是需要在球面上严格求解麦克斯韦方程组的边界条件——这正是米氏理论要解决的问题。
米氏理论解的是什么问题
米氏散射并不是一条经验公式,而是一个严格的边值问题解:一束平面电磁波入射到各向同性、均匀的球形粒子上,在球面上写出电场与磁场的连续性条件,把入射场、内部场与散射场展开成球谐函数的级数,求解展开系数。这些系数写作 $a_n$、$b_n$,称为米氏散射系数,它们由颗粒的复折射率 $m$ 和无量纲尺寸参数共同决定;与角度相关的函数 $\pi_n$、$\tau_n$ 只依赖散射角 $\theta$。这套解最早由 Gustav Mie 在 1908 年给出,适用范围正是”粒子尺寸与波长可比拟”的情形。
正因为是严格解,米氏理论同时覆盖了两个极端:当尺寸参数足够小时,级数的高阶项迅速衰减,保留首项就退化为偶极辐射,即瑞利散射;当尺寸参数很大时,级数收敛变慢,理论上仍能给出结果,但计算代价上升,工程上常改用光线追迹来近似。米氏理论的价值不在于它”比瑞利散射更精确”,而在于它把两个区间连成了连续的一整条曲线,让”粒径从几十纳米涨到几微米时散射怎么变”这个问题有统一答案。
代价也很明确:级数收敛慢意味着计算量随尺寸参数上升,粒径分布宽、折射率待反演时还要反复迭代;球对称假设一旦不成立,就要换成 T 矩阵、离散偶极子近似等扩展方法。这些代价决定了米氏散射在实际仪器里通常与查表、插值和反演算法配合使用,而不是每次从头解一遍。
角度分布:为什么前向散射更强
散射光的强弱不仅取决于散射体有多大,还强烈依赖观测方向。图 2 给出不同粒径颗粒的散射光强随散射角的变化:所有曲线在 0°(即光继续沿原方向前进的一侧)附近最强,随散射角增大迅速衰减,并在大角度一侧出现较弱的次级结构。

图 2:不同粒径颗粒的散射光强随散射角的分布(强度已归一化);粒径越大,散射光越集中在前向小角度内。
粒径的作用可以直接从图上读出来。当尺寸参数取到 0.5 附近时,散射曲线接近瑞利散射规律,前向与后向强度相差不大;粒径继续增大后,曲线在前向几度到几十度的范围内被拉出一根越来越窄、越来越高的主瓣,其余方向的能量占比不断下降。换句话说,粒子越大,光越倾向于”继续往前走”,只是方向被轻微偏折。这也解释了一个反直觉的现象:直径几微米的气溶胶在一次散射中带走的能量,大部分并不是被”弹回去”,而是被稍稍偏折后继续沿原方向传播——只有当这些偏折被多次累积,光才真正弥散开。
前向主瓣的存在让探测方式分化。要在前向小角度上测量散射光,可以布置在光路延长线上,结构紧凑、信号强;要测量后向散射,则必须依赖 180° 附近那部分很弱的光,但好处是收发可以共用一个窗口,适合遥测。米氏散射激光雷达正是后一种思路:把发射与接收放在同一端,靠大气气溶胶与云滴的后向散射回波反演远处的结构。
云为什么是白色的
回到开头的问题。云滴的尺寸参数在几十到几百之间,随尺寸参数增大,散射的方向结构变得复杂,但散射强度对波长的依赖明显减弱:400 nm 的紫光和 700 nm 的红光在同一片云里被散射的概率相差不大,出射光的光谱成分与入射阳光基本一致,于是我们看到的是一片没有色偏的白色。
图 3 用四组云滴谱的相函数极坐标图展示了这个过程:随云滴尺寸参数从 (a) 到 (d) 依次增大,前向散射越来越突出,前向散射峰越来越窄。

图 3:用米氏理论计算的四组水云滴谱散射相函数极坐标图,(a–d) 对应云滴尺寸参数依次增大;前向散射越来越突出,前向散射峰越来越窄。
需要强调三点,才不至于把结论用过头。
第一,“白色”不是”完全不挑波长”。米氏散射的散射效率随尺寸参数存在振荡结构,所以极厚的云层边缘会略带灰色;而当阳光斜穿很长的云层时,被散射掉的部分积累得更多,透过云底的光偏红,这也是清晨与傍晚云底泛红、泛紫的原因之一。
第二,云的白还叠加了多次散射。进入云的光子很少只被散射一次,它在数千个云滴之间反复偏折、叠加,多重散射把单次散射残留的角度偏好与波长偏好进一步抹平,这是云看起来”白得均匀”的另一半原因。
第三,如果云滴小得多,云的颜色就会改变方向。云滴如果缩小到零点几微米,尺寸参数落到 1 附近甚至更小,波长依赖重新变强,云的散射就会偏向短波——这正是天空在无云时偏蓝的机制。云与蓝天的对比,本质上是一道尺寸参数的题目。
牛奶、雾与气溶胶:同一个尺寸参数在不同尺度上
牛奶看起来是白色的,原因是同一套物理。人乳脂肪球可以近似为球形,直径分布在 0.5–15 μm 之间;在 660 nm 波长下,脂肪球折射率约 1.49,而血清约 1.345,这个折射率差让微米级脂肪球成为可见与近红外波段牛奶中的主要散射体。把直径 0.5 μm 的脂肪球代入尺寸参数公式,$x\approx2.9$;如果继续缩小到 100 nm,$x\approx0.57$,散射行为就滑向瑞利区。
真实的牛奶里同时存在不同粒径的组分,散射系数是它们的叠加。研究者在 50 例人乳样本上做过验证:只用脂肪浓度按米氏理论重建散射系数,重建值与实测值的相关系数为 $\rho=0.62$;把每个样本的脂肪球尺寸分布一并计入后,相关系数提高到 $\rho=0.82$,而非脂肪颗粒的贡献可以忽略。这说明决定牛奶散射强度的是”有多少散射体”和”散射体有多大”这两件事的组合,缺一不可;只称量脂肪含量,得到的只是粗略估计。
雾和大气气溶胶是同一个故事的另一版本。雾滴的直径通常在几微米到十几微米,尺寸参数远大于 1,因此雾整体偏白、偏灰,且能显著挡住远处的灯光与景物;而气溶胶中更细的组分(几十纳米到几百纳米)仍保留较强的波长依赖。一束激光在雾、霾与晴空中传播,被散射掉的能量比例可以相差数量级,这就是同一台激光雷达在不同天气下探测距离差别很大的原因之一。
工程应用:激光粒度仪与米氏散射激光雷达
既然散射角分布与粒径一一对应,就可以反过来用它测粒径。多角度散射光强测量是激光粒度仪的常见方案:把激光打在颗粒群上,在不同散射角上同时采集光通量,用米氏理论求解粒径分布。测量方案一般取若干固定角度(例如 0°、11°、30°、90°),因为不同粒径在这些角度上的强度比值差异最明显,粒径分布越宽,需要的角度组合越多。
米氏散射激光雷达则把同样的原理用到几十公里外的大气上。这类雷达按米氏散射理论设计,体积小、操作简单、成本相对较低,时空分辨率高、回波信号强,常用于测量云底高度、气溶胶结构以及 30 km 以下的大气能见度。典型的实验系统使用 Nd:YAG 固体激光器:基频 1064 nm、倍频 532 nm,单脉冲能量 150 mJ,重复频率 10 Hz——可见光的短波长换来更强的分子与气溶胶散射回波,也换来了更好的空间分辨率。

图 4:米氏散射激光雷达系统示意图,包含发射激光、接收望远镜以及探测与采集单元;发射光经大气气溶胶与云滴散射后,后向散射回波由接收端收集并记录。
回波信号里既有气溶胶的信息,也有湍流的印记:激光在大气中传播时会出现光强起伏与相位起伏,把回波光强的涨落信息提取出来,就可以反演湍流强度廓线。米氏散射在这里承担的角色很具体——它是回波信号的来源,也是把”远处发生了什么”编码进接收端光强的机制。
能见度:米氏散射如何决定我们看多远
把散射推广到整个大气柱,就得到能见度这个日常指标。大气对可见光的消光主要来自气溶胶与雾滴的散射,工程上用经验关系把消光系数 $b_{ext}$ 与能见距离 $VR$ 联系起来:
$$VR = \frac{3.912}{b_{ext}}$$
式中的 3.912 来自 2% 对比度阈值下的科希米德(Koschmieder)关系,量纲上 $b_{ext}$ 取 $\mathrm{km^{-1}}$、$VR$ 取 km,两端一致。代入两个数值感受一下量级:$b_{ext}=1\ \mathrm{km^{-1}}$ 时 $VR\approx3.9\ km$,是典型的轻霾天气;$b_{ext}=100\ \mathrm{km^{-1}}$ 时 $VR\approx39\ m$,对应浓雾中几乎看不清前方的状态。能见距离与消光系数成反比,而消光系数正是米氏散射在宏观尺度上的累积结果,这也是气溶胶浓度变化会直接改变城市能见度的原因。
需要提醒的是,这条关系是经验公式,常数随对比度判据与观测方式略有差别;它描述的是水平均匀大气下的近似,在近地面强梯度、雨雪天气或夜间灯光条件下,误差会明显增大。
适用边界与待推进方向
把米氏理论用到具体问题时,有几条边界需要先划清。
球形假设。米氏理论针对各向同性、均匀的球体求解。水云滴接近球形,因此这一假设在云的光学计算中相当合用;但冰晶、沙尘、纤维与团聚颗粒并不满足这一条件,需要用 T 矩阵、离散偶极子近似等扩展方法,或者引入等效球近似并接受一定偏差。
尺寸谱而非单一粒径。真实的气溶胶、牛奶或颗粒群总是存在粒径分布,散射系数是分布上的加权叠加。前文提到的牛奶实验说明,忽略尺寸分布会把重建精度限制在中等相关水平;要进一步提高反演精度,需要更准确地获取粒径分布本身。
多次散射与偏振。单次散射的相函数计算成熟,但当光学厚度变大(厚云、浓雾、高浓度悬浮液),光在介质内经历多次散射,偏振态会被显著改变。云雷达与偏振激光雷达正是利用这一改变来反演云滴尺度与相态,也说明多次散射不能简单当作误差忽略。
计算与反演成本。米氏级数在大尺寸参数下收敛慢,宽谱、宽粒径分布的反演需要大量重复计算,因此实际仪器通常会预先建立查找表、采用近似公式或使用快速算法,在精度与实时性之间取舍。随着计算能力与反演方法(如结合机器学习的粒径反演)的发展,这一环节仍有继续推进的空间——例如把非球形效应、宽粒径分布与偏振信息纳入同一反演框架,让测量结果更贴近真实颗粒。
理解了尺寸参数这一条主线,许多看似无关的现象就可以放在同一张坐标轴上:天空为什么蓝、云为什么白、雾为什么挡光、牛奶为什么呈白色、激光雷达能看多远,差别都在散射体尺寸与波长之比落在哪一段区间。
参考资料
- Met Office. Why are clouds white? https://weather.metoffice.gov.uk/learn-about/weather/types-of-weather/clouds/why-are-clouds-white
- He L, Wu H, Li J, Li B, Sun Y, Jiang P, Wang X, Lin G. Solid Particle Swarm Measurement in Jet Fuel Based on Mie Scattering Theory and Extinction Method. Sensors (Basel) 23(5):2837, 2023. https://doi.org/10.3390/s23052837
- Ahmad W, Zhang K, Tong Y, Xiao D, Wu L, Liu D. Water Cloud Detection with Circular Polarization Lidar: A Semianalytic Monte Carlo Simulation Approach. Sensors (Basel) 22(4):1679, 2022. https://doi.org/10.3390/s22041679
- Mao J, Zhang Y, Li J, Gong X, Zhao H, Rao Z. Novel Detection of Atmospheric Turbulence Profile Using Mie-Scattering Lidar Based on Non-Kolmogorov Turbulence Theory. Entropy (Basel) 25(3):477, 2023. https://doi.org/10.3390/e25030477
- Verveld W, de Wolf JR, Bosschaart N. Influence of sample-specific properties on light scattering by human milk. Biophotonics Discovery 3(1):012105, 2026. https://doi.org/10.1117/1.bios.3.1.012105
- Long-term trends in visibility and at Chengdu, China. PLOS ONE 8(7):e68894, 2013. https://doi.org/10.1371/journal.pone.0068894
- Chakraborti S. Verification of the Rayleigh Scattering Cross Section. arXiv:physics/0702101. https://arxiv.org/abs/physics/0702101
- 本地开放教材与讲义参考库检索记录:BYU《Physics of Light and Optics》(Peatross & Ware) https://optics.byu.edu/ ;MIT OCW 2.71 Optics https://ocw.mit.edu/courses/2-71-optics-spring-2009/