matlab模拟杨氏双缝干涉实验

光学第二次作业

习题

杨氏双缝干涉:双缝间距 1 m m \rm 1mm 1mm,接收屏到双缝的间距为 1.5 m \rm 1.5m 1.5m,光源波长为 0.632 u m \rm 0.632um 0.632um

  1. 计算出条纹间距
  2. 画出接收屏上光场分布(二维图和一维图)

解:

  1. ε = D d λ 0 = 0.948 m m \varepsilon= \frac D d \lambda_0=0.948mm ε=dDλ0=0.948mm

matlab模拟杨氏双缝干涉实验_第1张图片

matlab模拟杨氏双缝干涉实验_第2张图片

代码如下:

%作者:白冉
%日期:2022/10/24
%*************模拟杨氏双缝干涉实验**************
%%一.清除所有变量
clear;
clc;
%%二.输入基本数值
Lambda = input('请输入光的波长(单位为um):');
d = input('请输入双缝之间的距离(单位为mm):');
D = input('请输入接收屏到双缝的间距(单位为m):');
I0=1;

%%三.基本数值单位转换
Lambda = Lambda*1e-6;
d = d*1e-3;

%%四.坐标轴的限制和取点
epsilon = Lambda*D/d;
Xmax = 5*epsilon;
x = linspace(-Xmax,Xmax,101); 
I = zeros(1,101);

%%五.对每一点进行光强计算
for i=1:101
    r1 = sqrt((x(i)+d/2)^2+D^2);
    r2 = sqrt((x(i)-d/2)^2+D^2);
    phi = 2*pi*(r2-r1)/Lambda;      
    I(i) = 4*I0*cos(phi/2)^2;    
end

%%六.生成一维图
I_color = I./4 .*255;              
subplot(2,1,1);
image(x,Xmax,I_color);           
colormap(gray(255));               
xlabel('空间坐标x(单位:mm)');
title('光强分布一维图');

%%七.生成二维图
subplot(2,1,2);
plot(x,I);
axis([-Xmax,Xmax,0,4]);
xlabel('空间坐标x(单位:mm)'), ylabel('合成光强度(单位:cd)');
title('光强分布二维图');

你可能感兴趣的:(matlab)