[理学]球面波干涉报告书

上传人:tian****1990 文档编号:73234444 上传时间:2019-01-25 格式:DOC 页数:17 大小:285.18KB
返回 下载 相关 举报
[理学]球面波干涉报告书_第1页
第1页 / 共17页
[理学]球面波干涉报告书_第2页
第2页 / 共17页
[理学]球面波干涉报告书_第3页
第3页 / 共17页
[理学]球面波干涉报告书_第4页
第4页 / 共17页
[理学]球面波干涉报告书_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《[理学]球面波干涉报告书》由会员分享,可在线阅读,更多相关《[理学]球面波干涉报告书(17页珍藏版)》请在金锄头文库上搜索。

1、武汉理工大学能力拓展训练报告书 0 目录 1 概述 1 2 理论分析 1 3 MATLAB 程序的编写 .2 3.1 点光源为单色光.2 3.2 点光源为复色光 5 4 干涉现象的分析 8 4.1 单色光情况下的变化.8 4.2 复色光情况下的变化.9 5 心得体会 9 6 参考文献 .10 7 附录程序 .10 武汉理工大学能力拓展训练报告书 1 球面波干涉的计算机模拟 1 概述 MATLAB 是矩阵实验室(Matrix Laboratory)的简称,是美国 MathWorks 公司出品 的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算 语言和交互式环境,主要包括

