sympy光束变换

物象关系

最简单的几何光学是在初中学的,主要对象是物点、像点、透镜焦距,这三个物理量任取两个求第三个,总共也只有三对关系,而且光路可逆,所以物点和像点其实是一回事儿:

  • geometric_conj_af(a, f)
  • geometric_conj_bf(a, f)
  • geometric_conj_ab(a, b)

束腰变换

但从高斯光束的角度理解,简单的物像关系只能得到束腰在经过透镜变换后的位置变化,而不能描述束腰尺寸的变化。现有一个束腰为 w i n w_{in} win的光斑,若想通过一个焦距为 f f f的透镜,使其束腰变为 w o u t w_{out} wout,那么入射光、出射光以及透镜应该如何摆放?下面这个函数就能解决这个问题

conjugate_gauss_beams(wavelen, waist_in, waist_out, f)

其中,wavelen为波长;waist_in, waist_out为入射光和出射光的束腰;f为透镜焦距。

其返回值有三项,分别是入射光束腰和透镜的距离、出射光束腰和透镜的距离,以及透镜焦距。

import sympy
from sympy.physics.optics import conjugate_gauss_beams
l, w_i, w_o, f = sympy.symbols('l w_i w_o f')
x_i, x_o, f_1 = conjugate_gauss_beams(l, w_i, w_o, 
f=f)
sympy.latex(x_i)
sympy.latex(x_o)
sympy.latex(f_1)

结果如下

x i = f ⋅ ( 1 − w i 2 w o 2 − π 2 w i 4 f 2 l 2 ) x_i=f\cdot(1 - \sqrt{\frac{w_{i}^{2}}{w_{o}^{2}} - \frac{\pi^{2} w_{i}^{4}}{f^{2} l^{2}}}) xi=f(1wo2wi2f2l2π2wi4 )

x o = 1 / ( − 1 f ( 1 − w i 2 w o 2 − π 2 w i 4 f 2 l 2 ) + π 2 w i 4 l 2 ( f ( 1 − w i 2 w o 2 − π 2 w i 4 f 2 l 2 ) − f ) + 1 f ) x_o=1/({- \frac{1}{f \left(1 - \sqrt{\frac{w_{i}^{2}}{w_{o}^{2}} - \frac{\pi^{2} w_{i}^{4}}{f^{2} l^{2}}}\right) + \frac{\pi^{2} w_{i}^{4}}{l^{2} \left(f \left(1 - \sqrt{\frac{w_{i}^{2}}{w_{o}^{2}} - \frac{\pi^{2} w_{i}^{4}}{f^{2} l^{2}}}\right) - f\right)}} + \frac{1}{f}})\\ xo=1/(f(1wo2wi2f2l2π2wi4 )+l2(f(1wo2wi2f2l2π2wi4 )f)π2wi41+f1)

上面这好大一坨的 x o x_o xo可以把 x i x_i xi带进去

x o = 1 / ( − 1 x i + π 2 w i 4 l 2 ( x i − f ) + 1 f ) x_o=1/({- \frac{1}{x_i + \frac{\pi^{2} w_{i}^{4}}{l^{2} \left(x_i - f\right)}} + \frac{1}{f}})\\ xo=1/(xi+l2(xif)π2wi41+f1)

高斯光束通过透镜

与此相关的另一个问题是,若有一个瑞利长度为 z r i n z_{r_{in}} zrin的光线,在距离束腰位置 s i n s_{in} sin处遇到一个透镜,已知透镜焦距,那么出射光是什么样的?gaussian_conj就解决这个问题

from sympy.physics.optics import gaussian_conj
s_i, z_r_i, f = sympy.symbols('s_i z_r_i f')
s_o, z_r_o, m = gaussian_conj(s_i, z_r_i, f)
sympy.latex(s_o)
sympy.latex(z_r_o)
sympy.latex(m)

结果为

s o = 1 / ( − 1 s i + z r i 2 / ( s i − f ) + 1 f ) z r o = z r i 1 − ( s i 2 − z r i 2 ) / f 2 m = 1 1 − s i 2 f 2 + z r i 2 f 2 s_o = 1/(-\frac{1}{s_{i} + z_{r i}^{2}/(s_i-f)} + \frac{1}{f})\\ z_{r o} = \frac{z_{r i}}{1 -(s_{i}^{2}-z_{r i}^{2})/f^2}\\ m = \frac{1}{\sqrt{1 - \frac{s_{i}^{2}}{f^2} + \frac{z_{r i}^2}{f^2}}} so=1/(si+zri2/(sif)1+f1)zro=1(si2zri2)/f2zrim=1f2si2+f2zri2 1

猜你喜欢

转载自blog.csdn.net/m0_37816922/article/details/129718510