logo资料库

基于MATLAB的杨氏双缝干涉实验模拟.docx

第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
资料共6页,全文预览结束
基于 MATLAB 的杨氏双缝干涉实验模拟 摘要:根据光的双缝干涉实验理论,利用 MATLAB 编写程序对双缝干涉实验进行模拟,绘制 出双缝干涉的图样和光强分布曲线,并且同步计算出相应的条纹间距和对比度,自观地展现 了单色光的双缝干涉这一物理现象,实验结果与实际计算结果一致,为双缝干涉的理论与实 验提供了有效的支持. 关键词:MATLAB;双缝干涉;实验模拟 0 引言 MATLAB 既是一种直观、高效的计算机语言,同时又是一个科学计算平台.它 为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形 工具.双缝干涉实验是利用分波振面法获得相干光束,得到干涉图样.而利用 MATLAB 模拟实验可以形象、直观地演示实验现象,探究光的干涉问题,而且不 受实验仪器和实验场所的限制,可以通过改变模拟参数获得不同的仿真结果,并 在显示屏上直接显示出来,动态直观地展现各种物理量之间的关系,对于理解光 学理论具有积极的作用. 1 双缝干涉实验的理论分析 杨氏双缝干涉实验是利用分波振面法获得相干光束的典型例了,如图 1 所示, 在普通单色光光源后放一狭缝 S,S 后又放有与 S 平行且等距离的两平行狭缝 S1, 和 S2.单色光通过两个狭缝 S1,S2 射向屏幕,相当于位置不同的两个同频率同相位 光源向屏幕照射的叠合,由于到达屏幕各点的距离(光程)不同引起相位差,叠 合的结果是在有的点加强,在有的点抵消,造成干涉现象。 d 为双缝的间隔,D 为屏幕到双狭缝平面的距离,y 为 O 到 P 的距离.考虑两 个相干光源到屏幕上任意点 P 的距离差为 r 1  2 D  r 2  2 D  2 y   d 2    2 y   d 2    (1) (2)
引起的相位差为 r    r 2 r 1    2 r   (3) (4) 设两束相干光在屏幕上 P 点产生振幅相同,均为 A0,则夹角为λ的两个矢量 A0 的合成矢量的幅度为 A  02 A cos   2  光强 B 正比于振幅的平方,故 P 点光强为 B  04 B 2 cos   2  下面我们从理论上加以推导,由上面的式(1-2)可得 2 r 2  2 r 1   r 2   r 2 r 1   r 1  2 dy 考虑到 d,y 很小, r 1  r 2   结合(7)式有 D 2 这样就得点 P 处于亮条纹中心的条件为 r 2   r 1 d D y y ,  k D d k     0, 1, 2, (5) (6) (7) (8) (9) 图 1 双缝干涉示意图 因此,亮条纹是等间距的.若采用红光,其波长λ=500 nm,屏幕到双狭缝平面 的距离 D=1 m,双缝的间隔 d=2mm,则相邻条纹间距为 D d   1 0.002  500 10   9 m  2.5 10   4 m (10) 2 双缝干涉实验的计算机模拟
MATLAB 提供了十分强大的图形处理功能,应用 MATLAB 可以实现各种二维 图形和三维图形的绘制及控制与表现.对于双缝干涉实验模拟的基本过程是首先 设置波长、屏幕到双狭缝平面的距离、双缝的间隔 d,光屏的范围,再将仿真光屏 的 y 方向分成 n 个点,然后调用循环语句,根据光强公式,即公式(6)对各采样点 的光强进行计算,调用 image 函数,绘制实验仿真图像,使用色谱函数 colormap 着色,调用 plot 函数,绘制光强分布曲线.这些函数都能根据数据自动选择精度、 步长,进行颜色、光照及坐标轴等控制,代替用户完成大量底层工作,使用非常 方便,根据上面的分析,编写程序 Program1.m 文件如下,并运行程序程序得到 干涉条纹如图 2 所示. 图 2 单色光的干涉条纹与光强变化曲线 图 2 中左图是光屏上的干涉图条纹,右图是光屏上沿 y 轴方向光强的变化曲 线.从图 2 中也不难看出,干涉条纹是以点 n 所对应的水平线为对称,沿上下两 侧交替,等距离排列,从图 2 上可以看出相邻亮条纹中心间距为 2.5x10-4 m.与式 (10)计算结果相一致。 如果改变波长、屏幕到双狭缝平面的距离、双缝的问隔、光屏的范围等参数, 可以绘出其相应的干涉条纹,亦可以在一张图上绘出不同波长单色光的干涉条纹, 可以清楚地看出,波长越长,干涉条纹的问隔越宽这一现象.理论分析告诉我们, 这与杨氏干涉条纹间隔与波长成正比是一致的,理论推导和实验结果相同. 进一步考虑到纯粹的单色光不易获得,通常都有一定的光谱宽度,这种光的 非单色性对光的干涉会产生何种效应,下面我们用 MATLAB 计算并仿真这一问题. 非单色光的波长不是常数,假定光源的光谱宽度为中心波长的 10%,并且在
该区域均匀分布.近似取 19 根谱线,相位差的计算表达式求出的将是不同谱线的 19 个不同相位.计算光强时应把这 19 根谱线产生的光强叠加并取平均值,即    2 k 19 r B B  ,  k   1  0 k 4cos 2    19  k 2    (11) 将程序 Program1.m 中的 9,10 两句按照公式(11)换成以下 4 句,由此构成的 程序就可以仿真非单色光的干涉问题. x 10-3 x 10-3 1.5 -1 -0.5 0 0.5 1 1 0.5 0 -0.5 -1 -0.4 -0.2 0 0.2 0.4 -1.5 0 1 2 3 4 图 3 非单色光的干涉条纹与光强变化曲线 运行修改后的程序得到的干涉条纹如图 3 所示.从图 3 可以看出,光的非单 色性导致干涉现象的减弱,光谱很宽的光将不能形成干涉。 3 结语 MATIAB 软件开发工具为抽象物理现象的计算机动态模拟提供了简单、高效 的编程环境,光的干涉模拟效果与实验结果相一致。本文在分析光干涉与衍射现 象数学模型的基础上,提出了一种运用 MATLAB 模拟光的干涉现象的方法,该方 法能够简便、直观地展现了光的干涉这一物理现象.进一步可以改变程序参数,将 光的干涉、衍射等物理现象模拟出来。 参考文献: [1]胡盘新,汤毓骏.普通物理简明教程:下册[M].北京:高等教育出版 2004:217-260. [2]胡守信,李伯年.基于 MATLAB 的数学实验[M].北京:科学出版社,2004:139-144. [3] 任 玉 杰. 数 值 分 析 及 其 MATLAB 实 现:MATLAB6.X,7.X [M]. 北 京: 高 等 教 育 出 版 社 ,
2007:39-44. [4]徐代升,陶家友,吴健辉,等.单色光杨氏十涉图样计算机写真[J].湖南理工学院学报:自 然科学版,2009,22(3) : 28-31. [5]符运良.MATLAB 在光学教学中的应用[J].华南热带农业大学学报,2004,10(3):55-57. 附录 程序一: clear all %Program1.m lam=500e-9;%输入波长 a=2e-3;D=1; ym=5*lam*D/a; xs=ym;%设定光屏的范围 n=101; ys=linspace(-ym, ym,n) ;%把光屏的 y 方向分成 101 点 for i=1:n r1=sqrt((ys (i) -a/2) .^2+D^2); r2=sqrt((ys (i) +a/2) ^2+D^2); phi=2*pi* (r2-r1)/lam; B(i,:)=4*cos(phi/2).^2; end N=255 ;%确定用的灰度等级为 255 级 Br=(B/4.0) *N;%使最大光强对应于最大灰度级(白色) subplot(1,2,1) image(xs, ys, Br);%画干涉条纹 colormap(gray(N)); subplot(1,2,2) plot(B, ys)%画出光强变化曲线 程序二: clear all %Program1.m lam=500e-9;%输入波长 a=2e-3;D=1; ym=5*lam*D/a; xs=ym;%设定光屏的范围
n=101; ys=linspace(-ym, ym,n) ;%把光屏的 y 方向分成 101 点 for i=1:n r1=sqrt((ys (i) -a/2) .^2+D^2); r2=sqrt((ys (i) +a/2) ^2+D^2); N1=19;dL=linspace(-0.1,0.1,N1);%设光谱相对宽度 10%, lam1=lam*(1+dL);%分 19 根谱线,波长为一个数组 phil=2*pi*(r2-r1)./lam1 ;%从距离差计算各波长的相位差 B(i, :) =sum(4*cos(phil/2).^2)/N1;%叠加各波长并影响计算光强 end N=255 ;%确定用的灰度等级为 255 级 Br=(B/4.0) *N;%使最大光强对应于最大灰度级(白色) subplot(1,2,1) image(xs, ys, Br);%画干涉条纹 colormap(gray(N)); subplot(1,2,2) plot(B, ys)%画出光强变化曲线
分享到:
收藏