圆孔衍射实验仿真设计
圆孔衍射图样
二者常常同时存在。 例如,不是极细缝情况下的双缝干涉,就应该 既考虑双缝的干涉,又考虑每个缝的衍射。
2024/10/13
26
光学仪器的分辨本领
二、圆孔夫琅禾费衍射
S
D
圆孔衍射图样:由一个中央亮斑和一组明暗相间的同心圆环组成;
2024/10/13
k 1 k 3.3
d
最高3级; 共7条谱线
43
P398 例题10-2 用波长=546.1nm的绿光垂直照射每厘米有3000条刻 线的光栅,该光栅的刻痕宽和透光缝宽相等,问:
能看到几条光谱线?各谱线衍射角多大?
2024/10/13
44
作业: P401,选择题:1,2,8,9 P404, 一. 1
R 1 D
1.22
人眼瞳孔:D =2~6mm
=68~23
望远镜: DM = 6m
= 0.023
例题:汽车二前灯相距1m,设 解:人眼的最小可分辨角
=500nm 人眼瞳孔直径为 5mm。
问:1)人眼的最小分辨角?
2)对迎面而来的汽车,离多远能 分辨出两盏亮灯?
0
1.22
D
L0 1m
L 8200m
1m
L?
2024/10/13
32
望远镜: 不可选择,但 D R
▲ 世界上最大的光学望远镜: D=8m
建在了夏威夷山顶。 ▲世界上最大的射电望远镜:
D = 305 m 建在了波多黎各岛的
Arecibo,能探测射到整个
地球表面仅1012W的功率,
也可探测引力波。
2024/10/13
33
实验报告之仿真(光的干涉与衍射)
大学物理创新性试验实验项目:单缝﹑双缝﹑多缝衍射现象仿真实验专业班级:材料成型及控制工程0903班姓名:曹惠敏学号:090201097目录1光的衍射2衍射分类3实验现象4仿真模拟5实验总结光的衍射光在传播路径中,遇到不透明或透明的障碍物,绕过障碍物,产生偏离直线传播的现象称为光的衍射。
光的衍射现象是光的波动性的重要表现之一.波动在传播过程中,只要其波面受到某种限制,如振幅或相位的突变等,就必然伴随着衍射的发生. 然而,只有当这种限制的空间几何线度与波长大小可以比拟时,其衍射现象才能显著地表现出来.所有光学系统,特别是成像光学系统,一般都将光波限制在一个特定的空间域内,这使得光波的传播过程实际上就是一种衍射过程.因此,研究各种形状的衍射屏在不同实验条件下的衍射特性,对于深刻理解衍射的实质,研究光波在不同光学系统中的传播规律分析复杂图像的空间频谱分布以及改进光学滤波器设计等具有非常重要的意义.随着计算机技术的飞速发展, 计算机仿真已深入各种领域。
光的干涉与衍射既是光学的主要内容 , 也是人们研究与仿真的热点。
由于光波波长较短,与此相应的复杂形状衍射屏的制作较困难,并且实验过程中对光学系统及环境条件的要求较高.因而在实际的实验操作和观察上存在诸多不便. 计算机仿真以其良好的可控性、无破坏、易观察及低成本等优点,为数字化模拟现代光学实验提供了一种极好的手段. 本次实验利用MATLAB软件实现对任意形状衍射屏的夫琅禾费衍射实验的计算机仿真。
衍射分类⒈菲涅尔衍射菲涅尔衍射:入射光与衍射光不都是平行光的衍射。
惠更斯提出,媒质上波阵面上的各点,都可以看成是发射子波的波源,其后任意时刻这些子波的包迹,就是该时刻新的波阵面。
菲涅尔充实了惠更斯原理,他提出波前上每个面元都可视为子波的波源,在空间某点P的振动是所有这些子波在该点产生的相干振动的叠加,称为惠更斯-菲涅尔原理。
惠更斯-菲涅尔原理能定性地描述衍射现象中光的传播问题,成为我们解释光的各类衍射现象的理论依据。
夫琅禾费圆孔衍射
基于MATLAB的课题设计:
意义
光的衍射现象是光的波动性的一种表现, 通过对光的衍射现象的研究,可以深入具体 地了解光的波动性。本课题研究夫琅禾费圆 孔衍射,对于深刻理解衍射的实质,研究光 波在不同光学系统的传播规律,分析复杂图 像的空间频谱分布以及改进光学滤波器设计 等具有非常重要的意义。课题利用MATLAB 的数值计算和绘图能力,根据衍射场的理论 公式,计算得出光强分布并绘制光强分布曲 线及衍射图样,便于对衍射图样再现。
开题报告 根据开题报告情况继续查阅文献资料 写出论文第一稿
指导老师批阅论文第一稿
修改论文,并定稿
指导教师评定成绩,评阅老师评阅论文,写出评阅意见。 答辩
参考文献
[ 1] 赵凯华, 钟锡华.光学(上册)[M].北京:北京大学出版社,1984:210-213. [ 2] 姚启钧.光学教程[M].北京:高等教育出版社,2002:82-132. [ 3] E.赫克特,A.赞斯.光学(下册)[M].北京:人民教育出版社,1980:682-807. [ 4] M.波恩,E.沃尔夫.光学原理(第七版,上册)[M].北京:电子工业出版社,2005:342-400. [ 5] 马莉.MATLAB语言实用教程[M].北京:清华大学出版社,2010. [ 6] E.库宁著,秦克诚译.计算物理学[M].北京:高等教育出版社,1993:1-64. [ 7] 裴鹿成,张孝泽. 蒙特卡罗方法及其在粒子输运问题中的应用[M].北京:科学出版社,1980: 1-18. [ 8] 飞思科技产品研发中心.MATLAB7基础与提高[M].北京:电子工业出版社,2005. [ 9] 薛定宇.控制系统计算机辅助设计——MATLAB语言及其应用.北京:清华大学出版社,1996. [10] Dongarra J J, Bunch J R, Moler C B, Stewart G W. LINPACK user’s guide, Philadelphia: Society of Industrial and Applied Mathematics(SLAM), 1979. [11] Phyccis J.Fleming. PHYSICS. Addiso-wesley Publishing Company, 1978. [12] Ogata K.Solving control engineering problems with MATLAB, 1944. [13]Armstrong E S.ORACLSa design system for linear multivariable control. New York: Marcel Dekker Inc. , 1980.
2.7圆孔衍射(Diffraction by Circular Aperture)
衍射限制了透镜的分辨能力的示意图。
对两个象斑,怎么算可分辨,怎么算不可分辨?有没有定量 的标准? 3、瑞利判据 对于两个相等光强的非相干物点, 如果其一个象斑的 中心恰好落在另一象斑的边缘(第一暗纹处), 则此两物点被认为 是刚刚可以分辨。
刚可分辨 不可分辨 非相干叠加
1.0
0.8
S1 D * * S2 爱里斑的半角宽为1
直径305m,能探测射到整 个地球表面仅10-12W的功 率,也可探测引力波。
显微镜:
D R 1.22
D不会很大,可
(紫光显微镜) (电子显微镜)
1
R
电子的波长很小:0.1 Å-1Å, ∴分辨本领 R 很大。
用电子显微镜 观察一种小蜘 蛛的头部
用电子显微镜观察红 血球 (假彩色)
= 1 0 I
1.22 1 sin 1 D
假设按瑞利判据的最小分辨角为
它就是两个衍射斑的角距离, 也就是等于爱里斑的半角宽:
1 1.22
D
定义:透镜的分辨本领
D R 1.22
1
D R
D R 1.22
Ip I0
1
I 0 1
中央极大 第一极小 第一次极大 第二极小 第二次极大 第三极小
0
0.610 0.819 1.116 1.333 1.619 1.847
R
0
0.0175
R
R
0
0.0042
sin 20 1.333 sin 3 1.619 sin 30 1.847
物点
象斑
物(物点集合) 象(象斑集合) 透镜成象清楚不清楚,要考虑物镜衍射的因素。 注:目镜的放大倍数本质上不能解决清晰不清晰 的问题
利用MATLAB语言进行光学衍射现象的仿真
利用MATLAB语言进行光学衍射现象的仿真储林华(安庆师范学院物理与电气工程学院安徽安庆246011)指导教师:张杰摘要:光的衍射是光的波动性的一种重要表现,因此对光的衍射现象的研究,不仅具有重要的理论意义,而且在光学仪器研制和成像分析等诸多实际应用方面均有重要价值,但是其衍射光强的计算非常复杂,对实验条件的要求非常高,通常情况下很难得到满意的效果,严重影响了光学的教学。
本文从衍射的相关理论知识出发,首先介绍了惠更斯--菲涅耳原理及其数学表示形式,然后重点讨论了单色光经各种对称光学衍射元件(单缝,双缝,光栅,圆孔)的夫琅和费衍射情况,并分别给出了它们在焦平面上的衍射光强计算公式,最后利用科学计算软件MA TLAB对光的衍射现象进行了仿真,所得到的图样细致逼真,使整个物理过程变得直观形象,且与实验所得到的衍射图样进行了比较,两者吻合得很好,从而为光学的理论分析和实验教学提供了一种新的途径。
关键词:光的衍射,光栅衍射,圆孔衍射,Matlab,计算机仿真0 引言光的衍射现象是光具有波动性的重要特征,因此对衍射现象的研究无论在理论上还是在实践中都有很重要的意义。
对光的衍射现象的研究,始于17世纪,当时著名的荷兰科学家惠更斯提出了光是一种波的假说,并根据波动理论提出了光的传播理论——即惠更斯原理[1],根据这一原理,他解释了光的反射定律和折射定律,给出了折射率的意义,光在两种介质中的速度比。
到了19世纪,法国年轻的科学家菲涅耳,根据叠加原理把惠更斯原理进一步具体化,给出了光在传播过程中光强学计算公式,这就是著名的惠更斯-菲涅耳原理[2]。
但由于在实际应用过程中,障碍物形状的不规则性,导致光强的计算公式几乎无解析解,只能进行一些数值计算。
针对衍射计算中出现的困难,近代的研究人员想到运用科学的计算软件MA TLAB,利用其较强的绘图和图象功能,编写计算程序,使得多种衍射元件(单缝,双缝,光栅,矩孔,圆孔)下的衍射现象得以在计算机中形象地被模拟仿真。
圆孔矩孔的菲涅尔衍射模拟(matlab实现)-工程光学
工程光学综合练习-----圆孔、矩孔的菲涅尔衍射模拟圆孔和矩孔的菲涅尔衍射模拟一、原理由惠更斯-菲涅尔原理可知接收屏上的P点的复振幅可以表示为其中为衍射屏上的复振幅分布,为倾斜因子。
根据基尔霍夫对此公式的完善,有设衍射屏上点的坐标为(x1, y1),接收屏上点的坐标为(x, y),衍射屏与接收屏间距离为z1,当满足菲涅尔近似条件时,即此时可得到菲涅尔衍射的计算公式把上式指数项中的二次项展开,并改写成傅里叶变换的形式,可以写成上式为菲涅尔衍射的傅里叶变换表达式,它表明除了积分号前面的一个与x1、y1无关的振幅和相位因子外,菲涅尔衍射的复振幅分布是孔径平面的复振幅分布和一个二次相位因子乘积的傅里叶变换。
相对于夫琅和费衍射而言,菲涅尔衍射的观察屏距衍射屏不太远。
在菲涅尔衍射中,输入变量和输出变量分别为衍射孔径平面的光场分布和观察平面的光场以及光强分布,考虑到这三个量都是二维分布,而且Matlab主要应用于矩阵数值运算,所以本程序选择用二维矩阵来存储衍射孔径平面和观察平面的场分布,并分别以矩阵的列数和行数来对应平面的直角坐标值(x, y)以及(x1, y1)。
二、圆孔菲涅尔衍射用MATLAB分别构造表示衍射屏和接收屏的二维矩阵。
注意使两矩阵阶次相同,考虑到运算量的要求,采样点数不能过多,所以每个屏的x和y方向各取200到300点进行运算。
根据式(4),选取合适的衍射屏和接收屏尺寸和相距的距离,模拟结果如下:取典型的He-Ne激光器波长λ=632.8nm,固定衍射屏和接收屏尺寸和相距的距离,分别取不同的圆孔半径,得到以下三组衍射图样,其圆孔半径分别为12mm,20mm,50mm图1(r=12mm)图2(r=20mm)图3(r=50mm) 三、矩孔的菲涅尔衍射步骤与上述相同,仅需改变与衍射屏形状对应的矩阵。
这里选择矩孔的长宽相等,分别为15mm,20mm,30mm,其衍射图样及强度分布如图4、5、6图4(a=b=15mm)图5(a=b=20mm)图 6(a=b=30mm)四、MATLAB 程序%所有长度单位为毫米lamda=632.8e-6; k=2*pi/lamda;z=1000000;%先确定衍射屏N=300; %圆屏采样点数a=15;b=15;[m,n]=meshgrid(linspace(-N/2,N/2-1,N));I=rect(m/(2*a)).*rect(n/(2*b));q=exp(j*k*(m.^2+n.^2)/2/z);subplot(2,2,1); %圆孔图像画在2行2列的第一个位置 imagesc(I) %画衍射屏的形状colormap([0 0 0; 1 1 1]) %颜色以黑白区分axis imagetitle('衍射屏形状')L=300;M=300; %取相同点数用于矩阵运算若为圆孔,方框内替换为以下程序 r=12;a=1;b=1; I=zeros(N,N); [m,n]=meshgrid(linspace(-N/2,N/2-1,N)); D=((m-a).^2+(n-b).^2).^(1/2); i=find(D<=r); I(i)=1; %孔半径范围内透射系数为1[x,y]=meshgrid(linspace(-L/2,L/2,M));h=exp(j*k*z)*exp((j*k*(x.^2+y.^2))/(2*z))/(j*lamda*z);%接收屏H =fftshift(fft2(h));B=fftshift(fft2(I)); %圆孔频谱G=H.*B; %公式中为卷积,空间域中相卷相当于频域中相乘U= fftshift(ifft2(G)); %求逆变换,得到复振幅分布矩阵Br=(U/max(U)); %归一化subplot(2,2,2);imshow(abs(U));axis image;colormap(hot)% figure,imshow(C);title('衍射后的图样');subplot(2,2,3);mesh(x,y,abs(U)); %画三维图形subplot(2,2,4);plot(abs(Br))。
利用MatlabGUI模拟圆孔衍射
总第272期2012年第6期计算机与数字工程Computer &Digital EngineeringVol.40No.6151利用Matlab GUI模拟圆孔衍射*李芳菊 王菊霞(渭南师范学院物理与电气工程学院 渭南 714000)摘 要 在惠更斯-菲涅尔原理的基础上,建立了衍射仿真实验的数学模型,分析了圆孔的夫琅禾费衍射图样及其强度分布,并实现了对圆孔衍射的仿真。
关键词 Matlab GUI;夫琅禾费衍射;圆孔衍射中图分类号 O436.1Simulation of Aperture Diffraction Based on MATLAB GUILI Fangju WANG Juxia(School of Physics and Electrical Engineering,Weinan Teachers University,Weinan 714000)Abstract Based on the basic theory of the Fraunhofer diffraction,the mathematical model of diffraction experiment simulation was es-tablished,and the aperture diffraction of Fraunhofer diffraction were analyzed.Finally,the simulation of aperture diffraction was successfullycompleted.Key Words MATLAB GUI,Fraunhofer diffraction,aperture diffractionClass Number O436.11 引言Matlab语言是由墨西哥大学计算机系任主任的CleveMoler教授开发的一种专门作矩阵运算的数学软件[1~2]。
圆孔矩孔的菲涅尔衍射模拟(matlab实现)-工程光学
圆孔矩孔的菲涅尔衍射模拟(m a t l a b实现)-工程光学-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII工程光学综合练习-----圆孔、矩孔的菲涅尔衍射模拟圆孔和矩孔的菲涅尔衍射模拟一、原理由惠更斯-菲涅尔原理可知接收屏上的P点的复振幅可以表示为其中为衍射屏上的复振幅分布,为倾斜因子。
根据基尔霍夫对此公式的完善,有设衍射屏上点的坐标为(x1, y1),接收屏上点的坐标为(x, y),衍射屏与接收屏间距离为z1,当满足菲涅尔近似条件时,即此时可得到菲涅尔衍射的计算公式把上式指数项中的二次项展开,并改写成傅里叶变换的形式,可以写成上式为菲涅尔衍射的傅里叶变换表达式,它表明除了积分号前面的一个与x1、y1无关的振幅和相位因子外,菲涅尔衍射的复振幅分布是孔径平面的复振幅分布和一个二次相位因子乘积的傅里叶变换。
相对于夫琅和费衍射而言,菲涅尔衍射的观察屏距衍射屏不太远。
在菲涅尔衍射中,输入变量和输出变量分别为衍射孔径平面的光场分布和观察平面的光场以及光强分布,考虑到这三个量都是二维分布,而且Matlab主要应用于矩阵数值运算,所以本程序选择用二维矩阵来存储衍射孔径平面和观察平面的场分布,并分别以矩阵的列数和行数来对应平面的直角坐标值(x, y)以及(x1, y1)。
二、圆孔菲涅尔衍射用MATLAB分别构造表示衍射屏和接收屏的二维矩阵。
注意使两矩阵阶次相同,考虑到运算量的要求,采样点数不能过多,所以每个屏的x和y方向各取200到300点进行运算。
根据式(4),选取合适的衍射屏和接收屏尺寸和相距的距离,模拟结果如下:取典型的He-Ne激光器波长λ=,固定衍射屏和接收屏尺寸和相距的距离,分别取不同的圆孔半径,得到以下三组衍射图样,其圆孔半径分别为12mm,20mm,50mm图 1(r=12mm)图 2(r=20mm)图 3(r=50mm)三、矩孔的菲涅尔衍射步骤与上述相同,仅需改变与衍射屏形状对应的矩阵。
夫琅禾费圆孔衍射-精选
上式中D是圆孔的直径; 若上透图镜可L知2的,焦为距:为f,则艾里斑的线半径由
l f.tg1
由于1一般很小,故 tg1sin1。1 则:
l 1.22 f
D
数据处理
用测微目镜测出艾里斑的直径e,由已知衍射小孔 直径d=1mm,焦距f=70mm,可验证:
e 1.22 f
夫琅禾费圆孔衍射-精选源自实验目的观察夫郎和费圆孔衍射图样
实验步骤
把单缝衍射装置中的单缝以一小孔代替,应用 氦氖激光器,可以在透镜的焦平面上看到圆孔 衍射图样,衍射图样是一组同心的明暗相间的 圆环,可以证明以第一暗环为范围的中央亮斑 的光强占整个入射光束光强的84%,这个中央 光斑称为艾里斑。经计算可知,艾里斑的半角 宽度为:
a 公式的正确性(其中为孔的半径),本实验要求实 验环境很暗。
思考题
菲涅尔圆孔衍射图样的中心点可能是亮的,也可 能是暗的,而夫琅和费圆孔衍射的中心总是亮的。 这是为什么?
文档名
THE END!THANK YOU !
任意孔型菲涅尔衍射matlab仿真
菲涅尔衍射Matlab仿真——《高等物理光学》实验报告学院:物理学院姓名:***学号:***************目录1.菲涅尔衍射衍射原理 (3)2.实验想法及步骤 (3)2.1实验思路 (3)2.2实验步骤 (4)3.程序源代码: (4)4.运行结果展示 (5)5.结论 (7)1. 菲涅尔衍射衍射原理假设一个有限孔径,设孔径屏的直角坐标系为(x0,y0),并且观察平面与孔屏平行,两个平面间的间距为z ,观察平面的坐标系为(x,y ),这时,观察平面上的场可以表示为()()()()0000000,,,,0exp{j2}x y x y U x y z df df dx dy U x y f x x f y y π∞-∞∑=⎡⎤⋅-+-⎣⎦⎰⎰(1)根据近轴近似条件()222112x y f f λ≈-+ (2)同时利用傅里叶变换关系先对,x y f f 进行积分,得到如下的菲涅尔公式()()()()()220000000exp jkz ,,,exp{j }U x y z dx dy U x y x x y y j z z πλλ∑⎡⎤=⋅-+-⎣⎦⎰(3) 令()()()()22exp jkz ,exp{j }h x y x y j z z πλλ⎡⎤=+⎣⎦则式(3)可以写为()()()()()0000000,,,,y ,,y U x y z U x y h x x y dx dy U x y h x ∑=--=*⎰ (4)对(4)做傅里叶变换可以得到()()()0,,,,,x y x y x y A f f z A f f H f f z = (5)式中:()(){}00,,x y A f f FFT U x y =对于单位振幅入射平面波()(){}00,,x y A f f FFT t x y =()(){},,x y H f f FFT h x y =2.实验想法及步骤 2.1实验思路根据以上原理,传递函数(),x y H f f 已知,只需要求得透射孔径的透过率函数()0,t x y ,然后对透过率函数进行傅里叶变换得,并与传递函数相乘得到(),,x y A f f z ,最后做一个逆傅里叶变换得到()(),,=IFFT{,,}x y U x y z A f f z 。
圆孔和矩形孔夫琅禾费衍射的MATLAB仿真对比研究
!概述
状&孔径大小的 关 系" 因 此 需 要 借 助 计 算 机 来 对 衍 射 图 样
光绕过障碍物偏离直线继续向前传播而进入几何阴 进行仿真模拟"达到对衍射现象的直接观察和理解的目
@?
电子信息
科技风 ABAA 年 C 月
4 4 8 正方形孔衍射图样44 ? 正方形孔光强三维图像 图 0 边长 9 UL!!EUL66的正方形孔夫琅禾费衍射图样
(&( 圆孔与矩孔夫琅禾费衍射的 M89@8? 仿真对比 圆孔与矩形( 正方形) 孔对比"当 )CU9 UE时"即 圆 孔大小为方形孔的内接圆的衍射图样如表 $ 所示"比较 表 $ 中 5组和 O组"圆孔的衍射图样为明暗相间的同心
射光斑的尺寸越大%
8 圆孔衍射光强曲线444 ? 圆孔衍射图样4 图 ) 半径 JU%&$66的圆孔夫琅禾费衍射图样
8 圆孔衍射光强曲线444 ? 圆孔衍射图样4 图 ( 圆孔 JU%&%$66的圆孔夫琅禾费衍射图样 (&) 夫琅禾费矩孔衍射的 M89@8? 仿真 根据公式(3) "利用 M89@8? 软件进行编程运算"在入 射光波长保持不变的情况下"如 $U0()F_>!"当矩孔边长 9 U$!!"EUL66时"衍射图样如图 3 所示"衍射亮斑集中 分布在 ,轴和 0轴上"呈+ 十, 字状"且 ,方向衍射比 0方向 的衍射更加明显*随着 9 的变大"0方向的衍射变得越来越 明显"如 9 U(!!"EUL66时"衍射图样如图 L 所示*当 9 U L!!"EUL!!时的衍射图样如图 0 所示"即当 9 UE时",方 向的衍射和 0方向的衍射一样"所以"衍射扩展与矩孔的 宽度成反比"在哪个方向上限制"就在该方向上扩展% 通 过图 3 l0 的三维图还可以发现"衍射孔由长方形变化到 正方形的过程中"三维图样从扁平逐渐变为立体%
matlab圆孔夫朗和费衍射
MATLAB圆孔夫朗和费衍射圆孔夫朗和费衍射是物理光学领域中的两种重要现象,它们对光的传播和衍射提供了重要的理论基础。
在这篇文章中,我们将主要讨论MATLAB在模拟和分析圆孔夫朗和费衍射中的应用,介绍其原理和具体操作步骤。
一、圆孔夫朗衍射原理1. 圆孔夫朗衍射是指当平行光垂直照射到一个有圆孔的屏上时,圆孔后面的光屏上会出现明暗相间的环形条纹。
这种现象是由于光线经过圆孔后,会发生衍射和干涉的结果。
2. 根据夫朗和衍射的衍射公式,我们可以得到圆孔夫朗衍射的衍射角和衍射级数,进而求解出衍射光场的振幅和相位分布。
3. 圆孔夫朗衍射实际上是一种光学探测技术,可以用于测量光波的波长、频率和振幅等参数。
二、MATLAB模拟圆孔夫朗衍射1. 在MATLAB中,我们可以通过编写代码来模拟圆孔夫朗衍射的过程。
我们需要定义圆孔的参数,如半径、光波长等。
2. 我们可以利用波动方程和衍射公式来计算出衍射光场的振幅和相位分布。
3. 接下来,我们可以将计算得到的衍射光场显示出来,观察明暗条纹的分布情况。
4. 在模拟过程中,我们还可以改变圆孔的参数,观察不同条件下的衍射效果,从而更加深入地理解圆孔夫朗衍射的特性。
三、圆孔费衍射原理1. 圆孔费衍射是指当平行光垂直照射到一个有圆孔的屏上时,圆孔后面的光屏上会出现明暗相间的夫朗和环形条纹,其特点是中央明纹亮度大大减少而周围暗纹宽度减小。
2. 这种现象是由于光线经过圆孔后的扩散和衍射效应,导致光的传播方向发生变化,最终在屏上形成特殊的图案。
3. 圆孔费衍射可以用于光学成像、激光加工等领域,对于光学设备的设计和优化具有重要意义。
四、MATLAB模拟圆孔费衍射1. 在MATLAB中,我们同样可以通过编写代码来模拟圆孔费衍射的过程。
需要定义圆孔的参数,并计算出衍射光场的振幅和相位分布。
2. 利用MATLAB提供的图形绘制功能,我们可以将计算得到的衍射图案显示出来,观察中央明纹亮度减少和周围暗纹宽度变窄的现象。
实验十五 夫琅禾费圆孔衍射 - 湖州师范学院
实验十五 夫琅和费圆孔衍射实验目的1、了解圆孔的夫琅和费衍射现象。
2、掌握用衍射测圆孔的直径的方法。
实验装置(图15-1) 1:钠灯2:小孔(φ1mm ) 3:衍射孔(φ0.2-0.5mm ) 4:三维调节干版架 (SZ-18)7:测微目镜8:光源二维调节架 (SZ-19) 9:三维平移底座(SZ-01) 10:二维平移底座(SZ-02)衍射图样为图15-3:图15-3经理论推导的衍射的光强分布为:210))(2(mm J I I =λθπ=/sin 2a m ,是一阶贝塞耳函数。
)(1m J 圆孔衍射的第一暗纹的条件:aλ=θ61.0sin 则中央零级亮纹斑(爱里斑)的角半径:a /61.0λ≈θΔ线半径:f a l′⋅λ=/61.02爱里斑的直径:λ′=af e 22.1实验中,已知波长,透镜焦距οA 5893=λf ′,圆孔半径a ,用测微目镜测出爱里斑的直径,从而验证公式λ′=af e 22.1实验内容1、调整光路,调节衍射条纹。
2、用测微目镜则出爱里斑的直径。
3、验证公式λ′=a f e 22.14、改变圆孔的半径a ,进一步测量和验证。
实验步骤1)参照图15-1沿平台米尺安排各器件,调节共轴,获得衍射图样。
2)在黑暗环境用测微目镜测量艾里斑的直径e ,据已知波长(λ=589.3nm )、衍射小孔半径a 和物镜焦距f’,可验证公式λaf e '22.1=实验注意事项1、圆孔不能太大。
2、观察在焦平面上观察。
3、测圆斑的直径时圆心要选准并两边相切。
4、测量时要避免回程误差。
实验讨论思考题1、请证明圆孔的夫琅和费衍射的光强分布为:210))(2(mm J I I = 2、当圆孔直径增大或减小时,衍射条纹如何变化? 3、当入射光的波长改变时,衍射条纹如何变化? 4、如果透镜L 不放,衍射结果如何?实验十六 菲涅耳单缝衍射观察和分析实验目的1、了解菲涅耳衍射的条件及观察。
2、了解菲涅耳衍射和夫琅和费衍射的转化。
圆孔菲涅尔衍射 matlab
题目:圆孔菲涅尔衍射及其在matlab中的应用一、圆孔菲涅尔衍射简介在物理学中,菲涅尔衍射是一种由光波经过边缘或孔隙时发生的衍射现象。
而圆孔菲涅尔衍射是指当光波穿过圆孔时发生的衍射现象。
这一现象的研究不仅有助于我们理解光的传播规律,还具有广泛的应用价值。
下面我们将就圆孔菲涅尔衍射进行更深入的探讨。
1. 圆孔菲涅尔衍射原理圆孔菲涅尔衍射的原理可以简单概括为:当平行光垂直照射到孔径远小于波长的圆孔上时,光波将会在圆孔边缘发生衍射现象。
这一现象受到衍射衍射影响,使得出射光波的强度和相位发生变化,最终形成特定的衍射图样。
2. 圆孔菲涅尔衍射特点圆孔菲涅尔衍射的特点主要包括:- 衍射角度的变化会导致衍射图样的变化,这为我们定量研究光波的传播提供了重要依据。
- 圆孔菲涅尔衍射图样中会出现一系列光强和暗条纹,这种干涉现象在实际应用中具有重要意义。
3. 圆孔菲涅尔衍射的应用圆孔菲涅尔衍射在实际生活中有着广泛的应用,比如在天文望远镜、显微镜和光学仪器中的设计与制造中都有相关技术的应用。
而在数字图像处理、光栅制造以及激光技术等领域,圆孔菲涅尔衍射同样也有重要作用。
二、Matlab中的圆孔菲涅尔衍射模拟Matlab作为一款功能强大的科学计算软件,其在光学领域的应用也是非常广泛的。
关于圆孔菲涅尔衍射的模拟,我们可以借助Matlab中的光学工具箱进行实现。
1. 光学工具箱介绍Matlab中的光学工具箱提供了丰富的光学计算函数和模型,用户可以利用这些工具进行光学系统的设计、分析和优化。
在Matlab中进行圆孔菲涅尔衍射的模拟,可以很方便地实现对光波传播规律的研究。
2. 圆孔菲涅尔衍射模拟方法在Matlab中进行圆孔菲涅尔衍射的模拟可以分为以下几个步骤:- 定义圆孔的参数,比如孔径大小和光波波长等。
- 利用光学工具箱提供的函数进行光波传播的数值模拟。
- 通过对模拟结果的分析,可以得到圆孔菲涅尔衍射图样,从而深入理解菲涅尔衍射的规律。
光的圆孔衍射实验报告包含流程图
ik
e−ikR R
2
Ω
式中,Ω是∑2 对 P 点所张立体角,dω是立体角元,在辐射场中,
R ∞
lim
∂E − ikE R = 0 ∂n
综上所述,只需考虑对孔径面∑的积分,即
E P =−
i λ
E l
e−ikr cos n, r − cos (n, l) [ ]dσ r 2
此事为菲涅尔-基尔霍夫衍射公式。 A −ikl e l cos n, r − cos (n, l) K θ = 2 i C=− λ 其中 P 点光场是∑上无穷多次波源产生的, 次波源的幅振幅与入射波在该点的幅 振幅 E(Q)成正比,与波长λ 成反比;因子(-i)表明次波源的振动相位超前于入 射波π /2,;倾斜因子 K(θ )表示次波的振幅在各个方向上是不同的。 E Q =E l =
显示图像
F=(-sqrt(-1)/lamd)*E0. *exp(sqrt(-1)*k.*r)./r .*((1+z1./r)/2)*(2*a/m )*(2*sqrt(a^2-x1^2)/m)
X=X+F
clear all; lamd=500e-9; E0=10; k=2*pi/lamd; a=1e-3; z1=5; m=100; x=linspace(-a*5,a*5,m); y=x; E=zeros(m,m); for i=1:m for j=1:m Y=0; for x1=linspace(-a,a,m) X=0; for y1=linspace(-sqrt(a^2-x1^2),sqrt(a^2-x1^2),m) r=sqrt(z1^2+(x(i)-x1)^2+(y(j)-y1)^2); F=(-sqrt(-1)/lamd)*E0.*exp(sqrt(-1)*k.*r)./r.*((1+z1./r)/2)*(2*a/m)*( 2*sqrt(a^2-x1^2)/m); X=X+F; end Y=Y+X; end E(i,j)=Y; end end E=abs(E).^2; subplot(1,3,3) imagesc(E); subplot(1,3,1); mesh(x,y,E); colormap(gray) subplot(1,3,2); plot(x,E);
衍射实验
衍射实验一、实验目的1、观察夫朗和费单缝和圆孔衍射图样二、实验原理衍射分类:观察光衍射的装置,通常由三个部分组成:光源、衍射物(缝或孔等障碍物)、观察屏。
按三者相对位置的不同,可以把衍射分为两大类。
一类是菲涅尔衍射,另一类是夫朗和费衍射。
1、夫朗和费单缝衍射单缝夫朗和费衍射的实验光路如下图所示。
光源S 发出的光经凸透镜L’变成平行光,垂直照射到单缝上,单缝的衍射光由凸透镜L 会聚在屏H 上,屏上将出现与缝平行的衍射条纹。
根据惠更斯—菲涅耳原理,入射光的波阵面到达单缝,单缝中的波阵面上各点成为新的子波源,发射初相相同的子波。
这些子波沿不同的方向传播并由透镜会聚于屏上。
如图中沿θ方向传播的子波将会聚在屏上P 点。
θ角叫做衍射角,它也是考察点P 对于透镜中心的角位置。
沿θ角传播的各个子波到P 点的光程并不相同,它们之间有光程差,这些光程差将最终决定P 点叠加后的光强。
从上图中容易看出,单缝的两端A 和B 点发出的子波到P 点的光程差最大,在图中为线段AC 的长度,我们称它为缝端光程差(或最大光程差),等于: s i n A C a θ=①单缝夫琅和费衍射明纹、暗纹条件: sin (21)2a K λθ=±+ 明纹 sin a K θλ=± 暗纹②中央明纹宽度:中央明纹的宽度为次级条纹的两倍。
在屏中心O 点,会聚在此点的所有子波光程相等,振动同相,叠加时相互加强,使O 点成为衍射条纹中最亮的中央明纹的中心。
2、圆孔衍射当改变圆孔的直径或改变观察距离时,屏中央发生明暗变化。
三、实验仪器:激光电源,激光器,可调狭缝,白屏,小孔,调整架,底座。
四、实验步骤:(1) 夫郎和费单缝衍射实验的关键在于调节各器件的准直,光源和狭缝之间的距离必须保证满足远场条件。
将激光照射在狭缝上,观察远处的衍射图样,助于图样取向与狭缝的取向的关系。
缓慢地连续地将单缝由窄(宽)变宽(窄),同时注意屏幕上的图样。
(2)圆孔衍射将单缝换成1.5 mm的衍射小孔,改变孔的大小,观察衍射图样的变化。
夫琅禾费圆孔衍射
0.61
R
1.22
D
上式中D是圆孔的直径; 若上透图镜可L知2的,焦为距:为f,则艾里斑的线半径由
l f .tg1
由于1一般很小,故 tg1 sin1 。1 则:
l 1.22 f
D
实验仪器摆放
实验步骤
❖ 1、把所有器件按图十五的顺序摆放在平台上, 调至共轴。其中光栏和微测目镜之间的距离 必须保证满足远场条件。其中衍射孔的大小 为1mm。(图中数据均为参考数据)
❖ 2、调节透镜直至能在微测目镜中看其中心为 亮斑到衍射条纹。
❖ 3、记录下艾里斑的直径e,和计算值进行比 较。
数据处理
❖ 用测微目镜测出艾里斑的直径e,由已知衍射小孔 直径d=1mm,焦距f=70mm,可验证:
e 1.22 f
a 公式的正确性(其中为孔的半径),本实验要求实 验环境很暗。
思考题
菲涅尔圆孔衍射图样的中心点可能是亮的,也可 能是暗的,而夫琅和费圆孔衍射的中心总是亮的。 这是为什么?
实验目的❖ 观察Leabharlann 郎和费圆孔衍射图样实验步骤
把单缝衍射装置中的单缝以一小孔代替,应用
氦氖激光器,可以在透镜的焦平面上看到圆孔
衍射图样,衍射图样是一组同心的明暗相间的
圆环,可以证明以第一暗环为范围的中央亮斑
的光强占整个入射光束光强的84%,这个中央
光斑称为艾里斑。经计算可知,艾里斑的半角
宽度为:
1
sin 1
圆孔矩孔的菲涅尔衍射模拟(matlab实现)~工程光学
工程光学综合练习-----圆孔、矩孔的菲涅尔衍射模拟圆孔和矩孔的菲涅尔衍射模拟一、原理由惠更斯-菲涅尔原理可知接收屏上的P点的复振幅可以表示为其中为衍射屏上的复振幅分布, 为倾斜因子。
根据基尔霍夫对此公式的完善,有设衍射屏上点的坐标为(x1,y1),接收屏上点的坐标为(x,y),衍射屏与接收屏间距离为z1,当满足菲涅尔近似条件时,即此时可得到菲涅尔衍射的计算公式把上式指数项中的二次项展开,并改写成傅里叶变换的形式,可以写成上式为菲涅尔衍射的傅里叶变换表达式,它表明除了积分号前面的一个与x1、y1无关的振幅和相位因子外,菲涅尔衍射的复振幅分布是孔径平面的复振幅分布和一个二次相位因子乘积的傅里叶变换。
相对于夫琅和费衍射而言,菲涅尔衍射的观察屏距衍射屏不太远。
在菲涅尔衍射中,输入变量和输出变量分别为衍射孔径平面的光场分布和观察平面的光场以及光强分布,考虑到这三个量都是二维分布,而且Matlab主要应用于矩阵数值运算,所以本程序选择用二维矩阵来存储衍射孔径平面和观察平面的场分布,并分别以矩阵的列数和行数来对应平面的直角坐标值(x,y)以及(x1,y1)。
二、圆孔菲涅尔衍射用MATLAB分别构造表示衍射屏和接收屏的二维矩阵。
注意使两矩阵阶次相同,考虑到运算量的要求,采样点数不能过多,所以每个屏的x和y方向各取200到300点进行运算。
根据式(4),选取合适的衍射屏和接收屏尺寸和相距的距离,模拟结果如下:取典型的He-Ne激光器波长=632.8nm,固定衍射屏和接收屏尺寸和相距的距离,分别取不同的圆孔半径,得到以下三组衍射图样,其圆孔半径分别为12mm,20mm,50mm图1(r=12mm)图2(r=20mm)图3(r=50mm)三、矩孔的菲涅尔衍射步骤与上述相同,仅需改变与衍射屏形状对应的矩阵。
这里选择矩孔的长宽相等,分别为15mm,20mm,30mm,其衍射图样及强度分布如图4、5、6图4(a=b=15mm)图5(a=b=20mm)图6(a=b=30mm)四、MATLAB程序%所有长度单位为毫米lamda=632.8e-6;[m,n]=meshgrid(linspace(-N/2,N/2-1,N));I=rect(m/(2*a)).*rect(n/(2*b));q=exp(j*k*(m.^2+n.^2)/2/z);subplot(2,2,1);%圆孔图像画在2行2列的第一个位置imagesc(I)%画衍射屏的形状colormap([0 0 0; 1 1 1])%颜色以黑白区分axis imagetitle('衍射屏形状')L=300;M=300;%取相同点数用于矩阵运算[x,y]=meshgrid(linspace(-L/2,L/2,M));h=exp(j*k*z)*exp((j*k*(x.^2+y.^2))/(2*z))/(j*lamda*z);%接收屏H =fftshift(fft2(h));B=fftshift(fft2(I));%圆孔频谱G=H.*B; %公式中为卷积,空间域中相卷相当于频域中相乘U= fftshift(ifft2(G));%求逆变换,得到复振幅分布矩阵Br=(U/max(U));%归一化subplot(2,2,2);imshow(abs(U));axis image;colormap(hot)% figure,imshow(C);title('衍射后的图样');subplot(2,2,3);mesh(x,y,abs(U)); %画三维图形subplot(2,2,4);plot(abs(Br))。
圆孔衍射实验报告
圆孔衍射实验报告圆孔衍射实验报告引言衍射是光学中的重要现象,指的是当光通过一个孔或者绕过一个物体时,光波会发生偏折和干涉,产生新的波纹和光斑。
圆孔衍射实验是研究光的衍射现象的经典实验之一。
本报告旨在详细介绍圆孔衍射实验的原理、实验装置和实验结果,并对实验结果进行分析和讨论。
实验原理圆孔衍射实验基于惠更斯-菲涅耳原理,即光波在传播过程中会沿着各个方向传播,并在传播的过程中发生干涉。
当光通过一个圆孔时,光波会在孔的边缘发生衍射,形成一系列的光环,称为菲涅耳衍射环。
这些衍射环的大小和形状与孔的大小和光的波长有关。
实验装置圆孔衍射实验的装置主要包括光源、圆孔、屏幕和测量仪器。
光源可以选择白光或单色光源,如激光。
圆孔通常由金属或者玻璃制成,直径可以调节。
屏幕用于接收和观察衍射光斑。
测量仪器可以是尺子、卡尺或者显微镜,用于测量光斑的直径和位置。
实验步骤1. 将光源放置在适当的位置,并调整光源的亮度和位置,使光线垂直照射到圆孔上。
2. 调节圆孔的直径,观察和记录不同直径下的衍射光斑。
3. 将屏幕放置在合适的位置,接收和观察衍射光斑。
4. 使用测量仪器测量光斑的直径和位置,并记录数据。
实验结果通过圆孔衍射实验,我们观察到了一系列的衍射光斑。
随着圆孔直径的增大,衍射光斑的直径也增大,但是衍射环的亮度和清晰度会减弱。
当圆孔直径非常小的时候,衍射光斑会呈现出明亮而清晰的环状结构。
而当圆孔直径逐渐增大时,衍射光斑会变得模糊,环状结构逐渐消失。
讨论与分析圆孔衍射实验的结果符合光的波动性质。
当光通过一个孔时,光波会沿着各个方向传播,并在传播的过程中发生干涉。
衍射光斑的大小和形状取决于孔的大小和光的波长。
当孔的直径非常小的时候,光波会在孔的边缘发生强烈的衍射,形成明亮而清晰的衍射环。
而当孔的直径逐渐增大时,衍射光斑的清晰度和亮度会减弱,因为光波的干涉效应逐渐减弱。
圆孔衍射实验还可以用来测量光的波长。
根据衍射光斑的直径和圆孔的直径,可以利用菲涅耳衍射公式计算出光的波长。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
测试与光电工程学院计算机课程设计任务书电子科学与技术系070832 班22 学生:吴海课题名称:圆孔衍射实验仿真设计课题内容:1、课题设计要求:(1)分析圆孔衍射的物理过程,建立数学模型;(2)设计算法流程图;(3)编写程序,并对仿真结果进行分析。
2、工作进度安排:查阅资料,设计算法流程图 6月28日~ 7月4日第18周编写程序,撰写报告 7月5日~ 7月9日第19周系负责人:指导教师:钟可君时间:2010年6月21日[摘要]计算机仿真是应用电子计算机对系统的结构、功能和行为以及与系统控制的人的思维过程和行为进行动态性比较逼真的模仿,并通过建立某一过程和某一系统的模式,来描述该过程或该系统,为决策者提供有关这一过程或系统的定量分析结果,以此作为决策的理论依据。
本文主要研究了圆孔衍射理论,并对其中的不同圆孔的半径和不同的波长的情况对比与分析;然后根据圆孔衍射的数学计算公式,编写了各种干涉仿真的MATLAB程序代码;最后为了方便用户使用,本文设计了图形用户界面。
[关键词]MATLAB;计算机仿真;图形用户界面;圆孔衍射;分辨本领;仿真分析目录摘要一概述 (3)二圆孔衍射的基本原理 (4)三设计过程 (5)四设计过程的问题 (8)五心得体会 (8)六致谢 (9)附录一、概述1 本次计算机课程设计是在老师所给的众多课题中所选的课题,并在课题老师的要求下进行实际的操作和设计本次所选的课题,对于此次所选的课题其具有的意义为圆孔作为光学仪器基本形状,其衍射现象在光学研究中占有重要地位.光学衍射现象的实验演示需要特定的实验仪器和实验所,给研究工作带来许多不便。
另外,清晰的圆孔衍射图样,要求的圆孔半径很小,在一般实验中难以实现.基于MATLAB7软件强大的计算能力和可视化功能上的优势,利用计算机对圆孔衍射过程进行仿分析,可以使衍射现象直观地表现出来;通过调整实验参数,可以同步生成不同实验条件下的衍射图样,便于对衍射现象和像分辨本领进行比较分析;利用色图表现光强分布,使实验效果更为逼真,在实和研究中具有重要意义。
在本次的课题设计中主要要求完成对所选的课题进行界面的设计,这也是本次课程设计的难点,在设计的过程中我们遇到了很多棘手的问题,首先是对这个功能强大的软件很是陌生,并不会充分的使用,而且在这次的实验过程中由于这个软件的版本过多,对在于学习中又有很多盲点,并在实验过程中在各个软件的安装上又遇到了新的问题,确实是软件功能过于强大,整个安装软件很大,在安装过程中又要摸索着前进,不断的尝试,最终才安装上MATLAB7软件。
在此之后就具有了一定的方向,解决问题就要简单一些。
并最终完成了所要求的设计。
2 仿真工具的简单介绍:本此仿真设计是基于MA TLAB软件,MA TLAB 是Matrix Laboratory的缩写。
除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学,工程中常用的形式十分相似,故用MA TLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多。
在新的版本中均嵌有对C,FORTRAN等语言的接口,可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用,非常的方便。
MA TLAB的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。
附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB环境,以解决这些应用领域内特定类型的问题。
MA TLAB的基础是矩阵计算,但是由于他的开放性,并且mathwork 也吸收了像maple等软件的优点,使MATLAB成为一个强大的数学软件。
MATLAB具有以下几个特点:(1) 友好的编译平台和编译环境(2) 简单易用的程序语言 (3) 强大的科学计算机数据处理能力 (4) 出色的图形处理功能(5) 应用广泛的模块集合工具箱(6) 实用的程序接口和发布平台(7) 应用软件及用户界面开发二、圆孔衍射的基本原理(一)夫琅和费衍射理论衍射是光的波粒二象性中波动性的表现,是光的基本属性之一。
其主要表现在光波在遇到一定尺寸的障碍物时不沿直线传播而绕过障碍物继续传播。
图1光衍射原理图如图1,假设光在衍射屏∑平面上的某个波前点P0和观察点P的坐标分别是(x0,yo)和(x,y),当衍射屏相距光源以及观察点无限远时,即P0和P同时满足远场条件: | z|≥x2/λ、y2/λ和|z|≥x20/λ、y20/λ时,光场复振幅的分布满足夫琅和费衍射公式(1):U(P) =-ieikzλz ∑U0(P0)exp(-ikxx0+yy0z)dx0dy0公式中z是衍射屏和观察屏的距离,λ为光波波长, U0(P0)为光在P0处的复振幅。
因此,观察屏上任意一点P的光强分布为:I(P) =| U(P) |2。
对于不同情况的衍射屏,只要对衍射孔进行积分,理论上都是可以求出观察屏上任意一点P的光强分布I(P),从而可以对光强的分布进行定量研究。
夫琅和费圆孔衍射仿真当衍射孔为半径为r的圆孔时,根据公式(1),可以导出其夫琅和费衍射光强公式(2)为:I(P) = I0[2J1(m)m]2式中m=2rpiλsina, a是衍射角, J1(x)是一阶贝塞尔函数。
为了方便,对衍射角做近似处理,a≈x2+y2/f,其中f是透镜的焦距。
(二)圆孔衍射的实验装置与数学模型的、建立图2 圆孔夫琅禾费衍射装置图圆孔夫琅禾费衍射装置如图2所示,S为点光源,位于透镜L1的焦平面的主光轴上,光屏E置于焦距为D的透镜L2的焦平面上.圆孔P的半径为R.入射光波长为λ.射圆孔时,沿衍射角θ方向传播的次波在光屏Q(x,y)处的光强分布为[1]Ia= I0(J1(2m)m)2.其中:m=πRλsina,sina=x2+y2x2+y2+D2;I0为分常数.三、设计过程(一)方案选择本设计根据圆孔衍射的数学计算公式,编写实现圆孔衍射图样的MATLAB 程序,并设计出界面程序。
在本次实验的中最最要的就是编写界面而用户界面的设计有多种方案,尤其是现在新版本的MATLAB软件,其软件的兼容性更强,可以直接使用程序编写的方式建立界面,可以用MA TLAB结合VB设计出界面,还可以使用MA TLAB GUI来设计界面。
本设计是以MATLAB GUI来设计界面,即直接调用MATLAB库中的函数以编写M文件的方式来设计界面。
此方法简便灵活,程序代码设计简单,编译也更为容易。
(二)、图形界面(GUI)设计与衍射图样的生成1 用MATLAB GUI设计光学仿真界面,主要包括以下几个步骤:(1)构思草图,编排控件的布局。
打开Matlab程序,在file菜单中选择new gui,打开guide设计界面模板,界面模板左边的各个控件可以直接用鼠标拖到编辑框。
(2)设置各控件的属性。
比如设置各控件的标识(Tag),颜色,字体等,尤其要对应程序中的参数设置,对Tag进行设计。
(3)代码的设计。
关键是OpeningFcn(初始界面函数)和控件的Callback(回调函数)代码的设计。
初始界面函数即设定个参数的初始值,可根据实际情况设定。
回调函数是核心,是对界面控件触发时的事件响应函数。
光学实验仿真界面“运行”控件的回调函数设计流程是:根据设计步骤,构思草图,在编辑器中布置控件,坐标轴Axes1用来显示实验示意图,Axes2和 Axes3分别用来显示圆孔衍射图样和圆孔衍射光强分布图,文本框用来输入相应的参数,如图3所示,界面可直接输入参数有:波长 、半径0r 。
图 3 圆孔衍射实验仿真设计2 实验的程序设计在自生成的function ykys_OpeningFcn(hObject, eventdata, handles, varargin)下设置参数并同时显示衍射原理图set(mbda_edit,'String',0.0000005);用linspace()设置x,y 方向的范围用函数实现光强的计算调用函数显示光强立体图调用imagesc()函数显示仿真图读取界面参数set(handles.a_edit,'String',0.00001);I1=imread('4.jpg','JPEG');axes(handles.axes1)image(I1)在function pushbutton1_Callback(hObject, eventdata, handles)下编写主程序Lambda=str2num(get(mbda_edit,'String'));a=str2num(get(handles.a_edit,'String'));f=600;x=linspace(-20,20,100);y=x;[X,Y]=meshgrid(x,y);seta=atan(sqrt(X.^2+Y.^2)/f);alpha=2*pi*a*sin(seta)/Lambda;I=(2*besselj(1,alpha)./alpha).^2;%一阶贝塞尔函数NCL=255;Ir=I*NCL;colormap('gray');axes(handles.axes2),image(x,y,Ir*5);axis square;xlabel('圆孔衍射图样')axes(handles.axes3),plot3(X,Y,I)xlabel('圆孔衍射光强分布')axis square;保存后设计“运行”控件的回调函数的代码,在界面中输入参数,点击“运行”控件,可得到圆孔衍射实验仿真设计结果,如图4所示。
图4圆孔衍射实验仿真设计一改变参数设置波长=6e-007,半径=2e-005 后运行的结果如图5所示图5圆孔衍射实验仿真设计二3 分析与总结:从上面的分析可以看到,MATLAB GUI功能强大并且设计使用方法比较简单,可以根据需要设计丰富的界面,并由此直接在界面中输入和改变参数而不需要改变原程序,这样有利于分析和比较在不同参数条件下的实验结果,把抽象的光学问题进行简明直观的动态展示,为光学理论和实验教学提供了方便,为相关课件的设计提供了新途径。
四、设计过程的问题在整个计算机课程设计的过程中遇到了很多的问题,首先是对于软件的认识很陌生,这是最主要的问题,对于这个问题就只有通过突击学习来弥补了,在图书馆查阅资料并在网上搜索所要的资料,在通过学习后才不断的对软件有了一定的了解,当然还有老师的指点和教导,最终对MATLAB软件能够有了一定的操作能力。