3. 角谱理论:平面波角谱的概念、角谱的传播、角谱理论与衍射积分的等价性、空间频率与传播方向
好,我们进入第三章。这一章要聊的角谱理论,是标量衍射理论里非常核心的一块。我个人觉得,它比前面讲的基尔霍夫公式和瑞利-索末菲公式更“物理”一些——因为它把光场分解成了不同方向传播的平面波。你想想看,这就像用傅里叶变换把时域信号拆成不同频率的正弦波一样,只不过这里拆的是空间上的“方向”。
3.1 平面波角谱的概念
什么叫“角谱”?说白了,就是光场中各个方向平面波的幅度分布。
假设我们在 \( z = 0 \) 平面上有一个光场分布 \( U(x, y, 0) \)。这个光场可以看作无数个不同传播方向的平面波的叠加。每个平面波有一个复振幅,这个复振幅随空间频率 \( (f_x, f_y) \) 变化。我们把 \( A(f_x, f_y; 0) \) 称为光场的角谱。
数学上,它就是二维傅里叶变换:
A(f_x, f_y; 0) = ∬ U(x, y, 0) exp[-i2π(f_x x + f_y y)] dx dy
反过来,光场也可以由角谱重构:
U(x, y, 0) = ∬ A(f_x, f_y; 0) exp[i2π(f_x x + f_y y)] df_x df_y
这里的 \( f_x, f_y \) 就是空间频率。它们和传播方向余弦 \( (\alpha, \beta) \) 的关系是:
f_x = α / λ, f_y = β / λ
其中 \( \alpha = \cos\theta_x \), \( \beta = \cos\theta_y \)。
关键理解:角谱就是光场在“方向域”上的表示。每个空间频率对应一个特定的传播方向。这和我们做DOE设计时,想要控制光束往哪个方向偏折,思路是完全一致的。
3.2 角谱的传播
光场从 \( z = 0 \) 传播到 \( z = z \) 时,角谱会怎么变?
答案是:每个平面波分量独立传播,只增加一个相位因子。这个相位因子取决于传播距离和空间频率:
A(f_x, f_y; z) = A(f_x, f_y; 0) · exp[i 2π z √(1/λ² - f_x² - f_y²)]
嗯,这里要注意一个细节。根号里面的东西如果为正,那就是传播的平面波;如果为负,那就变成衰减的倏逝波。在DOE设计中,我们通常只关心传播波,因为倏逝波在几个波长的距离内就衰减没了。
我的经验:在设计DOE时,如果特征尺寸小到亚波长量级,倏逝波的影响就不能忽略。我曾经在一个高NA的DOE项目中,忽略了倏逝波的能量损失,结果效率比预期低了将近10%。从那以后,我每次都会先算一下空间频率是否超出了1/λ的界限。
3.3 角谱理论与衍射积分的等价性
你可能会问:角谱理论和前面讲的瑞利-索末菲衍射积分,到底是不是一回事?
答案是:完全等价。只是看待问题的角度不同。
瑞利-索末菲公式是在空间域做卷积,角谱理论是在频率域做乘法。两者通过傅里叶变换联系起来。我习惯用一张表来对比:
| 对比项 | 衍射积分(空间域) | 角谱理论(频率域) |
|---|---|---|
| 核心操作 | 卷积 | 乘法 |
| 传播核 | 球面波因子 | 相位因子 exp(i k z √(1 - λ²f²)) |
| 计算复杂度 | O(N²) 直接积分 | O(N log N) 用FFT |
| 物理图像 | 惠更斯-菲涅尔子波叠加 | 平面波分解与合成 |
| 适用场景 | 近场、小角度 | 远场、大角度、任意距离 |
从计算角度看,角谱法用FFT实现,速度比直接积分快得多。我在做DOE优化时,每次迭代都要算几十次衍射传播,用角谱法能省下大量时间。
注意:角谱法和衍射积分等价的前提是——标量近似成立。如果遇到高NA(比如NA > 0.6)或者特征尺寸接近波长的情况,标量理论就不太准了,需要考虑矢量效应。这个我们后面章节会专门讲。
3.4 空间频率与传播方向
最后,我们来深入理解一下空间频率和传播方向的关系。
空间频率 \( (f_x, f_y) \) 其实就对应着平面波的方向余弦。具体来说:
- 低频分量(\( f_x, f_y \) 小):对应近轴传播,方向接近光轴
- 高频分量(\( f_x, f_y \) 大):对应大角度传播,方向偏离光轴
- 超高频分量(\( f_x² + f_y² > 1/λ² \)):对应倏逝波,不传播
在DOE设计中,我们通过设计微结构来调制入射光的空间频率分布。比如,一个闪耀光栅就是把能量集中到某个特定的空间频率上,对应一个特定的偏折角度。
下面这张图展示了角谱理论的核心逻辑:
从这张图可以看出,角谱法的计算流程非常清晰:
- 对输入光场做FFT,得到角谱
- 在频率域乘上传播相位因子
- 做IFFT,得到输出光场
整个过程就是一次傅里叶变换、一次乘法、一次逆变换。简洁、高效、物理意义明确。
实用技巧:在MATLAB或Python中实现角谱传播时,我建议先对空间频率网格做归一化处理,避免出现索引错误。另外,采样率要满足奈奎斯特条件,否则会出现混叠。我一般会让采样间隔小于半个波长。