%对ym赋值为5个条纹间隔的长度
xs=ym;
n=101;
ys=linspace(-ym,ym,n); %生成范围为(-ym,ym),总数为101的等分数组 linspace
for i=1:n %用for语句对自变量数组中每一个元素进行操作
r1=sqrt((ys(i)-d/2).^2+D^2);
r2=sqrt((ys(i)+d/2).^2+D^2);
phi=2*pi*(r2-r1)./lam;
B(i,:)=4*cos(phi/2).^2; %得到光强分布的列向量
end来.自/751·论|文-网·www.751com.cn/
N=255;
Br=(B/4)*N; %使最大灰度表示最大光强
subplot(1,2,1) %作图1
image(xs,ys,Br); %在图1中用image函数显示出干涉图像
colormap(gray(N)); %用灰度图像映射当前色图
subplot(1,2,2) %作图2
plot(B,ys) %在图2中作以B为x轴,ys为y轴的线性分布
运行结果如下:
对比真实的干涉图样,与Matlab仿真出来的结果图像是相似的。验证了Matlab在研究干涉问题上的可行性,进一步验证了光的波动性。
2.3 通过Matlab研究杨氏双缝干涉成像波长与缝距之间的关系
虽然理论上满足相干条件的两束光可以发生干涉,实际上我们要对实验装置做一定的限制才能观察到干涉图样。这里我们研究波长与缝距之间的关系对干涉图样的影响。实验方法如下,我们保证缝距不变,改变波长观察衍射图样的变化。这里我们做定量的分析,至于波长是否在可见光波段内我们不考虑。以上述Matlab程序为基础,保证d=2mm不变,分别取波长为0.2mm、1mm、2mm、3mm、20mm。
Matlab光的干涉衍射模拟及应用(3):http://www.751com.cn/wuli/lunwen_73117.html