




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MATLAB语言课程论文 MATLAB在光学中的应用姓 名:xxx 学 号:xxx 专 业:xxx 班 级:xxx指导老师:xxx 学 院:xxx完成日期:2013年12月8号MATLAB在光学中的应用(xxx xxx xxx)摘要大学物理力学中涉及许多复杂的数值计算问题,利用MATLAB图形用户界面的设计与开发功能,结合真实的光谱图,制作单缝衍射、光栅衍射。实验所得出的图形细致逼真,使整个实验过程变得直观形象,我们能更好的理解以及加深印象。关键词MATLAB光学应用;单缝衍射;光栅衍射;夫琅和费衍射;一、 问题的提出物理光学是高校物理学专业的必修课,其中,光的衍射既是该门课程的重点内容,也是
2、人们研究的热点。然而由于光学衍射部分公式繁多,规律抽象,学生对相应的光学图像和物理过程的理解有一定的困难,大大影响了教学效果。当然,在实际中可以通过加强实验教学来改善教学效果,但是光学实验对仪器设备和人员掌握的技术水平要求都较高,同时实验中物理现象容易受外界因素的影响,这给光学教学带来了较大的困难数值计算在科学研究与工程应用中具有非常广泛的应用。许多数值计算问题,用其他程序设计语言编程求解非常麻烦,并且需要具备专门的数学知识及一定的程序设计技能,而用MATLAB编程,往往只要少数几个语句即可完成求解任务,具有编程效率高、使用方便等特点。可以用于数据处理、多项式计算、数值微积分、数值方程及常微分
3、方程数值等。二、光学衍射1、单缝衍射衍射问题是光学中最困难的课题之一,严格的衍射理论是比较复杂的,不过大多数实际问题都可以用近似方法来处理对于单缝衍射,相关书籍中,都给出了远场条件下夫琅和费衍射光强分布的数学描述,而要模拟夫琅和费衍射的形成条件,则必须从更一般情况来分析问题。如图1(a)所示,将宽度为a的缝光源视作n个等间的点光源组成,接收屏上某点p的光强即为这n个点光源相干叠加的结果。设各点光源在p点光强相同,相位不同,则根据惠更斯-菲涅耳原理,屏上p点的归一化光强可表示为:式中Li为第i个点光源到p点的光程,有Li=(yp-ai)2+z2)1/2,z为缝到接收屏的距离。分析:用传统计算方法
4、解决时我们需要列出传统方程,我们明显可以感觉到,这样的计算不仅繁琐费时,而且没有图示很难给以直观的感受,现在我们用MATLAB语言来对此例题做以下解析:(1)MATLAB程序如下:Length=6328e-7a=015 %取=6328,a=0.5mmz=input(z=?)%从键盘输入单缝到接收屏的距离range=4.0 Np=800 %设置接收屏的范围及点数Ns=500ys=linspace(-a/2,a/2,Ns)%分割单缝为Ns个点光源fori=1:Np%计算各点光强,存入矩阵I L=sqrt(yp(i)-ys).2+z2) I(i,:)=(sum(cos(2*pi*(L-z)./Len
5、gth).2+sum(sin(2*pi*(L-z)./Length).2)/Ns2end yp=linspace(-range,range,Np)xp=yp/2%确定接收点,坐标存入矩阵xp、yp A=I*255colormap(pink) %指定调色板subplot(1,2,1)image(xp,yp,A )%显示衍射图样subplot(1,2,2)plot(I,y) %绘光强分布曲线运行结果如下图所示。从键盘输入不同的屏距z立即可以看到相应的衍射图样及光强分布曲线。上图给出了=6328、a=015mm,z分别为200mm、500mm和1000mm时的模拟结果。从中可以清楚的看出随着屏距z的
6、增大或者z不变而缝宽a减小,衍射图样由菲涅耳衍射向夫琅和费衍转化的过程,特别是通过人机交互任意改变各参量值,从而加深了对夫琅和费衍射的远场条件的理解。(2)单缝衍射模拟clc;clear; a=-2*pi:0.0001*pi:2*pi; p1=(1-sinc(a).2; %方便下面着色p2=sinc(a).2;figure;plot(a,p2); xlabel(kasin);ylabel(光强I/I0); title(单缝衍射强度分布);lgray=zeros(256,3);fori=0:255 lgray(i+1,:)=(255-i)/255;end figure; imagesc(p1)
7、title(单缝衍射模拟图);colormap(lgray) 拟合曲线如下图。附加:多缝衍射多缝衍射MATLAB仿真代码:clearlam=500e-9;N=2;a=2e-4;z=5;d=5*a;xm=2*lam*z/a;y0=xm;n=1001;x0=linspace(-xm,xm,n); fori=1:n%计算各点光强,存入矩阵I sinphi=x0(i)/z; alpha=pi*a*sinphi/lam;beta=pi*d*sinphi/lam; B(i,:)=(sin(alpha)./alpha).2.*(sin(N*beta)./sin(beta).2;B1=B/max(B);end
8、NC=255; Br=(B/max(B)*NC;subplot(1,2,1),image(y0,x0,Br); colormap(gray(NC); %显示衍射图样subplot(1,2,2),plot(B1,x0); %绘光强分布曲线2、光栅衍射测定光栅常数和光波波长,当一束单色光垂直照射在光栅上时,各狭缝的光线因衍射而向各方向传播,经透镜会聚相互产生干涉,并在透镜的焦平面上形成一系列明暗条纹。如右图所示,有一束平行光与光栅的法线成i角,入射到光栅上产生衍射;出射光夹角为j。从B点引两条垂线到入射光和出射光。如果在F处产生了一个明条纹,其光程差CA+AD必等于波长l的整数倍,即 d(sinj
9、sini)=ml (1)m为衍射光谱的级次,0,1,2,3由这个方程,知道了d I j l中的三个量,可以推出另外一个。若光线为正入射,i=0,则上式变为dsinjm= ml (2) 其中mj为第m级谱线的衍射角。由公式可知角度的计算很麻烦,我们用MATLAB语言来对此例题做以下解析:设定光栅常数d,缝宽b,光栅到屏幕的距离f,光栅的缝数N,入射光波长。设定图像显示范围和在这范围内的点数。图5所示(d=0.042mm,b=0.014mm,f=1000nm,=500nm,)图5(a)为当N=4时的仿真结果,第3级缺级,且在两个最大值之间有两个次最大(N-2),有3个最小值(N-1)。图5(b)为
10、当N=6时的仿真结果,第3级缺级,在两个最大值之间有 4个次最大,有4个最小值。MATLAB程序如下:Lambda=1000;d=0.042 ;b=0.014 ;f=1000 ;N=4;yMax=Lambda*5*f/d;xs= yMax;Ny=201;ys=linspacc(-yMax, yMax,Ny);for i=1:Ny %计算各点光强,存入矩阵IL1=(pi*b*ys(i)/( Lambda*sqrt(ys(i).2+f.2);L2=(pi*d*ys(i)/( Lambda*sqrt(ys(i).2+f.2);l(i,:)=(sin(L1)/L1).2*(sin(N*L2)/sin(
11、L2).2;endgef;figure(gef);NCLevels=230; lr=(l/1.0)* NCLevels;subplot(1,2,2),image(ys,xs,lr); colormap(gray(NCLevels); %显示衍射图样subplot(1,2,2),plot(l(i,:),ys);%绘光强分布曲线三、结论在光学衍射教学中,光学理论复杂抽象,实验演示难度大通过将MATLAB与光学教学相结合,有利于我们对物理概念的理解,克服了苛刻的光学实验条件,可有效提高教学效果。MATLAB的计算、绘图和动画功能,MATLAB还有许多功能有待在实验中开发利,以进一步丰富我们学习和实验
12、的方法和手段,不断提高实验水平。在光学等普通MATLAB的应用中,MATLAB的应用可以有两种方式。一是以MATLAB为问题求解工具。引导我们运用MATLAB进行数据处理、系统仿真等工作。由于有了优秀的工具软件,就可以集中精力研究问题,选取最恰当的数学模型、方法,以更高的效率,得出更合理的结果,同时培养我们应用计算机解决科学问题的能力。二是以MATLAB为实验演示平台。本文实例中基于MATLAB的单缝衍射等光学现象模拟,运用于计算机作为演示实验配合光学理论,很好地解决了真实实验因环境限制而不能形象得理解这方面问题的难题。四、课程体会 对于我来说,这个软件的作用非常大,随着计算机技术的迅速发展,
13、现代化的教育模式走进了课堂,利用计算机对光学现象进行仿真也成为一种可能。MATLAB是一款集数值分析、符号运算、图形处理、系统仿真等功能于一体的科学与工程计算软件,它具有编程效率高、简单易学、人机交互好、可视化功能、拓展性强等优点,不仅能在我们日常学习中起很大的帮助,而且在一些抽象的问题上,能使其变得具体形象,让我们更容易得去了解学习。有一些东西比较抽象并且不容易去想象。利用MATLAB编程仿真光学现象只需改变程序中的参数,就可以生成不同实验条件下的光学图像,使实验效果更为形象逼真。在课堂教学中,能快速的验证实验理论,使学生更直观的理解理论知识,接受科学事实。MATLAB与C语言有一定的共同之
14、处,但是MATLAB相对于C语言不管是简易程度还是方便运用方面都要简单好多。而且许多数值计算问题,用其他程序设计语言编程求解非常麻烦,并且需要具备专门的数学知识及一定的程序设计技能,而用MATLAB编程,往往只要少数几个语句即可完成求解任务,具有编程效率高、使用方便等特点。MATLAB 7.0提供了好多功能,通过这种功能可以很简单的获得函数和命令的使用方法。最后我想说的是MATLAB是一个好工具,也只能是一个好工具。最初自己对编程序这方面谈不上喜欢,但是接触到MATLAB时,每次做实验都能看到自己的成果,渐渐的有了想去了解他的想法。它可以作为一个平台,承载知识和算法,感谢MATLAB带给我的新
15、思维,也许以后可能不会再用到但回想自己学习的过程从对被他的神秘所吸引到后来的喜欢再到学习其间也让自己体会到了一个完整的学习过程,也许这就是学习最终的结果得到的不一定是结果但方法肯定值得借鉴,回头只能看到自己的影子,我会继续努力的。参考文献1 刘卫国.MATLAB程序设计与应用(第二版)M.北京:高等教育出版社,2006.2 马文蔚.物理学(下册)(第五版)M,北京:高等教育出版社,2006.3杨应平,赵盾,胡昌奎,等.夫琅和费衍射实验仿真平台的构建J.武汉理工大学学报,2010,32(5):721-724.4陈湛旭.夫琅和费衍射现象的计算机模拟J.广东技术师范学院学报,2008,(3):53-55.5曲伟娟.基于Matlab的光学实验仿真J.西北工业
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年举办婚礼活动的策划方案
- 2025年1月幼儿园工作方案
- 汽车使用与维护 课件 项目三 进排气系统的维护
- 高三上学期《战胜拖延拒绝躺平》主题班会课件
- PHP程序设计项目化教程课件 项目5 文本内容过滤器-数据处理
- 2025年电动绕接器项目可行性研究报告
- 2025年甲基苯骈三氮唑项目可行性研究报告
- 2025年瓷盆去水器项目可行性研究报告
- 2025年玻璃纤维墙体网格布项目可行性研究报告
- 2025年环保节能型汽油添加剂项目可行性研究报告
- 【9数一模】2025年安徽省合肥市蜀山区九年级中考一模数学试卷(含答案)
- 2025年无锡市锡山环保能源集团招聘笔试参考题库含答案解析
- 2024年江西省高考化学试卷(真题+答案)
- 田径运动会各种记录表格
- 报价单(报价单模板)
- 远离手机班会课件
- 一页纸的劳动合同范本(5篇)
- 2019最新中小学校安全管理制度汇编
- 内审不符合项报告
- 铝合金门窗工程监理质量控制图册
- 吹灰器检修三措两案
评论
0/150
提交评论