2、 MATLAB 和 Simulink 两大部分。它将数值分析、矩阵计 算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易 于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学 领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言 (如 C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB 的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十 分相似,故用 MATLAB 来解算问题要比用 C,FORTRAN 等语言完成相同的事情简 捷得多,并且 MATLAB 也吸收了像 Maple 等软

3、件的优点,使 MATLAB 成为一个强 大的数学软件。在新的版本中也加入了对 C,FORTRAN,C+,JAVA 的支持。可以 直接调用,用户也可以将自己编写的实用程序导入到MATLAB 函数库中方便自己以 后调用,此外许多的 MATLAB 爱好者都编写了一些经典的程序,用户可以直接进行 下载就可以用。 2 理论分析 两列球面光波的干涉是光波干涉的最简单,也是最重要的例子。设在均匀媒质中有 两个同频率简谐振动的相干点光源 S1,S2 位于同一平面内,光波叠加后将产生干涉条纹, 仿真中,可以在不同的观察平面上观察干涉条纹。如图 1 所示,a 平面与点光源 S1,S2 的连线垂直,b 平面与点光源

4、 S1,S2 的连线平行。由此可将两列波干涉按照观察平面选 取的不同分成两个方向进行讨论,下面我们只对 a 平面的观察屏进行讨论。 武汉理工大学能力拓展训练报告书 2 图1 点光源与干涉图位置示意图 两个点光源与观察平面垂直时,即在平面 a 处观察干涉条纹。这种情况下,假设两点 光源间距为 d,观察平面取样点数为 ny,把直角坐标系的坐标原点取在平面的中心,点 光源连线设为 x 轴,平面 a 平行于 y-z 轴,且平面 a 与 y-z 轴距离为 D,则点光源 S1 的位 置在(-d/2,0,0) ,点光源 S2 的位置在(d/2,0,0) ,要计算点光源 S1 和点光源 S2 到观察平 面任意

5、点 P 处的相位差,然后利用公式 2020 2 20 1010 1 10 expexptLkj d E tLkj d E PI 102002121 cos2kPIPIPIPI (2-5) 来计算观察平面各个点处的光强分布并显示出来。 3 MATLAB 程序的编写 3.1 点光源为单色光 点光源为单色光时,只需要设置光源振幅 E=1,然后利用如下程序将干涉强度曲线求 出来。 D=0.05; d=1/100; Lambda=500/1000000000; E=1; ymax=0.00055;ny=161;y=linspace(-ymax,ymax,ny); z=y; 武汉理工大学能力拓展训练报告书

6、 3 i=(ny-1)/2; for j=1:ny l1=sqrt(y(j)2+(D-d/2)2+z(j)2); l2=sqrt(y(j)2+(D+d/2)2+z(j)2); phi=2*pi*(l2-l1)/Lambda; I(j)=(E/l1)2+(E/l2)2+2*E2/l1/l2*cos(phi); end M=max(I); figure(1); plot(y,I,b); axis(-ymax,ymax,0,M); title(单色光强度曲线); xlabel(x); ylabel(强度); 运行此程序,结果如图 2。 武汉理工大学能力拓展训练报告书 4 图 2 单色光干涉强度曲线图

7、 单色光二维干涉条纹用如下程序编写出来: for i=1:ny for j=1:ny l1=sqrt(y(i)2+(D-d/2)2+z(j)2); l2=sqrt(y(i)2+(D+d/2)2+z(j)2); phi=2*pi*(l2-l1)/Lambda; I(i,j)=(E/l1)2+(E/l2)2+2*E2/l1/l2*cos(phi); end end nclevels=255; br=I.*255/max(max(I); figure(2); image(y,z,br); xlabel(y(m); ylabel(z(m); title(单色光二维干涉条纹); axis(-ymax,y

8、max,-ymax,ymax); colormap(pink(nclevels); 运行上述程序,结果如图 3。 武汉理工大学能力拓展训练报告书 5 图 3 单色光二维干涉条纹图 3.2 点光源为复色光 点光源为复色光时,其与单色光干涉的唯一区别也就是光源的波长不再是单一的而 是有一定的带宽,因此,仿真模拟时,可以先定义一个中心波长,然后以此按一定比例 展开,形成有一定带宽的波带,这个比例可以表示为 width.此时,这个波带中的波长就可 以表示为: NI=11; %确定从波带中选择的波长个数。 dL=linspace(-width,width,NI);%用数组来确存储这个比例宽度内的比例值。

9、 Lambda1=Lambda*(1+dL); %根据这些比例值来选择波带内的波长。 然后再把这个波带每一波长光在任意一点的干涉光强累加起来,就为该点的光强值。 然而,这只是实现了复色光干涉时光强在观察屏上的简单叠加,由于在 MATLAB 中 其颜色显示与波长没有简单的对应关系,实现其对应的彩色显示非常复杂,而本实验主 要研究的是干涉中的光强变化,因此就没过多地追求其颜色变化。 复色光干涉强度曲线程序: 武汉理工大学能力拓展训练报告书 6 for j=1:ny l1=sqrt(y(j)2+(D-d/2)2+z(j)2); l2=sqrt(y(j)2+(D+d/2)2+z(j)2); NI=11

10、; dL=linspace(-width,width,NI); Lambda1=Lambda*(1+dL); phi=2*pi*(l2-l1)./Lambda1; g(j)=sum(E/l1)2+(E/l2)2+2*E2/l1/l2.*cos(phi)/NI; end M=max(g); figure(4); plot(y,g,b); axis(-ymax,ymax,0,M); title(复色光强度曲线); xlabel(x); ylabel(强度); 运行此程序,结果如图 4。 武汉理工大学能力拓展训练报告书 7 图 4 复色光强度曲线图 复色光二维干涉条纹用如下程序编写出来: for i

11、=1:ny for j=1:ny l1=sqrt(y(i)2+(D-d/2)2+z(j)2); l2=sqrt(y(i)2+(D+d/2)2+z(j)2); NI=11; dL=linspace(-width,width,NI); Lambda1=Lambda*(1+dL); phi=2*pi*(l2-l1)./Lambda1; c(i,j)=sum(E/l1)2+(E/l2)2+2*E2/l1/l2.*cos(phi)/NI; end end nclevels=255; br=c.*255/max(max(c); 武汉理工大学能力拓展训练报告书 8 figure(3); image(y,z,

12、br); xlabel(y(m); ylabel(z(m); title(复色光二维干涉条纹); axis(-ymax,ymax,-ymax,ymax); colormap(pink(nclevels); 运行此程序,结果如图 5。 图 5 复色光干涉条纹图 4 干涉现象的分析 4.1 单色光情况下的变化 由实验程序图分析得出,在 a 观察平面处,光强分布是一组位于 S1S2 连线上的同心 圆环状条纹。且当观察屏距原点距离 D 愈大,条纹越稀疏;当屏距 D 确定时,观察屏上 条纹是一组内疏外密的同心圆环条纹。这与理论研究时完全一致的。 武汉理工大学能力拓展训练报告书 9 4.2 复色光情况下的

13、变化 由实验程序图分析得出,随着光程差的增大,因波长不同,各单色条纹图样之间的 相对位移不断增大,它们按照强度叠加的结果,使合成的干涉条纹的对比度下降。从而 使得干涉强度峰值逐步减小。 5 心得体会 通过上述讨论分析可知 ,利用MATLAB 软件对平面光栅衍射实验进行仿真模拟 , 不受实验仪器和场所的限制 , 为大学物理的理论分析和实验仿真教学提供了教改的 平台。在光学教学中 , 可以通过改变实验参数就能得到不同实验条件下的衍射强度分 布和衍射谱线 ;对于帮助学生理解光学原理具有积极的作用 , 进一步提高大学物理教 学现代化的水平 ; 同时:对衍射光栅作为各种光谱仪器的核心元件的制作和研究具

14、有一定的指导意义 。 结合前面工作的经验与总结,可以进一步开展以下几方面的工作。 1) 应用仿真手段分析光偏振现象的方法。光偏振是波动光学的主要内容之一,对 其进行仿真分析是完善光学实验仿真软件的必须工作。另外这方面工作的仿真有助于分 析光在晶体中的传播,对光波导的制作等问题进行实验指导。 2) 考虑到 MATLAB 在编程效率、可读性、可移植性和可扩充性上的优点,可以利 用 MATLAB 设计一功能强大、性能稳定的高质量程序界面,在该界面下,MATLAB 函 数可以不受其他条件(动态链接库)的限制,仿真软件也可实现更多的功能,如三维图像的 旋转,图像的动画播放等。 3) 由于 MATLAB

15、使用行解释方式执行代码,这样大大限制了代码执行速度。可考 虑利用 MATLAB 与其他高几语言的接口程序,把 MATLAB 的强大功能融入各种应用程 序中,从而大大提高程序的执行速度。 6 参考文献 1 谢敬辉,赵达尊,阎吉祥物理光学教程M北京:北京理工大学出版社,2005 2 Max Born,Emil WolfPrinciples of Optics(7th edition)MCombridge University Press,1999 武汉理工大学能力拓展训练报告书 10 3 钟锡华现代光学基础M北京:北京大学出版社,2008 4 母国光,战元令光学M北京:人民教育出版社,2008 5 叶玉堂,饶建珍,肖峻光学教程M北京:清华大学出版社,2005 6 曲伟娟基于 Matlab 的光学实验仿真J西安:西北工业大学学报,2004 7 符运良MATLAB 在光学教学中的应用J海口:华南热带农业大学学报,2004 7 附录程序 gui_Singleton = 1; gui_State = struct(gui_Name, mfilename, . gui_Singleton, gui_Singleton, . gui_OpeningFcn, untitled_OpeningFcn, . gui_OutputFcn,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号