主题:求助:matlab模拟光波干涉问题
用matlab模拟平面波和球面波同轴干涉,程序如下:
Lambda=632.8E-9; %设定波长值
z=40E-2; %球面波距屏距离
Ymax=1.5E-2; Ny=400;Ys=linspace(-Ymax, Ymax, Ny); %Y取样点
Xmax=Ymax; Nx=Ny; Xs=linspace(-Xmax, Xmax, Nx); %X取样点
for i=1:Nx
for j=1:Nx
L1=sqrt(Xs(i)^2+Ys(j)^2+z^2); %光程
L2=z;
Phi=2*pi*(L1-L2)/Lambda; %相位差
r=L1; %屏上点到球面波焦点距离
B(i,j)=1/r^2+1+2*cos(Phi)/r; %屏上点的光强
end
end
figure
NCLevels=255; %灰度级
Br=(B/(1/z^2+1+2/z))*NCLevels; %亮度最大取为白
image(Xs,Ys,Br);
colormap(gray(NCLevels));
xlabel('x/m');
ylabel('y/m');
title('z=40cm,lambda=632.8nm');
运行结果是有很多组不同圆心的圆环,而根据光学知识,一束球面波和平面波同轴干涉应该是一组同心圆环,想了很久,求助高手帮我分析一下,谢啦!
Lambda=632.8E-9; %设定波长值
z=40E-2; %球面波距屏距离
Ymax=1.5E-2; Ny=400;Ys=linspace(-Ymax, Ymax, Ny); %Y取样点
Xmax=Ymax; Nx=Ny; Xs=linspace(-Xmax, Xmax, Nx); %X取样点
for i=1:Nx
for j=1:Nx
L1=sqrt(Xs(i)^2+Ys(j)^2+z^2); %光程
L2=z;
Phi=2*pi*(L1-L2)/Lambda; %相位差
r=L1; %屏上点到球面波焦点距离
B(i,j)=1/r^2+1+2*cos(Phi)/r; %屏上点的光强
end
end
figure
NCLevels=255; %灰度级
Br=(B/(1/z^2+1+2/z))*NCLevels; %亮度最大取为白
image(Xs,Ys,Br);
colormap(gray(NCLevels));
xlabel('x/m');
ylabel('y/m');
title('z=40cm,lambda=632.8nm');
运行结果是有很多组不同圆心的圆环,而根据光学知识,一束球面波和平面波同轴干涉应该是一组同心圆环,想了很久,求助高手帮我分析一下,谢啦!