作业一:
利用matlab画出高阶拉盖尔高斯光束和高阶厄米光束
1.1
拉盖尔多项式为:()==0
2()
达式为:,, =
同样取2 =1
(+)!(−)
+!! −!
222()− 2()
省略常数因子时,高阶高斯光束在垂直于光轴的横截面上振幅的表
代码:
%被调用的函数
function L=L(p,l,x)
L=0;
for k=0:p
L=L+factorial(p+l)*(-x).^(k)/(factorial(l+k)*fa
ctorial(k)*factorial(p-k)); %拉盖尔多项式
end
%调用的函数
function Laguerre(p,l)
r=0:0.1:5;
%取值范围
phai=0:0.01:3*pi;
[r,phai]=meshgrid(r,phai);
x=r.*cos(phai);
y=r.*sin(phai);
if l~=0
A=(sqrt(2)*r).^(l).*L(p,l,2*r.^(2)).*exp(-r.^(2)
).*sin(l*phai);
else
A=(sqrt(2)*r).^(l).*L(p,l,2*r.^(2)).*exp(-r.^(2)
).*cos(l*phai);
end
mesh(x,y,z);
运行结果:
输入(2,2)
%画图
1.2
(/2) −1 !
厄米多项式为: = =0
! −2!(2)−2
A=exp− 22()
22()
22()
高阶高斯光束在垂直于光轴的横截面上场振幅或光强的分布为
取2 =1
代码:
function Hm=Hm(m,x) %被调用的厄米多项式
Hm=0;
for k=0:floor(m/2) %向下取整
Hm=Hm+(-1)^(k)*factorial(m)*(2*x).^(m-2*k)/(fac
torial(k)*factorial(m-2*k)); %厄米多项式
end
function Hermite(m,n) %调用厄米多项式
x=-2.5:0.1:2.5; %取区间
y=-2.5:0.1:2.5;
[x,y]=meshgrid(x,y);%网格
z=exp(-(x.^2+y.^2)).*H(m,sqrt(2)*x).*H(n,sqrt(2)
*y); %振幅
surfc(x,y,z);
%画带有等高线的振幅图象
运行结果
输入(2,2)