【光波电子学】MATLAB仿真厄米特-高阶高斯光束以及绘制其光强分布图
1 理想的高斯光束的光强分布几个公式代表了不同条件下的高斯光束的光强分布Hm(x)H_m(x)Hm(x)F=e−x2+y2w2F = e^{-\frac{x^2+y^2}{w^2}}F=e−w2x2+y2Hm2(x)F2H_m^{2}(x)F^2Hm2(x)F22 MATLAB实现clearclc%% 初始值x = -2*pi:pi/100:2*pi;% 横坐标范围w = 2 % F 函数中
1 物理模型
在激光器的方形镜对称共焦腔中,厄米特—高斯分布描述了腔镜上自再现模的场分布,对其进行数值模拟,可以观察不同阶数下本征模的场分布情况
(x,y)表示镜面上的任意点坐标,腔长:L,光波波长:λ,原点选在镜面中心,则在近轴近似条件下 L,R>>α>>λ ,腔镜镜面上的电场复振幅可以表示为
u m n ≈ C m n H m ( X ) H n ( Y ) e X 2 + Y 2 2 u_{mn} \approx C_{mn}H_m(X)Hn(Y)e^{\frac{X^2+Y^2}{2}} umn≈CmnHm(X)Hn(Y)e2X2+Y2
其中,m=0, 1, 2, …和 n=0, 1, 2…,m、n 为横截面上 x、y 方向出现的节点;
C
m
n
C_{mn}
Cmn为与 m、n 有关的常量Hm(X)、Hn(Y)为厄密多项式,可以表示为
H
m
(
X
)
=
(
−
1
)
m
e
X
2
d
m
(
e
−
X
2
)
d
X
m
H_m(X) =(-1)^me^{X^2}\frac{d^m(e^{-X^2})}{dX^m}
Hm(X)=(−1)meX2dXmdm(e−X2)
H
0
(
X
)
=
1
,
H
1
(
X
)
=
2
X
,
H
2
(
X
)
=
4
X
2
−
2
,
H
3
(
X
)
=
−
8
x
3
+
12
x
H_0(X) = 1,H_1(X) = 2X,H_2(X)=4X^2-2,H_3(X)=-8x^3+12x
H0(X)=1,H1(X)=2X,H2(X)=4X2−2,H3(X)=−8x3+12x
也可以写为
u
m
n
≈
C
m
n
F
m
(
X
)
F
(
Y
)
u_{mn}\approx C_{mn}F_m(X)F(Y)
umn≈CmnFm(X)F(Y)
F
(
X
)
=
H
m
(
X
)
e
−
X
2
/
2
F_(X) = H_m(X)e^{-X^2/2}
F(X)=Hm(X)e−X2/2
F
(
Y
)
=
H
n
(
X
)
e
−
Y
2
/
2
F_(Y) = H_n(X)e^{-Y^2/2}
F(Y)=Hn(X)e−Y2/2
因此不同阶数的光场分布对应光斑分布可以表示为:
激光的模式常用微波中的表示方法,即
T
E
M
m
n
TEM_{mn}
TEMmn ,其中
T
E
M
00
TEM_{00}
TEM00是基模,可以看出 m 和 n 的值越大,光场也越向外扩展。当 m=0,n=0 时,光场分布为基模高斯光束
T
E
M
00
TEM_{00}
TEM00,其传播场的振幅分布可写为
U
00
=
e
x
p
(
−
2
1
+
ζ
2
x
2
+
y
2
w
s
2
)
U_{00} = exp(-\frac{2}{1+\zeta ^2} \frac{x^2+y^2}{w_s^2})
U00=exp(−1+ζ22ws2x2+y2)
ζ
=
2
z
/
L
,
w
s
=
λ
L
/
π
\zeta = 2z/L,w_s = \sqrt{\lambda L/\pi}
ζ=2z/L,ws=λL/π
z
为
传
播
距
离
,
L
为
腔
长
,
λ
为
波
长
z为传播距离,L为腔长,\lambda 为波长
z为传播距离,L为腔长,λ为波长
其零点是对称共焦腔的中心。高斯光束的传播呈现双曲线型的形态,波长一定情况下,共焦腔内 z 处的截面半径大小仅取决于腔长 L。高斯光束的束腰半径可以写为
w
0
=
λ
L
2
π
=
1
2
w
s
w_0 = \sqrt{\frac{\lambda L}{2\pi}}= \frac{1}{\sqrt{2}}w_s
w0=2πλL=21ws
2 MATLAB实现
2.1 光斑效果展示
2.2 高斯光束光强分布的三维模型
2.3 代码实现
clear all
close all
x=[-5:0.1:5].*1e-3; % 坐标范围
lambda=632.8e-9; % 波长
L=10; % 腔长
X=x.*sqrt(2*pi./(lambda.*L));
[X1,Y1]=meshgrid(X,X); % X和Y的坐标矩阵
%% 厄米特函数
% H0-H3
H0X=1;
H0Y=1;
H1X=2.*X1;
H1Y=2.*Y1;
H2X=4.*X1.^2-2;
H2Y=4.*Y1.^2-2;
H3X=-8.*X1.^3+12.*X1;
H3Y=-8.*Y1.^3+12.*Y1;
%% 厄米特——高斯函数
% F0-F3
FX0=H0X.*exp(-X1.^2-2);
FY0=H0Y.*exp(-Y1.^2-2);
FX1=H1X.*exp(-X1.^2-2);
FY1=H1Y.*exp(-Y1.^2-2);
FX2=H2X.*exp(-X1.^2-2);
FY2=H2Y.*exp(-Y1.^2-2);
FX3=H3X.*exp(-X1.^2-2);
FY3=H3Y.*exp(-Y1.^2-2);
%% 振幅分布
u00=FX0.*FY0; % TEM00
subplot(3,4,1)
imagesc(abs(u00))
u10=FX1.*FY0; % TEM10
subplot(3,4,2)
imagesc(abs(u10))
u20=FX2.*FY0; % TEM20
subplot(3,4,3)
imagesc(abs(u20))
u30=FX3.*FY0; % TEM30
subplot(3,4,4)
imagesc(abs(u30))
u01=FX0.*FY1; % TEM01
subplot(3,4,5)
imagesc(abs(u01))
u11=FX1.*FY1; % TEM11
subplot(3,4,6)
imagesc(abs(u11))
u21=FX2.*FY1; % TEM21
subplot(3,4,7)
imagesc(abs(u21))
u31=FX3.*FY1; % TEM31
subplot(3,4,8)
imagesc(abs(u31))
u02=FX0.*FY2; % TEM02
subplot(3,4,9)
imagesc(abs(u02))
u12=FX1.*FY2; % TEM12
subplot(3,4,10)
imagesc(abs(u12))
u22=FX2.*FY2; % TEM22
subplot(3,4,11)
imagesc(abs(u22))
u33=FX3.*FY3; % TEM33
subplot(3,4,12)
imagesc(abs(u33))
colormap gray; %显示灰度图
3 知识拓展
3.1 高斯分布是什么?
说白了就是上图中右下角的山坡型的图形。这个山坡型就是下面三维高斯光束的横截面。所以高斯光束就和高斯分布结合起来了。
这时候,我将三种图对应起来,有没有发现共通点???
从左开始的第一张是高斯分布图,中间张是高斯光束光强三维分布图,最右边是高斯光束光强从三维图的顶部角度看上去的光斑。所以在下面要想实现光斑,只需要画出高斯分布的三维图形,从顶部角度视角展示图形就能得到光斑。
附上绘制这张图的代码
clear all
close all
x=[-5:0.1:5].*1e-3; % 设定腔镜坐标
lambda=632.8e-9; % 设定激光器出光频率
L=10; % 设定激光腔腔长
X=x.*sqrt(2*pi./(lambda.*L));
Y= X
[X1,Y1]=meshgrid(X,X); % 获取X和Y的坐标矩阵
% 设定厄米特函数,n和m只从0取到2 %
% 绘制三维的
H0X=1;
H1X=2.*X1;
H2X=4.*X1.^2-2;
H0Y=1;
H1Y=2.*Y1;
H2Y=4.*Y1.^2-2;
% 三维公式
FX0=H0X.*exp(-X1.^2-2); % 生成厄米特——高斯函数
FX1=H1X.*exp(-X1.^2-2);
FX2=H2X.*exp(-X1.^2-2);
FY0=H0Y.*exp(-Y1.^2-2);
FY1=H1Y.*exp(-Y1.^2-2);
FY2=H2Y.*exp(-Y1.^2-2);
% 二维公式
H0X1=1;
H1X1=2.*X;
H2X1=4.*X.^2-2;
H0Y1=1;
H1Y1=2.*Y;
H2Y1=4.*Y.^2-2;
F0X=H0X1.*exp(-X.^2-2); % 生成厄米特——高斯函数
F1X=H1X1.*exp(-X.^2-2);
F2X=H2X1.*exp(-X.^2-2);
F0Y=H0Y1.*exp(-Y.^2-2);
F1Y=H1Y1.*exp(-Y.^2-2);
F2Y=H2Y1.*exp(-Y.^2-2);
% 00
I2=FX0.^2.*FY0.^2; % 考虑X和Y两个方向分布
I1=F0X.^2.*F0Y.^2;
subplot(3,3,1)
plot(X,I1)
subplot(3,3,2)
surf(X1,Y1,I2)
subplot(3,3,3)
surf(X1,Y1,I2)
view(2)
% 01
I2=FX0.^2.*FY1.^2; % 考虑X和Y两个方向分布
I1=F0X.^2.*F1Y.^2;
subplot(3,3,4)
plot(X,I1)
subplot(3,3,5)
surf(X1,Y1,I2)
subplot(3,3,6)
surf(X1,Y1,I2)
view(2)
% 02
I2=FX0.^2.*FY2.^2; % 考虑X和Y两个方向分布
I1=F0X.^2.*F2Y.^2;
subplot(3,3,7)
plot(X,I1)
subplot(3,3,8)
surf(X1,Y1,I2)
subplot(3,3,9)
surf(X1,Y1,I2)
view(2)
3.2 单独实现高阶高斯分布
其中用到的高斯分布的公式
H
m
(
x
)
H_m(x)
Hm(x)
F
=
e
−
x
2
+
y
2
w
2
F = e^{-\frac{x^2+y^2}{w^2}}
F=e−w2x2+y2
H
m
2
(
x
)
F
2
H_m^{2}(x)F^2
Hm2(x)F2
clear
clc
%% 初始值
x = -2*pi:pi/100:2*pi;% 横坐标范围
w = 2 % F 函数中w取值
yy =x % 纵坐标范围
%% 画光强分布
figure(2) % define figure
% 【1 1】个图
subplot(3,4,1);
plot([-10,10],[10,10],'linewidth',2)
% 【1 2】个图
subplot(3,4,2);
y = fx(x,yy,w)
plot(x,y,'linewidth',2);
% 【1 3】个图
subplot(3,4,3); % subplot(x,y,n)x表示显示的行数,y表示列数,n表示第几幅图片
y = hf(x,yy,w,hx1(x),fx(x,yy,w))
plot(x,y,'linewidth',2);
% 【1 4】个图
subplot(3,4,4);
y = hf2(x,yy,w,hx1(x),fx(x,yy,w))
plot(x,y,'linewidth',2);
% 【2 1】个图
% 画45度斜线
subplot(3,4,5);
y = hx2(x)
plot(x,y,'linewidth',2);
% 【2 2】个图
subplot(3,4,6);
y = fx(x,yy,w)
plot(x,y,'linewidth',2);
% 【2 3】个图
subplot(3,4,7);
y = hf(x,yy,w,hx2(x),fx(x,yy,w))
plot(x,y,'linewidth',2);
% 【2 4】个图
subplot(3,4,8);
y = hf2(x,yy,w,hx2(x),fx(x,yy,w))
plot(x,y,'linewidth',2);
% 【4 1】个图
% 画y=x^2-10
subplot(3,4,9);
y = hx3(x)
plot(x,y,'linewidth',2);
% 【4 2】个图
subplot(3,4,10);
y = fx(x,yy,w)
plot(x,y,'linewidth',2);
% 【4 3】个图
subplot(3,4,11);
y = hf(x,yy,w,hx3(x),fx(x,yy,w))
plot(x,y,'linewidth',2);
% 【4 4】个图
subplot(3,4,12);
y = hf2(x,yy,w,hx3(x),fx(x,yy,w))
plot(x,y,'linewidth',2);
%% 函数
% 绘制水平线函数
function r=hx1(x)
r =1
end
% 绘制45度直线函数
function r=hx2(x)
r =2.*x
end
% 绘制凹曲线函数
function r=hx3(x)
r =4.*x.^2-2
end
% 绘制F的函数
function r =fx(x,y,w)
r = exp(-(x.*2+y.^2)./(w^2))
end
% 绘制Hm(x)*F
function r =hf(x,y,w,source,fun)
r = fun.*source
end
% 绘制Hm(x)^2*F^2的函数
function r =hf2(x,y,w,source,fun)
r = (fun.^2).*(source.^2)
end
对于绘制出来的图形,并没有理想中的那么均匀,但是趋势是大致相同的,有两个原因
(1)原始教材中的图形,是理想化的图像,只是为了突出表述了每个图形的特点。
(2)本人绘制的图形,选择的参数只是随机选择的,比如F函数中w和y的取值仅仅是随机取的。如果想要实现最理想化的图形,需要慢慢的调参
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)