六路高斯光经过透镜聚焦仿真代码
时间: 2023-07-29 17:09:41 浏览: 51
以下是使用Python编写的六路高斯光经过透镜聚焦的仿真代码,其中使用了numpy和matplotlib库:
```python
import numpy as np
import matplotlib.pyplot as plt
# 定义高斯光函数
def gauss_beam(x, y, w0, z, l):
r = np.sqrt(x**2 + y**2)
wz = w0 * np.sqrt(1 + (z/l)**2)
phi = np.arctan2(y, x)
R = z + l*l/z
psi = np.arctan2(wz, R)
w = wz * np.sqrt(1 + ((r*R)/(wz**2))**2 - 2*r*R/(wz**2)*np.cos(phi-psi))
return w
# 定义透镜函数
def lens(x, y, f):
r = np.sqrt(x**2 + y**2)
k = 2*np.pi / 633e-9
phi = k * r**2 / (2*f)
return np.exp(-1j*phi)
# 定义六路高斯光函数
def six_gauss_beam(x, y, w0, z, l, d):
return (gauss_beam(x, y-d/2, w0, z, l) + gauss_beam(x, y+d/2, w0, z, l)
+ gauss_beam(x-d/2, y, w0, z, l) + gauss_beam(x+d/2, y, w0, z, l)
+ gauss_beam(x-d/2, y-d/2, w0, z, l) + gauss_beam(x+d/2, y+d/2, w0, z, l))
# 定义模拟参数
N = 512
L = 2e-3
x = np.linspace(-L/2, L/2, N)
y = np.linspace(-L/2, L/2, N)
X, Y = np.meshgrid(x, y)
w0 = 1e-3
z = 1
f = 50e-3
d = 10e-3
l = 633e-9
# 计算六路高斯光聚焦后的强度分布
U = six_gauss_beam(X, Y, w0, z, l, d) * lens(X, Y, f)
I = np.abs(U)**2
# 绘制六路高斯光聚焦后的强度分布
plt.figure(figsize=(8, 8))
plt.imshow(I, cmap='hot', extent=[-L/2, L/2, -L/2, L/2])
plt.xlabel('x (m)')
plt.ylabel('y (m)')
plt.title('Six Gaussian Beams Focused by a Lens')
plt.colorbar()
plt.show()
```
这段代码可以计算出六路高斯光经过透镜聚焦后的强度分布,并使用matplotlib库进行可视化。您可以根据自己的需要修改参数和绘图样式。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)