4. 高斯光束的ABCD定律:从矩阵到q参数

好,咱们进入第四章。这一章可以说是整个光束变换方法的“心脏”。

前面我们讲了矩阵怎么描述光线,也讲了高斯光束的基本形态。现在要把这两件事串起来——用矩阵去算高斯光束。这就是ABCD定律。

我个人觉得,搞懂这一章,你才算真正入了光束变换的门。很多做激光系统的人,卡就卡在“为什么矩阵能算光束?”这个弯上。咱们今天把它掰开揉碎了讲。

4.1 ABCD矩阵的物理意义——别只当它是数学工具

先问一个问题:一个2×2的矩阵,凭什么能描述光学系统?

说白了,ABCD矩阵描述的是光线在输入面和输出面之间的线性映射关系:

[ r2 ]   =   [ A  B ] [ r1 ]
[ θ2 ]       [ C  D ] [ θ1 ]

但这里有个关键点——矩阵的四个元素,各自有明确的物理含义。我当年在实验室调光路时,就是靠这个理解来快速判断系统行为的。

矩阵元素 物理含义 典型场景
A 光线位置的放大率(当输入平行光时) 望远镜系统的角放大率倒数
B 系统的有效光程/偏移能力 自由空间传播时 B = L
C 系统的光焦度(屈光能力) 薄透镜时 C = -1/f
D 光线角度的放大率(当输入会聚光时) 望远镜系统的角放大率
我的小窍门: 判断一个系统是否“无像差”,就看它的行列式是否等于1(AD - BC = 1)。这在非序列追迹里是个快速检查点。

4.2 从光线到高斯光束——为什么需要q参数?

好,矩阵能算光线。但高斯光束不是一条线,它有一个光斑尺寸w(z)和一个波前曲率半径R(z)。这两个参数怎么一起通过矩阵?

答案就是——引入复数q参数。

q参数的定义很简单:

1/q(z) = 1/R(z) - iλ/(π w²(z))

这里:

  • 实部:1/R(z) —— 波前弯曲程度
  • 虚部:λ/(π w²) —— 光斑尺寸的倒数(带负号)

为什么要搞成复数?因为一个复数,同时携带了“相位”和“振幅”两种信息。你想想看,波前曲率是相位信息,光斑大小是振幅信息,正好对应复数的实部和虚部。

核心思想: q参数把高斯光束的两个关键物理量“打包”成一个复数。这样,通过光学系统的变换就变成了一个简单的复数运算。

4.3 ABCD定律——高斯光束的变换公式

现在到了最精彩的部分。高斯光束通过一个ABCD矩阵描述的光学系统后,它的q参数怎么变?

答案是——跟光线一样的线性分式变换:

q2 = (A·q1 + B) / (C·q1 + D)

这就是ABCD定律。

我第一次看到这个公式时,觉得太漂亮了。一个复数,经过一个2×2矩阵,就完成了整个高斯光束的变换。不需要逐面追迹,不需要数值积分。

具体怎么用?我习惯分三步走:

  1. 确定输入q1:知道束腰位置和大小,算出该处的q值
  2. 写出系统矩阵:把透镜、空间、反射镜等元件的矩阵连乘
  3. 代入公式算q2:然后从q2的实部和虚部反解出R2和w2
我曾经踩过的坑: 矩阵乘法的顺序!光线从左边进入系统,矩阵乘法要从右往左乘。比如先经过透镜L1再传播距离d,矩阵是 M = M_d · M_L1。搞反了顺序,算出来的q参数完全不对。

4.4 实战案例:单透镜聚焦高斯光束

咱们看一个最常见的场景——用单个透镜聚焦一束高斯光。

假设:

  • 输入光束:束腰半径 w0 = 1 mm,波长 λ = 632.8 nm
  • 透镜:焦距 f = 100 mm,放在束腰位置
  • 求:透镜后焦面上的光斑大小

第一步:输入q参数

在束腰位置,R = ∞,所以:

1/q1 = -iλ/(π w0²)
q1 = iπ w0²/λ = i × π × (1e-3)² / 632.8e-9 ≈ i × 4.967 (m)

第二步:系统矩阵

从束腰到后焦面:先传播距离 f,再经过透镜:

M_total = M_lens · M_free
        = [1     0 ] [1  f]
          [-1/f  1 ] [0  1]
        = [1     f ]
          [-1/f  0 ]

第三步:代入ABCD定律

q2 = (A·q1 + B) / (C·q1 + D)
   = (1·q1 + f) / (-1/f·q1 + 0)
   = (q1 + f) / (-q1/f)

把 q1 = i·4.967 代入,算出 q2,然后取虚部得到后焦面上的光斑半径:

w_f ≈ (λ·f) / (π·w0) = (632.8e-9 × 0.1) / (π × 1e-3) ≈ 20.1 μm

这个结果跟直接用高斯光束公式算出来的一模一样。但用ABCD定律,你可以轻松处理多透镜、任意间距的复杂系统。

我个人的习惯: 在仿真代码里,我从来不用手算q参数。我会写一个函数,输入矩阵和q1,直接返回q2。这样调光路参数时,改几个数字就能看到结果变化。

4.5 知识体系总览

下面这张图,把本章的核心逻辑串起来了。我建议你把它存下来,做系统设计时对照着看。

高斯光束ABCD定律知识体系 高斯光束ABCD定律知识体系 ABCD矩阵 光线变换的线性映射 高斯光束参数 w(z), R(z), λ q参数定义 1/q = 1/R - iλ/(πw²) ABCD定律 q₂ = (A·q₁ + B) / (C·q₁ + D) 输出q₂ → 反解物理参数 w₂ = √(-λ/(π·Im(1/q₂))) 系统设计验证 多透镜、谐振腔、光纤耦合 💡 核心逻辑 矩阵描述系统 → q参数描述光束 → ABCD定律完成变换 一个公式,搞定所有高斯光束的传播与变换问题

4.6 常见问题与避坑

最后,分享几个我实际工作中遇到的坑:

  • q参数的符号约定:不同教材对虚部的正负号定义不同。我习惯用 1/q = 1/R - iλ/(πw²),一旦确定,全程保持一致。
  • 矩阵单位要统一:长度用米,曲率半径用米,波长用米。我曾经因为把波长用了纳米,算出来的光斑小了三个数量级,找了半天bug。
  • 束腰不在系统入口时:先自由传播一段到束腰位置,算出q值,再乘系统矩阵。不要直接从非束腰位置开始算。
我曾经犯过的错: 在设计一个三透镜扩束系统时,我直接用总矩阵算输出光斑,结果跟实验对不上。后来发现——矩阵连乘时,我忘了考虑透镜之间的空气间隔对q参数虚部的影响。记住:矩阵只管“映射”,q参数的物理演化要尊重实际光路顺序。

嗯,这一章的内容就到这里。ABCD定律是光束变换的“万能钥匙”,掌握了它,后面讲谐振腔设计、光纤耦合、光束整形,都会轻松很多。