《Matlab在大学物理教学中的应用(共19页).doc》由会员分享,可在线阅读,更多相关《Matlab在大学物理教学中的应用(共19页).doc(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上目 录111第一章3334456677991011135141516819引言1.Matlab简介 1984年,美国的MathWorks 公司推出了Matlab 仿真软件。它主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。Matlab将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,因此,很快成为应用学科计算机辅助分析、设计、仿真和教学不可缺少的软件。Matlab现在已经广泛应用到生物医学工程、信号分析、语音处理、图像识别、航天航海工程、统计分析、计算机技术、控制和数学等领域中。 2.波动光学的
2、发展历史 波动光学是在电磁波动理论基础上研究光波动现象的一门学科。17世纪,人们提出了光本性的两种学说:微粒说和波动说。光的微粒说由笛卡尔提出,得到牛顿的支持。微粒说认为光是由一份一份的微粒所组成的。19世纪初,英国科学家托马斯杨完成了著名的“杨氏干涉实验”,提出了“光的干涉原理”,动摇了光的微粒说的地位。法国科学家菲涅耳把惠更斯的子波假设和杨氏的干涉原理相结合,提出后人所谓的“惠更斯-菲涅耳原理”。该原理用波动理论圆满的解释了光的直线传播规律,定量的给出了圆孔等衍射图形的强度分布。1817年,托马斯杨明确证明,光波是一种横波,使一度被牛顿视为波动说障碍之一的偏振现象转化为波动说的一个佐证。至
3、此,波动说的优势已经很明显。虽然到19世纪中叶时,波动说已被普遍接受,但人们对光波动的认识存在着错误。无论是惠更斯,杨氏还是菲涅耳,都认为光波是一种机械波,伴随着某种实物的机械振动。19世纪后期,光的电磁波理论被英国科学家麦克斯韦提出。麦克斯韦在总结法拉第等人对电磁作用研究的基础上,加入了自己的假设,提出了后人所称的“麦克斯韦电磁方程组”。光的电磁理论是人们对于光的认识的又一次飞跃。光振动不再是某种媒质分子的机械振动,而是电磁场这个物理量的振动。麦克斯韦电磁方程组给出了惠更斯-菲涅耳原理的理论依据,除了极微弱的光波之外,它几乎可以解释光波的一切传播规律,以致波动光学可以以此为出发点,展开全部内
4、容的讨论。2 波动光学的研究对象主要分为光的干涉和光的衍射两大类。按照波动光学的观点,光的干涉是指两个或多个光波在同一空间的叠加时,若该空间的能量密度分布不同于各个分量波单独存在时的光能量密度之和,则称光波在该空间域发生了干涉,各分量波相互叠加且发生了干涉的空间域称为干涉场。当光在传播途径中遇到障碍物时,不再遵循直线传播规律,一部分光会“绕”过障碍物,射向阴影区域,使得障碍物的投影边缘模糊,甚至出现亮暗条纹,这种现象称之为衍射。2 波动光学实验内容比较抽象,如不借助实验,很难理解,为了克服光学实验对实验条件要求比较苛刻的缺点,可采用计算机仿真光学实验,特别是光学演示实验,配合理论课的进行,把光
5、学课程涉及的大多数现象展示在学生面前,以加深对光学内容的理解。光的波动性常常表现为干涉、衍射、偏振等现象。虽然关于这些现象的描述及其阐述有好多,但是未能配以精彩的直观形象图形。运用Matlab获得模拟图形,将定性的语言描述和抽象的数学表示变为生动直观的表现,可以进一步分析和描述有关波动光学的现象和规律等理论,促进科研的发展和提高教学水平。3第一章 波动光学基本原理1.光的干涉的基本理论1.1光波的叠加原理 当从光源A和光源B发出的两列光波在空间区域传播时,它们之间互不干扰,每列波如何传播,都按各自的规律独立进行,完全不受另一列波存在的影响。这就是波的独立传播原理。一列波在空间传播时,在空间的每
6、一点引起振动。当两列(或多列)波在同一个空间传播时,空间各点都参与每列波在该点引起的振动。如果波的独立传播定律成立,当两列(或多列)波同时存在时,在它们的交叠区域内每点的振动是各列波单独在该点产生的振动的合成,这就是波的叠加原理。一般情况下,当两列(或多列)光波在空间相遇时,总会发生光波的叠加现象;当参与叠加的各个分量波的传播方向,振动方向或时间频率关系不同时,叠加的结果也不一样。波的叠加原理并不意味着两列波叠加时强度一定相加,但可以由它导出强度的合成规律。两列光波和在空间某点P处相遇,如图1.1所示:图1.1 两列光波在空间的叠加假设两列光波方程为 按叠加原理,P点的光振动为 则P点的光强为
7、 (公式一)式中,和分别是两列光波单独在P点处的强度;为两列光束振动方向间夹角;为两列光束间的相位差。(公式一)表明,两列光波叠加时,在一般情况下,强度不能直接相加,相差有一项。与观察点P位置有关,可正可负。时,;时,。换言之,波的叠加引起了强度的重新分布。这种因波的叠加而引起的强度重新分布的现象,叫做波的干涉。波的干涉的必要条件:(1)频率相同;(2)振动方向平行;(3)有恒定的相位差。31.2双光束干涉原理 图1.2 所示的是双缝干涉装置,是分波阵面的双光束干涉。 图1.2双缝干涉原理图明、暗纹的位置由两束光的光程差决定: 2屏上条纹间距:,其干涉条纹的特点条纹形状为一组与狭缝平行、等间隔
8、的直线。屏上光强分布为: (公式二)1.3牛顿环形成原理 将一个球面曲率很大的平凸透镜A 的面紧贴在一块平板玻璃B 上,球面和平面相切于O 点,在它们之间形成一空气薄膜,从切点到边缘膜的厚度逐渐增加。在以切点为中心的圆周上,空气层的厚度相等,将它放在观察等厚干涉的实验装置中,让单色光正投射于其上,从反射光和透射光中都可以观察到以O 为中心的一系列明暗相间的同心圆环。 图1.3 牛顿环原理图在图1.3 中,设透镜的曲率半径为R,对应于某干涉环的空气层厚度为h,该环的半径为r。在光线正入射时,由,可得从空气层两表面反射的相干光线的光程差,式中前为正号,是因为相位突变发生空气膜的下表面,由DEC 可
9、得再化简得.由于2Rh ,上式可以继续化简为得到 。当时,由上式可得第K亮环的半径: (k=1,2,3,) (公式三)2当时可得第k 暗环的半径: (k=0,1,2,3,) (公式四)2当k=0 时,r=0,与环中心对应,即牛顿环中心为一暗点,它来源于空气层下表面反射光的相位跃变。21.4劈尖干涉原理取两块光学平面玻璃板,使其一端接触,另一端夹着细丝,则在两玻璃板之间形成一个空气劈尖,如图1.4所示。当用单色光垂直照射时和牛顿环一样,在劈尖薄膜上、下两表面反射的两束光发生干涉。产生的干涉条纹是一族与棱边相平行、间隔相等、且明暗相间的干涉条纹。 设入射是平行单色光的波长为,在劈尖厚度为e处产生干
10、涉的两束光线的光程差为,n为劈尖中煤质的折射率,为光线从劈尖下表面反射时产生的半波损失。图1.4 劈尖干涉当光程差满足半波长的奇数倍时 (公式五) 暗条纹2 (公式六) 明条纹22.光的衍射的基本理论2.1 单缝夫琅禾费衍射取坐标系O原点在狭缝中心,Z 轴沿系统的光轴,X 轴沿狭缝的宽方向。当狭缝的长度b 较宽度a 大得多的情况下,衍射图样基本上只沿与狭缝垂直的方向扩展。因此,计算接收屏上的夫琅和费衍射场时,只需考虑X 轴方向的光振动的复振幅分布,即将它们作为一维问题处理。将入射波前经缝露出部分分为许多平行于缝长方向的等宽窄条带ds,各带发出的衍射角为方向的次波经会聚于接收屏上的P点,因而像方
11、焦面上的一点是与一个衍射方向相对应的。在缝内距原点为X 的Q 处,取一宽为dx 的窄条带作为积分面元,即ds=bdx,它到P 点的光程为r。 图1.5 夫琅禾费单缝衍射若p点振幅为则平P点的光强度为 (公式七),式中表示屏中心初光强,表示狭缝边缘两点在p点所产生的振动相位差之半。该公式即为单狭缝的夫琅禾费衍射光强分布公式。52.2圆孔的夫琅禾费衍射将1.5图中的单狭缝换成圆孔,就可在接收屏上观察到圆孔的夫琅禾费衍射图样,它的中央是一个很亮的圆斑,外面分布着几圈很能淡的亮环。设圆孔的半径为R,与P 点对应的衍射角为,令 表示圆孔边缘与中心的次边缘在P 点所产生的振动的相位差,根据菲涅耳基尔霍夫衍
12、射积分公式可求得P 点的光强为 (公式八)式中为图样中心点的光强, 为一级贝塞耳函数。52.3 平面光栅衍射 有大量等宽度,等间距的平行狭缝组成的光学系统称为衍射光栅。单缝宽度a 和刻痕宽度b之和称为光栅常数d,d =a+b。光栅衍射条纹,理应是单缝衍射和缝间干涉的共同结果。 设光栅有N 条狭缝,透镜焦距为,理论分析可以得到,夫琅禾费衍射的光屏上任意一点P 的光强为: (公式九)4;式中,上式的前一部分与单缝衍射的强度相同,它来源于单缝衍射,是整个衍射图样的轮廓,称为单缝衍射因子。后一部分分数可改写如下:因为d sin=为相邻两缝对应点到达观察点的光程差,这个光程差所引起的相位差为,该分数部分
13、来源于缝间干涉,叫做缝间干涉因子,可写为 。可见,光栅衍射的光强是单缝衍射因子和缝间干涉因子的乘积,即是单缝衍射因子对干涉主最大起调制作用。对于一定的波长来说,根据可知各级谱线之间的距离由光栅常量d 决定,各级谱线的强度分布将随b 与d 的比值而改变。由不难决定各主最大值的振幅分布,把由光栅方程决定的 的值代入上式,得到j 级谱线的振幅,又因为单缝衍射最小值位置。由此可见,若为衍射最小值的级数,j 为主最大值的级数且jk , 则当时因而,故时,级数为j 的谱线消失,也就是缺级。4第二章 Matlab模拟仿真实例1实例1用matlab编写动画程序演示出两列波的合成: w1=20; %波1频率 w
14、2=21; %波2频率 k1=5; %波1波数 k2=4; %波2波数 t=0.1:0.2:1.3; %对时间进行等间隔取点 a =1; %波动振幅 x2 =0:0.001:20;k =0; m2= moviein(length(0.1:0.2:1.3); x =0:0.001:5; %对传播方向x轴进行等间隔取点 A2= a*cos(k2*x-w2*t(end); %A2波动函数 A1= a*cos(k1*x-w1*t(end); %A1波动函数 figure(1); subplot (2,1,1) ,plot(x,A1,x,A2) set(gcf,color,0 1 1); set(gca
15、,YTick,-1:0.5:1); set(gca,XTick,0:1:5); xlabel(变量 X) ylabel(振幅变化 A) title(两列单色平面波) legend(平面波1,平面波2); for t=0.1:0.2:1.3 k = k+1; A =2*a*cos(k1-k2)/2*x2-(w1-w2)/2*t); v = a*cos(k1*x2 -w1*t)+a*cos(k2*x2-w2*t); subplot (2,1,2) ,plot(x2,v,k-,x2,A,x2,-A); axis(0 20 -2 2); set(gcf,color,0 1 0) set(gca,YTi
16、ck,-2:1:2) set(gca,XTick,0:5:20) xlabel(变量 X) ylabel(振幅变化 A) title(合成波图像) legend(wave,amp1,amp2) m2(:,k) = getframe; end movie(m2); 图2.1 动画演示两列单色平面波的合成2.实例2 杨氏双缝干涉matlab模拟仿真,设=550nm,d=3mm,=1m。length=550e-6;d=2e-3;r0=1;D=r0;xmax= 5*length*D/d; ys= xmax ;nx= 100;xs= linspace( - xmax , xmax, nx ) ;for
17、i=1: nxr12= xs( i) * d/ D;n1= 10; dl= linspace( - 0.1, 0.1, n1) ;length1= length* ( 1 + dl) ; p1 = 2 * pi *r12./length1;I( i,: ) = sum( 4* cos( p1/ 2) .2) / n1;endb= ( I/ 4.0) * 255;subplot ( 1, 2, 1) ; image( ys, xs, b) ;colormap( gray( 255) ) ;title(杨氏双缝干涉分布);subplot ( 1, 2, 2) , plot ( I( : ) , x
18、s) ;模拟结果如图2 和图3 所示。 图2.2 杨氏双缝干涉图样3.实例3 牛顿环演示的MATLAB 程序:clear R=1;N=400;lamda=6328e-6;rr=0.1; x,y=meshgrid(linspace(-rr,rr,N); r=abs(x+i*y); d=r.2/R/lamda*pi*2; z=cos(d);z=abs(z); Z(:,:,1)=z/sqrt(2);Z(:,:,2)=z/sqrt(2); Z(:,:,3)=zeros(N);close all; H=imshow(Z); t=0;k=1; set(gcf,doublebuffer,on); title
19、(牛顿环动画演示); xlabel(按“空格键”停止程序!, fontsize,12,color,r); set(gca,position,0. 0. 0. 0.); set(gcf,position,254 115 427 373) while k; s=get(gcf,currentkey); if strcmp(s,space); clc;k=0; end t=t+0.01; pause(0.2); d=d+t; z=cos(d);z=abs(z); Z(:,:,1)=z/sqrt(2); Z(:,:,2)=z/sqrt(2); set(H,CData,Z); end figure(gc
20、f); 3 图2.3牛顿环干涉图样4.实例4 劈尖干涉模拟,设波长为500nm,楔形角大小为0.00001rad,matlab程序如下:a=500;b=1;c=200;d=0.02;Lambda=a*(1e-9);theta=b*(1e-6);x=0.01;Ni=c;ds=linspace(0,d,Ni);for k=1:Ni y(k)=ds(k)/sin(theta); Delta=2*ds(k)+Lambda/2; Phi=2*pi*Delta/Lambda; B(k,:)=4*cos(Phi/2).2;endfigure(gcf);NCLevels=250;Br=(B/4.0)*NCLe
21、vels;subplot(1,2,1);cla;image(x,y,Br);colormap(gray(NCLevels);title(劈尖干涉强度分布);subplot(1,2,2);plot(B(:),y);ylim(0,2*(104);colormap(gray(NCLevels);title(强度曲线分布);3运行上述程序,得到如图2-6。 图2.4 劈尖干涉图样5.实例5 单缝衍射Matlab模拟:clcclear alla=-2*pi:0.0001*pi:2*pi;P=(1-sinc(a).2; %当要求P 的曲线分布图时P=sinc(a).2plot(a,P)lgray=zero
22、s(256,3);for i=0:255lgray(i+1,:)=(255-i)/255;endimagesc(P)colormap(lgray)title(单缝夫琅禾费衍射分布);6图2.5 单缝衍射图样6.实例6 圆孔夫琅和费衍射matlab模拟:clear;N=1; tz=linspace(0,0.01*pi,1000*pi);Pq=;K=6; % 控制参数x,y=meshgrid(linspace(0,N+1,800);z=x+i*y;U=0;for m=1:N; for n=1:N; zk=abs(z-m+n*i)*K; U=U+0.1*besselj(4,zk)./zk; r= 1
23、-U; A=1- abs(U).2; endendIp=imshow(A,)title(圆孔夫琅禾费衍射分布);6 图2.6 圆孔夫琅禾费衍射图样7.实例7 光栅衍射运用matlab模拟:clcclear alld=-4*pi:0.001*pi:4*pi;b=d./15;P=1-(sinc(b).*sin(4*d)./sin(d).2;%当要求P 的曲线分布图时P=(sinc(b).*sin(4*d)./sin(d).2;4 是N 值可调plot(d,P);lgray=zeros(100,3);for i=0:99 lgray(i+1,:)=(99-i)/99;endimagesc(P)colormap(lgray)title(光栅衍射分布);3p 图2.7 光栅衍射图样结束语 大学物理内容理论性知识比较多,学习的方式需要多样化。我们可以利用Matlab简单易学、编程效率高、图形处理功能强大的特点, 将其作为光学实验演示平台, 这将能够很好地解决了真实的光学实验因环境限制而不能进入课堂的难题。通过Matlab不仅可以提高对波动光学理论的学习效率, 还可以增强对光学规律的理解能力。Matlab将成为大学物理教学的一种有力工具。专心-专注-专业