当前位置:文档之家› 基于MATLAB的光栅衍射仿真

基于MATLAB的光栅衍射仿真

基于MATLAB的光栅衍射仿真
基于MATLAB的光栅衍射仿真

基于MATLAB的光学光栅衍射仿真

“光栅衍射计算器”是一种基于MATLAB的,用于计算包括双周期光栅在内的光栅结构衍射效率的电磁仿真程序。该程序的功能包括一般的和灵活的光栅模型,结构参数(包括任意数目的参数),以及对衍射顺序进行无限制的控制。此外,它在通用编程和Matlab的应用开发框架下的实现提供了一定程度的软件灵活性和与独立衍射分析程序不兼容的交互性。

本文的第1部分提供了光栅衍射计算器的概念描述,概括描述如何指定光栅结构以及如何进行电磁计算。这些介绍主要面向概念,但有一些简单代码的例子给读者演示了如何使用光栅衍射计算器软件界面。第二部分对软件界面做了进一步的介绍:以钨光子晶体结构为例来说明光栅结构是如何确定的。(第二部分中的代码列表总结在gdc_intro.m中。)本文的主要重点是定义光栅结构。所附文件Calc_Demo.pdf提供了电磁计算中的应用例子。(在这篇文章和GD- Calc_Demo.pdf中的所有代码示例都可以在GD-Calc 网站上的免费演示/教程代码中运行。光子晶体示例在演示脚本gdc_demo11.m上运行。)电磁理论与光栅衍射计算器的算法详见GD-Calc.pdf。

第1部分:概念描述

MATLAB的开发环境

在MATLAB环境下工作的一个优点是可以创建光栅衍射计算器的功能链接,这个功能不依赖于繁琐的数据转换和导入/导出过程。例如,在半导体光刻技术的应用中,可能被曝光的相关的抗蚀剂致密化会影响光阻光栅的厚度和折射率指数,因此很自然地就会把指定厚度和折射率作为用户定义的曝光函数。这对结构参数是非常有用的,例如,曝光可以被定义为一个量化的数量,在所有曝光依赖数量的情况下,包括抗蚀剂厚度和折射率指数,计算出的衍射效率,也同样会被量化。

通常情况下,光栅的光学特性不是它本身的主要焦点,它最主要的焦点应该是把光栅作为一个组件的完整系统的光学响应。 MATLAB的通用编程能力可以轻松的将光栅衍射计算机在功能上连接到用户定义的光学系统模型中,它可以自身并入通用的优化程序来优化设计程序。光栅衍射计算器仅仅一个是MATLAB函数(gdc.m),可纳入其他MATLAB函数或脚本,另外,它还带有可以初始化为用户定义函数的参数.

虽然独立程序缺乏Matlab开发环境的通用性和灵活性,但是他们有简单和易于使用的优点。然而,光栅衍射计算器可以用于与MATLAB相结合创建定制的用户接口来更好的适应特定应用。许多与光栅衍射计算器相关的函数和脚本,如它的绘图工具(gdc_plot.m),它的输出

数据转换函数(gdc_eff.m)分散在各种公共领域的软件中,这样可以让用户随意修改和调整代码以便最好地满足自己或客户的需求

结构规范

光栅衍射计算器的光栅建模能力的主要限制因素是光栅必须是“块结构”(或必须定义在一个大约为代表块状的结构上),这意味着光栅包括光学均匀区域的边界曲面平面要平行于一组主坐标平面。例如,一个金字塔周期阵列的光栅应该用“楼梯逼近”来表示,如图1所示。

光栅被细分为一组“阶层”,其中每个阶层以平行于光栅平面基板的上下平面为界。光栅在每一阶层都具有高度独立的横向截面。图2说明了一个从图1锥体光栅提取的特定阶层。每个阶层先划分成代表了光学均匀地区的矩形“块”,再进一步划分为平行的“条纹”。

图1锥体光栅

图2光栅层

从软件方面来看,如图1的结构由结构内部的单元阵列的嵌套层次表示的。在这里划定为光栅的顶层数据结构,包含了一个单元阵列层范围,其数组元素代表光栅层(从下往上数):grating.stratum{1},grating.stratum{2},...第i层的条纹表示为grating stratum{i}.stripe{1},grating stratum{i}.stripe{2},...,这个条纹块的第j条表示为grating.stratum{i}.stripe{j}.block{1},grating.stratum{i}.stripe{j}.block{2},...这些结构的其他区域规定了边界平面的位置和每个区块的光学材料。这些光学材料由顶层单元阵列grating.pmt中列举的复杂的介电常数表示,其中每个元素都代表着一种特定的材料。一种

特定光栅领域的光学材料指定为一个在列表中的整数指数(如grating.stratum{i}.stripe{j}.block{k}.pmt_index);因此,多个区域都可以通过给他们指定相同的材料指数来限定表示相同的材料.

这有五种不同类型光栅的“层”对象,列举如下:

每个层的对象有一个“type”指数说明它的类型。例如,一个均匀层是由三个结构场定义:类型指数(零),层厚以及介电常数指数构成,如:

stratum.type = 0; % 设定为均匀的

stratum.thick = 0.5;

stratum.pmt_index=1; % 定义grating.pmt 调用的的类名index

grating.stratum{1} = stratum;

这种均匀非周期的层的类型基本上是更普遍的非周期类型的典型。一个“坐标断点”在某种抽象意义上是一个“层”,这种抽象意义和一个特定高度的横向平面密切相关,并且,它提供了一个简单的机制:运用横向平移移动到上述所有断点面上的层,并且不必修改任何层的定义。一个“复制模块”是一种复合型的层,该层用来表示一种在光栅基板的横向方向周期性的重复的结构模式。(基本结构模式表现为一个栈的层,它可以是任何类型 - 包括其他的复制模块)

图3和图4在概念上说明了结构元素如何将自己与指定的一个光子晶体结构相结合。首先,图3给出了三层结构的定义。前两个层在正交条纹的方向上是非周期的,第三层是一个坐标断点,它适用于在两个周期任何一个方向的平动位移。(图3中的箭头表示的是平动位移)然后,三个层组合成了复制模块,其中,有一个相关的复制计数用来显示模式要重复多少次。图4表明了由此产生的四个复制计数结构。该结构包括了四个基本双层模式的叠层副本,每个副本都是在相对底层的双周期方向上横向移动了半个周期。

图3 (带有坐标断点的)光子晶体双层模式

图4 光子晶体

比起使用上面的例子中的复制模块,光栅更倾向于使用图3结构中简单的叠层副本这种定义。然而,使用复制模块的优点是不只是方便。鉴于光栅衍射计算器的计算时间相对于光栅层数成比例,复制模块的计算时间在大小上与复制数的对数成比例。

参数化

光栅衍射计算器的接口规格(定义在gdc.m评论标题中的)定义一系列光栅属性为“参数”。在本文中,“参数”是一个可量化为多维数组的数字量。一个参数可以是一个基本参数,每个基本参数都和一个特定阵列维度有关(参数只有一个非单维维度),一个参数也可以是其它参数的函数。(一个参数的非单维表明了其函数的相关性。)参数的唯一基本限制是:它们必须全部大小匹配,除了单维隐含的复制数组扩展,如有必要,应匹配参数的大小。

图5是一个参数化应用的简单的示例。这幅图显示了一个校准传感器光栅的横截面,这种光栅包括了一个基板,一个非周期表面反射光栅(层1),一个均匀的空气层(层2),一个坐标断点(层3)和一个在透明覆盖层上的非周期相位光栅(层4)。两个光栅之间的一个小小的横向移动都会引起能量平衡在一阶和负一阶衍射效率上的一个可测量到的移动,因此,光栅可以作为一个敏感的位置传感器。

图5 校准传感器光栅

在这个例子中,有两个量化的光栅参数:空气层厚度,表示为:grating.stratum{2}.thick,和相位板的平移位移量,表示为:grating.stratum{3}.dx2.它们也可以作如下定义:grating.stratum{2}.thick = wavelength*[3;2;1];

grating.stratum{3}.dx2 = d*(0:63)/64;

(这里的wavelength和d变量分别代表了光照波长和光栅周期),空气空间的大小是[3,1],量化为维1,平移位移大小是[1,64],量化为维2。包括衍射效率量在内,任何作用上依赖空气层和平移位移层的量的大小都为[3,64]。基于上面描述中的数组扩展设置,这些阵列都是大小兼容的。

在某些情况下,参数化可以显著提高光栅衍射计算器的计算性能。正如下一节中阐述的那样,光栅衍射计算器的算法主要基于以下两个操作:首先,计算各层的“S矩阵“,然后,通过一个“叠加”方法,结合从底部到顶部的S矩阵,确定整个光栅的复合S矩阵。在上述例子中,共有192个参数组合(3个空气层厚度和64个平移位移量),所以,如果光栅衍射计算器识别出参数,那么所有的S矩阵计算都不得不重复192次。但是,由于参数化,光栅层(层1和层4)的S矩阵只需要计算一次,空气层的S矩阵只用计算三次,坐标断点的S矩阵也只用计算64次。此外,层2的堆叠操作只用计算3次,只有层3和层4的堆叠不得不进行192个参数的组合。电磁理论。

光栅衍射计算器算法的建立基于一种严格耦合波(RCW)理论的广义变型,它第一次使用大约是在30年前,但是,至今经历了几个重大的改进。从本质上讲,该方法既表现了电磁场也表现了任一特定高度光栅的光学介电常数,该光栅是用两个横向光栅坐标的傅里叶级数和一组差分方程表达的,该差分方程描述了场傅立叶系数通过光栅的传输。

在严格耦合波理论的原始公式中,传输方程的数值求解确定了“转移矩阵”,这个矩阵是每一层顶部的场振幅(傅立叶系数)作为底部的振幅线性函数,这些矩阵相乘,确定了整个光栅的复合转移矩阵。但是,成倍增长误差造成的污染数值会导致数值上的不稳定,非常深或者高的导电光栅尤其如此。通过使用替代“S -矩阵”(散射矩阵)的方法,这个问题得到了解决,这个替代矩阵代表了每个在边界上与传出传入的场振幅相对应的线性映射层。层的个体映射(S

矩阵)与一个数值稳定的“堆叠”算法相结合可以确定了光栅的复合S矩阵。

虽然S -矩阵方法解决了数值稳定性问题,但是有关计算中保留的傅立叶系数的收敛通常是非常缓慢的。主要的问题在于用差分方程表示电磁场和介电常数的积。傅立叶级数的每个积都由它的因素截断傅立叶级数确定,但是当与光学界相关的这些因素同时间断时,严格数值收敛问题时就出现了。这个问题通过使用一个“快速傅立叶分解”方法得到了解决,这种方法在本质上重新排列了方程以避免同时间断(即在并发间断发生的每个方程中,介电常数因素在应用傅立叶分解前就被带到了方程的另一边)

光栅衍射计算器同时使用了S-矩阵法和快速傅立叶分解这两种方法,以优化它的计算性能。(详细的数值算法见GD - Calc.pdf.)然而,一个与RCW方法相关的问题是“阶梯逼近”,必须用来它来描述“块结构的”倾斜或弯曲表面。简单地将光栅分割成非常小的块并不能保证准确度,因为附近的电磁场会表现出块拐角附近的大尖峰,必须增加在块分割密度比例中保留的衍射级个数,以充分解决这些尖峰。因此,光栅衍射计算器的用户应该意识到可能会出现的收敛困难,特别是超导光栅本质上并不是块结构。(光栅衍射计算器的演示脚本和GD - Calc_Demo.pdf提供了有关该程序在各种测试中的连接的例子,其中包括与已公布数据的比较。)衍射级选择

光栅衍射计算器不限制用户挑选保留在计算上的衍射级(即傅里叶级数)。一般的,计算数据存储的需求容量近似于保留级的平方,运行的容量近似于保留级立方,所以,优化级的选择对计算性能会产生很大影响。

图6(平面图)描述的是一个级选择典型应用的例子--方格光栅。这个光栅是用两个基本周期向量描述的;例如通常选择向量A和B。然而,光栅的周期对称性要强于由向量A和B 表示的光栅,例如,基本周期向量A和C定义了一个晶胞,其面积为A和B的一半。因此,如果光栅的光学介电常数是由向量A和B表示的的直角坐标的傅里叶解析,其中一半的傅里叶级数将是相同的零,类似的,一半的电磁场衍射级也会是零。

每个光栅傅里叶系数和其相应的电磁衍射级有两个相关的傅里叶级数指数m1和m2;用户必须指定一对(m1, m2)指数对来保持电磁场膨胀。在图6的例子中,使用基础的A 和 B ,所有m1- m2的奇级数恒等于零,所以只有(m1, m2)指数对m1- m2要保持。消除多余阶数将使输入存储的需求量减少4倍,时间的计算效率也会提高8倍.

图6 方格光栅

图4中的光子晶体是一个级选择被充分利用的例子。相比于使用由“矩形排列截断”标准︱m1︱≤m_max和︱m2︱≤m_max确定出m_max的截断范围,另一种由︱m1︱+︱m2︱≤m_max 定义的“对角线截断”方法更容易让人接受。似乎使用两种方法进行关于m_max的衍射收敛性能的计算结果都比较相近,但相比之下对角线截断计算更加简洁。

第2部分:光栅衍射计算器软件接口

光栅衍射计算器用法概述

使用光栅衍射计算器的第一步是构建一个定义了光栅的几何和光学材料的“grating”数据结构。(教程的重点在这一步。)接下来你可以做以下数据验证检查:

gdc(grating); (1)

你也可以画出光栅的3D图像:

gdc_plot(grating,garam_index,pmt_display,x_limit); (2)

param_index是关于光栅衍射计算器参数化能力的一个多维的参数指数。(在以下的例子中,param_index只设置成1.)pmt_display规定了显示的颜色和光栅材料的图例字符,并且,

x_limit规定了3D绘图范围,gdc_plot内部调用了gdc(grating)来检查数据的有效性。

接下来,你要增建两个数据结构:“inc_field”——指定入射电磁波的波长和方向;“order”——指定用于计算的衍射级。光栅衍射计算器计算引擎的调用方法如下:[param_size,scat_field,inc_field]=...

gdc(grating,inc_field,order); (3)

“param_size”的输出与参数化有关,“scat_field”和“inc_field”的输出(即“散射场”和“入射场”)被传递到一个附加函数gdc_eff上,这个函数是将结果变换为反射和传输衍射级的衍射效率(分别为R和T)。

[R,T]=gdc_eff(scat_field,inc_field); (4)

(R和T是表示多个衍射级衍射效率的结构矩阵。)

衍射效率计算需要计算引擎(gdc_engine.p),它不包括在免费脚本/教程包中;但是,可以调用光子晶体示例(gdc_demo11.m)中的脚本函数gdc_demo_engine.p来代替表单(3)。 [grating,param_size,scat_field,inc_field]=...

gdc_demo_engine(11,inc_field,order,...

grating_pmt,d,thick,width,rep_count); (5)

gdc_demo_engine构建了基于用户特定的输入参数光栅结构(grating_pmt,d,thick,width和rep_count),这些参数将会在下文中做详细描述。

光栅结构

光栅结构包括了以下部分:(1)grating.pmt:一个与光栅材料相关的复杂介电常数的单位矩阵;(2)grating.pmt_sub_index和pmt_sup_index:光栅衬底和覆盖层介电常数(类似于grating.pmt中的指数);(3)grating.d21,d31,d22,和d32:指定光栅基本周期向量;(4)grating.stratum:一个表述定义光栅内部结构光栅“层”的单位矩阵。下面是一个关于一般简单光栅结构的例子,其无镀层钨衬底的复折射率为1.52+6.46*i。(近似于波长为1.825μm的钨的反射率。另外,反射率的平方是介电常数。)

d=1.5; % grating period

grating_pmt=(1.52+6.46*i)^2; % grating permittivity

clear grating

grating.pmt={1.0,grating_pmt};

grating.pmt_sub_index=2;

grating.pmt_sup_index=1; (6)

grating.d21=d;

grating.d31=0;

grating.d22=0;

grating.d32=d;

grating.stratum={ };

虽然光栅的周期向量与裸露衬底无关,但还是需要设定,它们与新增的结构周期层相关。

光栅几何会由正交坐标基础向量ê1 ,ê2和ê3 确定,其中,ê1是光栅衬底的常态,ê2和ê3与衬底平行。相对于这样的坐标,光栅的两个周期向量d1[g]和d2[g]的坐标表示方法如下所示:d1[g] =ê2 d2,1[g] + ê3 d3,1[g](7)

d2[g] =ê2 d2,2[g] + ê3 d3,2[g] (8)

光栅几何由d1[g]或者d2[g] 换算过后仍然不变,并且光栅数据字段grating.d21等,对应于d2,1[g]等。

下面这段阐述了可以在光栅中存在的层类型。一共有五种层型,分别用0至4之间的类型标识符表示。总结如下:

层类型0:均匀

下面的代码表说明了前光栅规格(见表(6))可以改为表示一个厚度为0.5μm独立均匀的钨薄膜:

...

thick=0.5; %层厚

...

grating.pmt_sub_index=1;

...

clear stratum (9)

stratum.type=0; %均匀的

stratum.thick=thick;

stratum.pmt_index=2;

grating.stratum{1}=stratum;

注意这里的grating.pmt_sub_index改为了1,所以现在的衬底的介电常数为1.0(grating.pmt{1}=1.0),表示在真空中。这个层结构有三个数据选择:类型索引(0代表均匀),厚度和指引grating.pmt的介电常数指数(pmt_index)。

层类型1:非周期

在下面的代码段中,一个由独立平行矩形截面的,0.5μm宽的钨棒层取代了均匀层:

...

width=0.5; %丝棒宽

...

clear stratum

stratum.type=1; %非周期

stratum.thick=thick;

stratum.h11=1;

stratum.h12=0;

clear stripe (11)

stripe.c1=-0.5*width/d;

stripe.pmt_index=1;

stratum.stripe{1}=stripe;

stripe.c1=0.5*width/d;

stripe.pmt_index=2;

stratum.stripe{2}=stripe;

grating.stratum{1}=stratum;

在讨论上面的代码前,让我们先来画一下它的结构:

clear pmt_display

pmt_display(1).name=‘’;

pmt_display(1).color=[];

pmt_display(1).alpha=1;

pmt_display(2).name=‘Tungsten’; (11)

pmt_disply(2).color=[1,1,1]*0.75;

pmt_display(2).alpha=1;

x_limit=[-thick,-1.75*d,-1.75*d;...

2*thick,1.75*d,1.75*d];

gdc_plot(grating,1,pmt_display,x_limit);

在列表(6)中,pmt_display(1)和 pmt_display(2)分别设定表现了grating.pmt{1} 和

grating.pmt{2}代表的两种材料。(pmt_display(1).color=[]赋值会抑制第一种材料即真空的显示。)x_limit设定了3-D画图的范围,即分别对应于坐标x1,x2,x3的列1,列2和列3。(x1轴是竖直的,即光栅衬底的法线方向;x2和x3轴都平行于衬底。)图7展示了gdc_plot的结果(带有附加注解),描述了三种钨棒。(这些钨棒表现为一些空心的、被显示范围截断的管状元素,虽然光栅更类似于一种无限长实心棒的无限阵列。)

图7 列表(10)和(11)的非周期层

正如列表(10)所述,非周期层的定义数据场如下:类型指数(1)——层厚,两个“调和指数h11和h12,以及一个“条纹”数据场。这种物理结构是由一种平行的,直线条的周期性阵列层,其周期性和方向由调和指数确定。由分配的值:h11=1,h12=0可知,这些条纹平行于d2[g],其周期性由d1[g]确定;见图7.(下面说明了调和指数一般如何使用。)

层在每个周期有两个条纹(一对栅线或栅距),其定义来自于结构stratum.stripe{1}和stratum.stripe{2}。每个条结构有两个数据场:c1——设定了条纹壁的一个位置;pmt_index (grating_pmt中的一个指数)——设定了条纹材料。在这个例子中,第一个条纹和第二个条纹的界线在x2=stratum.stripe{1}.c1*d中,第二个和下一邻近的条纹间界线在x2=stratum.stripe{2}.cl*d中。(条形如何设定可以更普遍会在下面说明。)stratum.stripe单位矩阵可以扩展并且设定每个周期条纹的任意数量。

层类型2:双周期

接下来,我们假设一个层具有双周期阵列方孔的独立钨薄膜。代码表(10)做如下修改:

光栅结构的绘制(比照表(11))如图8所示。非周期层(列表(10))与双周期层(列表(12))的基本区别在于后者有两个额外的调和指数(h21和h22),并且它的条纹可以是两种类型的任意一种:均匀的或非均匀的(分别用一个stripe.type字段表示,相当于0或者1)。如同stratum.stripe{2}的均匀条纹在一个非周期或者双周期层中有相同的规格,但在后者的情况下,条纹有一个类型标识符(stripe.type=0)。

图8 列表(12)的双周期层

一组非周期条纹(例如,列表(12)中的stratum.stripe{1})包括类型标示符(stripe.type=1),定义了条纹之间界线墙位置的c1数据场,以及一个代表着包括条在内结构块的一个“块”数据场。如图8所示,第一个条纹每周期包括了两个块(方孔和孔间的分割区),它由stripe.block{1}和stripe.block{2}定义。每一个块都由两个数据场组成:c2——设定了毗邻块之间的一面墙的位置;pmt_index(grating.pmt中的索引)——规定了块的材料。在这个例子中,第一个和第二个块之前的界限在x3=stripe.block{1}.c2*d中,在第二个和接下来毗邻的块之间的界线在x3=stripe.block{2}.c2*d中。(如何设定块体更普遍的方法在下面介绍。)stripe.block单位矩阵可以延伸定义每个周期的任意块数目。

调和指数和层周期

一般的,光栅层的几何构型是指与特定周期层相关的向量d1[s]和d2[s],它不需要与光栅周期d1[g] 和d2[g]保持一致,但由于调和指数的存在,它是与其定义的d1[g] 和d2[g]有关。对于双周期层,其关系如下:

其中,h1,1,h1,2,h2,1以及h2,2都是整型值的调和指数。其关系也可以表示为空间频率。此光栅有两个基本空间频率向量f1[g]和f1[g],它和d1[g],d2[g] 的互易关系如下:

如果周期向量能表示为大小[2,1]数组,且频率向量表示为大小[1,2]数组(根据它们的ê2和ê3投影),接着以上关系都可以表达为MATLAB句法:[ f1[g];f1[g]]= inv([ d1[g],d2[g]])。层也可以类似表征为空间频率f1和f1,它与d1[s],d2[s]有类似的互易关系,也是f1,f1

的谐函数。

以上关系式可用于双周期层。一个非周期层可表征为:一个与层条纹正交的单周期向量d1[s]和一个平行于d1[s]且满足f1[s]·d1[s] =1 关系的单频率向量f1[s],即:

一个非周期层的频率向量f1[s]是由两个调和指数h1,1和h1,2定义:

一个层的几何构型定义与周期指数d1[s]和d2[s]相关(或是仅仅用d1[s]表示一个非均匀层),如图9所示。(坐标原点在图中用0 表示。)层的条纹列表包括了元素stripe{l2},l2=1…L2,其中,L2是每个周期的条纹数;l2的变化可以内在周期性扩展为l2=-∞…∞。stripe{l2} 和stripe{l2+1}之间的边界墙平行于d2[s](或者在一个非周期层的情况下,垂直于d1[s]),并截取点stripe{l2}.c1* d1[s]。

图9 层的几何构型定义

如果stripe{l

2}是不均匀的,它构成的结构块stripe{l

2

}.block{l

3

},l

3

=1...L

3

,其中,L

3

是每个周期的块数。l

3

的变化可以内在周期性扩展为l3=-∞…∞。这些块都是矩形的,并且,stripe{l2}.block{l3} 和stripe{l2}.block{l3+1}之间的边界墙截取点stripe{l2}.c1* d1[s]+stripe{l2}.block{l3}.c2* d2[s] .

为了说明调和指数的应用,代码列表(18)扩展到列表(10)来增加光栅的第二层。第二层与第一层相同,除了它的条纹方向因为h11和h12互换而旋转了90°。图10展示了光栅结构的绘制。(在生成图10过程中,x_limit(2,1)=3*thick的赋值可以扩大绘图的范围;对照图11,这一范围在其他数值上也同样得到扩大。)

图10 列表(18)的光栅结构

层类型3:坐标断点

坐标断点层类型并不代表了一种物理光栅层,由于它被抽象的归类于一种零厚度的“层”,所以在这个意义上,类似于在光栅一特定高度x

1

上的一种横向平面。它具有一个应用指定的横

向(x

2,x

3

)平移来转向以上坐标断点各层的作用。

图(19)说明了坐标断点的使用。这一例子中,通过在第二层插入坐标断点,延伸了列表

(18)(应用了半周期的平移同时移向x

1和x

2

坐标),接着,在光栅上添加了前两层的副本。

如图11所示,最上面的两层进行了这种平移移动。

...

grating.stratum{1}=...; % 与列表(18)相同

...

grating.stratum{2}=...; %与列表(18)相同

clear stratum

stratum.type=3; % 坐标断点

stratum.dx2=d/2; % 半周期 x2-移动 (19) stratum.dx3=d/2; % 半周期 x3-移动

grating.stratum{3}=stratum;

grating.stratum{4}=grating.stratum{1};

grating.stratum{5}=grating.stratum{2};

图11 列表(19)的光栅结构

层类型4:复制模块

一个三维周期(“三-周期”)的光栅结构可做如下定义:首先,在垂直方向上构建一个周期的第一层,然后,反复复制第一周期。例如,列表(19)可修改为通过替代最后两行来设定一个光子晶体结构,其环节如下:

for 11=4:11

grating.stratum{11}=grating.stratum{11-3}; (20)

end

然而,一个定义这种类型结构更有效的方法是用一个“复制模块”,这是一个综合类型的层,其中包括了一个层封装列表(一个周期的)和一个复制计数。

下面的代码片段说明了一个复制模块的使用。复制模块(stratum.stratum{1}, stratum.stratum{2}, stratum.stratum{3})封装的三层以同一方法定义,方法与列表(18)和列表(19)中的前三个光栅层的定义方法相同。图12说明了列表(21)定义的光栅结构。

图12 列表21的光栅结构

...

clear stratum

stratum.type=4; % 复制模块

stratum.stratum{1}=...; % 与先前的 grating.stratum{1}相同

stratum.stratum{2}=...; % 与先前的 grating.stratum{2}相同

stratum.stratum{3}=...; % 与先前的 grating.stratum{3}相同

stratum.rep_count=4; % 复制计数

grating.stratum={stratum};

(21)

入射场与衍射顺序的选择

衍射计算假定了一个由它的空间频率向量f[i]表征的平面波入射电磁场。利用极坐标,这一向量可被定义为:

其中,λ是波长,θ和φ是极角和方位角。inc_field结构设定了波长和f[i]的投影ê2和ê3(记作f2和f3),例如:

(因为光栅衍射计算器的输出可以用来确定任意入射偏振态的衍射效率,入射场的偏振态并未设定。)

衍射的电磁场包括了衍射顺序,其切向光栅的空间频率与增量m1f1[g]+m2f2[g]入射场的空间频率不同,其中m1和m2是整数值的顺序指数。只有一个命令的有限数目保留在了衍射计算中,并且光栅衍射计算器给用户提供了命令保留的自主权。这些命令用“命令”结构数组设定,该数组的每一个元素都对应了一个指定的m2索引和一个与m2的值相关的m1指数列表。通常,指令选择是由“矩形”指令截断定义的:| m1| ≤m_max和| m2| ≤m_max为一些截断限制m_max,如以下代码段定的的:

但是,可以使用替代截断条件。例如,上面描述的光子晶体光栅可以使用一个“对角线”阶段方法,这种方法由条件| m1| + | m2| ≤ m_max决定。(这两种方法展示了在m_max方面类似的数值收敛,但是计算时间会因为对角线截断而减少8倍。)下面的代码段说明了用对角线截断进行衍射命令选择:

在之前的方格光栅例子中,利用基础阶段A和B ,所有m1 - m2奇有关的指令恒为零。这些都会根据上面order(end).ml赋值的修改从指令选择中淘汰,那些修改的值是使m1-m2为偶数的m1指数:

更进一步

m注释的文件(特别是gdc.m,gdc_eff.m和gdc_plot.m)使光栅衍射计算器软件界面的定义更完整。Calc_Demo.pdf为多种光栅类型提供了的附加的技术背景教程示例(包括衍射计算)和计算性能数据。(示例中的代码都可以用演示/教程包运行,并且可以免费从GD- Calc网站上下载。)若需要详细的GD- Calc理论基础的技术背景,请见GD-Calc.pdf。

基于Matlab的光学衍射仿真

基于Matlab的光学衍射实验仿真 摘要 光学试验中衍射实验是非常重要的实验. 光的衍射是指光在传播过程中遇到障碍物时能够绕过障碍物的边缘前进的现象, 光的衍射现象为光的波动说提供了有力的证据. 衍射系统一般有光源、衍射屏和接受屏组成, 按照它们相互距离的大小可将衍射分为两大类, 一类是衍射屏与光源和接受屏的距离都是无穷远时的衍射, 称为夫琅禾费衍射, 一类是衍射屏与光源或接受屏的距离为有限远时的衍射称为菲涅尔衍射。 本文用Matlab软件对典型的衍射现象建立了数学模型,对衍射光强分布进行了编程运算,对衍射实验进行了仿真。最后创建了交互式GUI界面,用户可以通过改变输入参数模拟不同条件下的衍射条纹。 本文对于衍射概念、区别、原理及光强分布编程做了详细全面的介绍 关键字:Matlab;衍射;仿真;GUI界面;光学实验

Matlab-based Simulation of Optical Diffraction Experiment Abstract Optical diffraction experiment is a very important experiment. is the diffraction of light propagation of light in the obstacles encountered in the process to bypass the obstacles when the forward edge of the phenomenon of light diffraction phenomenon of the wave theory of light provides a strong Evidence. diffraction systems generally have light, diffraction screen and accept the screen composition, size according to their distance from each other diffraction can be divided into two categories, one is the diffraction screen and the light source and the receiving screen is infinity when the distance between the diffraction Known as Fraunhofer diffraction, one is diffraction screen and the light source or accept a limited away from the screen when the diffraction is called Fresnel diffraction. In this paper, Matlab software on a typical phenomenon of a mathematical model of diffraction, the diffraction intensity distribution of the programming operation, the diffraction experiment is simulated. Finally, create an interactive GUI interface, users can change the input parameters to simulate different conditions of the diffraction pattern. This concept of the diffraction, difference, intensity distribution of programming principles and a detailed comprehensive description Key word: matlab;diffraction; simulation; gui interface; optical experiment

单缝衍射实验实验报告

单缝衍射实验 一、实验目的 1.观察单缝衍射现象,了解其特点。 2.测量单缝衍射时的相对光强分布。 3.利用光强分布图形计算单缝宽度。 二、实验仪器 He-Ne激光器、衍射狭缝、光具座、白屏、光电探头、光功率计。 三、实验原理 波长为λ的单色平行光垂直照射到单缝上,在接收屏上,将得到单缝衍射图样,即一组平行于狭缝的明暗相间条纹。单缝衍射图样的暗纹中心满足条件: (1) 式中,x为暗纹中心在接收屏上的x轴坐标,f为单缝到接收屏的距离;a为单缝的宽度,k为暗纹级数。在±1级暗纹间为中央明条纹。中间明条纹最亮,其宽度约为其他明纹宽度的两倍。 实验装置示意图如图1所示。 图1 实验装置示意图 光电探头(即硅光电池探测器)是光电转换元件。当光照射到光电探头表面时在光电探头的上下两表面产生电势差ΔU,ΔU的大小与入射光强成线性关系。光电探头与光电流放大器连接形成回路,回路中电流的大小与ΔU成正比。因此,通过电流的大小就可以反映出入射到光电探头的光强大小。 四、实验内容 1.观察单缝衍射的衍射图形;

2.测定单缝衍射的光强分布; 3.利用光强分布图形计算单缝宽度。 五、数据处理 ★(1)原始测量数据 将光电探头接收口移动到超过衍射图样一侧的第3级暗纹处,记录此处的位置读数X(此处的位置读数定义为0.000)及光功率计的读数P。转动鼓轮,每转半圈(即光电探头每移动0.5mm),记录光功率测试仪读数,直到光电探头移动到超过另一侧第3级衍射暗纹处为止。实验数据记录如下: 将表格数据由matlab拟合曲线如下:

★ (2)根据记录的数据,计算单缝的宽度。 衍射狭缝在光具座上的位置 L1=21.20cm. 光电探测头测量底架座 L2=92.00cm. 千分尺测得狭缝宽度 d’=0.091mm. 光电探头接收口到测量座底座的距离△f=6.00cm. 则单缝到光电探头接收口距离为f= L2 - L1+△f=92.00cm21.20cm+6.00cm=76.80cm. 由拟合曲线可读得下表各级暗纹距离: 各级暗纹±1级暗纹±2级暗纹±3级暗纹 距离/mm 10.500 21.500 31.200 单缝宽度/mm 0.093 0.090 0.093 单缝宽度计算过程: 因为λ=632.8nm.由d =2kfλ/△Xi,得 d1=(2*1*768*632.8*10^-6)/10.500 mm=0.093mm. d2=(2*2*768*632.8*10^-6)/21.500 mm=0.090mm.

基于matlab的单缝衍射计算机模拟研究

课程设计说明书(论文) 基于matlab的单缝衍射计算机模拟研究 学院:数理学院 专业班级: 学生姓名: 学生学号: 指导老师: 2014年月号

摘要:美国Mathworks公司推出的MATLAB,是一种集数值计算、符号预算、可视化建模、仿真和图形处理等多种功能于一体的优秀图形化软件。本文将会通过MATLAB软件编程用衍射积分的方法对单缝衍射进行计算机模拟。计算机模拟为衍射实验的验证提供一条简捷、直观的途径。从而可以加深我们对物理原理、概念和图像的理解。 关键词:MATLAB;衍射积分;单缝衍射;计算机模拟 一、单缝衍射原理 惠更斯原理表明,波源发出的波阵面上的每一点都可视为一个新的子波源。这些子波源发出次级子波,其后任一时刻次级子波的包迹决定新的波阵面。惠更斯原理用光波能确定光波的传播方向,但不能确定沿不同方向传播的光振动的振幅。 菲涅尔在次级子波概念的基础上,提出的“子波相干叠加”理论,又称为惠更斯-菲涅尔原理。这个原理表述为:同一波面上的每一微小面元都可以看作是新的振动中心,它们发出次级子波。这些次级子波经传播而在空间某点相遇时,该点的振动是所有这些次级子波在该点的相干叠加。 二、编程原理 把单缝看作是np个分立的相干光源,屏幕上任意一点复振幅为np个光源照射结果的合成,对每个光源,光程差Δ=ypsinΦ,sinΦ=ys/D,光强I=I0(Σcosα)2+(Σsinα)2,其中α=2Δ/λ=πypys/λD 三、程序的编写 编写程序如下: clear lam=500e-9; a=1e-3;D=1; ym=3*lam*D/a; ny=51; ys=linspace(-ym,ym,ny); np=51; yp=linspace(0,a,np); for i=1:ny sinphi=ys(i)/D; alpha=2*pi*yp*sinphi/lam; sumcos=sum(cos(alpha)); sumsin=sum(sin(alpha)); B(i,:)=(sumcos^2+sumsin^2)/np^2; end N=255; Br=(B/max(B))*N;

单缝衍射光强分布的测定

单缝衍射光强分布的测定 光的衍射现象是光的波动性又一重要特征。单缝衍射是衍射现象中最简单的也是最典型的例子。在近代光学技术中,如光谱分析、晶体分析、光信息处理等到领域,光的衍射已成为一种重要的研究手段和方法。所以,研究衍射现象及其规律,在理论和实践上都有重要意义。 实验目的 1. 观察单缝衍射现象及特点。 2. 测定单缝衍射时的相对光强分布 3. 应用单缝衍射的光强分布规律计算缝的宽度α。 实验仪器 光具导轨座,He-Ne 激光管及电源,二维调节架,光强分布测定仪,可调狭缝,狭缝A 、B 。扩束镜与起偏听偏器,分划板,光电探头,小孔屏,数字式检流计(全套)等。 实验原理 光在传播过程中遇到障碍时将绕过障碍物,改变光的直线传播,称为光的衍射。光的衍射分为夫琅和费衍射与菲涅耳衍射,亦称为远场衍射与近场衍射。本实验只研究夫琅和费衍 射。理想的夫琅和费衍射,其入射光束和衍射光束均是平行光。单缝的夫琅和费衍射如图二 所示。 当处于夫琅和费衍射区域,式中α是狭缝宽度,L 是狭缝与屏之间的距离,λ是入射光的波长。 实验时,若取α≤10-4m, L ≥1.00m ,入射光是 He-Ne 激光,其波长是632.8nm,就可满足上述条件。所以,实验时就可以采用如图一装置。 λ<

根据惠更斯-菲涅耳原理,可导出单缝衍射的光强分布规律为 当衍射角?等于或趋于零时,即?=0(或?→0),按式,有 故I=I 0,衍射花样中心点P 0的光强达到最大值(亮条纹),称为主极大。 当衍射角?满足 时,u=k π 则I=0,对应点的光强为极小(暗条纹), k 称为极小值级次。若用X k 表示光强极小值点到中心点P 0的距离,因衍射角ψ甚小,则 故X k =L ?=k λL/α,当λ、L 固定时,X k 与α成反比。缝宽α变大,衍射条纹变密;缝宽α变小,衍射条纹变疏。同时可推导出中央主极大的角度(即±1级暗纹的间距)??=2λ/α,两相邻暗纹的衍射角之差为??= λ/α。两相邻暗纹间的亮纹称为次极大。 sin ? 0 ±1.43λ/α ±2.46λ/α ±3.47λ/α … I I 0 0.47 I 0 0.017 I 0 0.008 I 0 … 各极极大的位置和相应的光强如下图三所示: 实验内容和步骤 实验装置如图一所示,按图搭好实验仪器。实验采用发散度甚小的He-Ne 激光作为光源,满足入射光为平行光的条件。为满足夫琅和费衍射条件,应尽量将显示衍射图像的屏远 ? ?? ? ?=?? ? ??=λ?πsin sin 2 0αu u u I I 1sin lim =u u () ±±±==,2,1sin k k α λ ?α λ ??k ≈≈sin 图三 单缝衍射的相对光强分布曲线

大学物理光栅衍射习题

光栅衍射 一、选择题 1、 一衍射光栅对某波长的垂直入射光在屏幕上只能出现零级和一级主极大,欲使屏幕上出现更高级次的主极大,应该 ( A ) (A) 换一个光栅常数较大的光栅; (B) 换一个光栅常数较小的光栅; (C) 将光栅向靠近屏幕的方向移动; (D) 将光栅向远离屏幕的方向移动。 2、某单色光垂直入射到每厘米有5000条狭缝的光栅上,在第四级明纹中观察到的最大波长小于 ( B ) (A )4000? (B) 4500 ? (C) 5000 ? (D) 5500 ? 3、某元素的特征光谱中含有波长分别为1λ=450nm 和2λ=750nm 的光谱线,在光栅光谱中,这两种波长的谱线有重叠现象,重叠处的谱线2λ主极大的级数将是 ( D ) (A) 2、3、4、5…; (B) 2、5、8、11…; C) 2、4、6、8…; (D) 3、6、9、12…。 4、 已知光栅常数为d =×10-4cm ,以波长为6000 ?的单色光垂直照射在光栅上,可以 看到的最大明纹级数和明纹条数分别是 ( D ) (A) 10,20; (B) 10,21; (C) 9,18; (D) 9,19。 二、填空题 1、 用纳光灯的纳黄光垂直照射光栅常数为d =3μm 的衍射光栅,第五级谱线中纳黄光的 的角位置5 = 79o 。 2、 若波长为6250 ?的单色光垂直入射到一个每毫米有800条刻线的光栅上时,则该光 栅的光栅常数为 μm ;第一级谱线的衍射角为 30o 。 3、 为了测定一个光栅的光栅常数,用波长为的光垂直照射光栅,测得第一级主极大的衍 射角为18°,则光栅常数d= μm _,第二级主极大的衍射角θ= 38°。 4、在夫琅和费衍射光栅实验装置中,S 为单缝,L 为透镜,屏幕放在L 的焦平面处,当把光栅垂直于透镜光轴稍微向上平移时,屏幕上的衍射图样 不变 。 三、计算题 1. 用=600 nm 的单色光垂直照射在宽为3cm ,共有5000条缝的光栅上。问: (1) 光栅常数是多少 (2) 第二级主极大的衍射角θ为多少 (3) 光屏上可以看到的条纹的最大级数

基于Matlab的菲涅尔衍射仿真

南京航空航天大学 高等光学期末报告 题目:基于Matlab的单缝菲涅尔衍射实验仿真 学院 专业 姓名 学号 2014 年12 月30 日

基于Matlab的菲涅尔衍射仿真 摘要 光学试验中衍射实验是非常重要的实验. 光的衍射是指光在传播过程中遇到障碍物时能够绕过障碍物的边缘前进的现象, 光的衍射现象为光的波动说提供了有力的证据. 衍射系统一般有光源、衍射屏和接受屏组成, 按照它们相互距离的大小可将衍射分为两大类, 一类是衍射屏与光源和接受屏的距离都是无穷远时的衍射, 称为夫琅禾费衍射, 一类是衍射屏与光源或接受屏的距离为有限远时的衍射称为菲涅尔衍射。 本文用Matlab软件主要针对单缝菲涅尔衍射现象建立了数学模型,对衍射光强分布进行了编程运算,对衍射实验进行了仿真。 关键字:Matlab;单缝菲涅尔衍射;仿真;光学实验 Abstract Optical diffraction experiment is a very important experiment. is the diffraction of light propagation of light in the obstacles encountered in the process to bypass the obstacles when the forward edge of the phenomenon of light diffraction phenomenon of the wave theory of light provides a strong Evidence. diffraction systems generally have light, diffraction screen and accept the screen composition, size according to their distance from each other diffraction can be divided into two categories, one is the diffraction screen and the light source and the receiving screen is infinity when the distance between the diffraction Known as Fraunhofer diffraction, one is diffraction screen and the light source or accept a limited away from the screen when the diffraction is called Fresnel diffraction. In this paper, Matlab software on a typical phenomenon of a mathematical model of single slit Fresnel diffraction, the diffraction intensity distribution of the programming operation, the diffraction experiment is simulated. Key word: matlab;single slit Fresnel diffraction; simulation; optical experiment

光栅衍射实验的MATLAB仿真

届.别.2012届 学号200814060106 毕业设计 光栅衍射实验的MATLAB仿真 姓名吴帅 系别、专业物理与电子信息工程系 应用物理专业 导师姓名、职称姚敏教授 完成时间2012年5月16日

目录 摘要................................................... I ABSTRACT................................................ II 1 引言 (1) 1.1 国内外研究动态 (1) 2理论依据 (2) 2.1 平面光栅衍射实验装置 (2) 2.2 原理分析 (3) 2.3 MATLAB主程序的编写 (6) 2.4 仿真图形的用户界面设计 (7) 3 光栅衍射现象的分析 (8) 3.1 缝数N对衍射条纹的影响 (8) 3.2 波长λ对衍射条纹的影响 (10) 3.3 光栅常数d对衍射光强的影响 (12) 3.4 条纹缺级现象 (13) 4 总结 (14) 参考文献 (16) 致谢 (17) 附录 (18)

摘要 平面光栅衍射实验是大学物理中非常重要的实验,实验装置虽然简单,但实验现象却是受很多因素的影响,例如波长λ,缝数N,以及光栅常数d。本文利用惠更斯一菲涅耳原理,获得了衍射光栅光强的解析表达式,再运用Matlab软件,将模拟的界面设计成实验参数可调gui界面,能够连续地改变波长λ,缝数N,光栅常数d,从而从这 3个层面对衍射光栅的光强分布和谱线特征进行了数值模拟,并讨论了光栅衍射的缺级现象,不仅有利于克服试验中物理仪器和其他偶然情况等因素给实验带来的限制和误差.并而且通过实验现象的对比,能够加深对光栅衍射特征及规律的理解,这些都很有意义。 关键词:平面光栅衍射;惠更斯-菲涅尔原理;gui;光强分布;Matlab

单缝衍射的matlab分析教程

单缝衍射的MATLAB分析 学院:精密仪器与光电子工程学院专业:生物医学工程 班级:1班 姓名:

单缝衍射的MATLAB分析 摘要:在光的衍射概述和发展历史的基础上,说明了单缝衍射的图样特点,介绍了夫琅禾费衍射和菲涅耳衍射,几种实现夫琅禾费衍射的方法和原理及光强、条纹分布特点。并利用衍射公式的近似对基尔霍夫衍射公式进行了推导,从理论上得出了夫琅禾费单缝衍射的光强公式,利用Matlab软件进行了光强分布的图样仿真,并用实验采集到的图样对理论和仿真的结论进行了验证,计算结果与实验结果得到了很好的吻合。 关键字:单缝衍射夫琅禾费单缝衍射光强分布条纹分布 一、光的衍射概述

1.光的衍射现象 物理光学中,光的衍射现象是指光波在空间传播遇到障碍时,其传播方向会偏离直线传播,弯入到障碍物的几何阴影中,并呈现光强的不均匀分布的现象。通常将观察屏上的不均匀的光强分布称为衍射图样。光的衍射是光的波动性的主要标志之一。 光波遇到障碍物以后会或多或少地偏离几何光学传播定律的现象。几何光学表明,光在均匀媒质中按直线定律传播,光在两种媒质的分界面按反射定律和折射定律传播。但是,光是一种电磁波,当一束光通过有孔的屏障以后,其强度可以波及到按直线传播定律所划定的几何阴影区内,也使得几何照明区内出现某些暗斑或暗纹。 1.1衍射现象的基本问题 1.已知照明光场和衍射屏的特征,求屏幕上衍射光场的分布; 2.已知衍射屏及屏幕上衍射光场的发布,去探索照明光场的某些特性; 3.已知照明光场及屏幕上所需的衍射光场发布,设计、计算衍射屏的结构和制造衍射光学元件。 1.2衍射现象的分类 根据光源、衍射物(衍射屏)和衍射场(观察屏)三者之间的位置确定 1.夫琅和费衍射:(远场衍射) 光源和衍射场都在衍射物无限远处的衍射。 2.菲涅耳衍射:(近场衍射)

Matlab在物理学中的应用--光衍射

光的干涉和衍射 一、实验目的 ①学习用用模拟实验方法探究光的干涉和衍射问题. ②进一步熟悉MA TLAB编程. 二、实验内容和要求 1. 双缝干涉模拟实验 杨氏双缝干涉实验是利用分波前法获得相干光束的典型例子. 如图2.24所示,单色光通过两个窄缝s1,s2射向屏幕,相当于位置不同的两个同频率同相位光源向屏幕照射的叠合,由于到达屏幕各点的距离(光程)不同引起相位差,叠合的结果是在有的点加强,在有的点抵消,造成干涉现象. P O 图2.24 双缝干涉示意图 考虑两个相干光源到屏幕上任意点P的距离差为 1 2 21 r r r r r = ?=- (2.19)引起的相位差为 2π r ? λ ? = 设两束相干光在屏幕上P点产生的幅度相同,均为A0,则夹角为φ的两个矢量A0的合成矢量的幅度为 A=2A0 cos(φ/2)

第二章 数理探究试验 135 光强B 正比于振幅的平方,故P 点光强为 B =4B 0cos 2(φ/2) (2.20) 运行sy211.m 程序得到干涉条纹如图2.27所示. clear all %sy211.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) %画出光强变化曲线 图2.25中左图是光屏上的干涉条纹,右图是光屏上沿y 轴方向光强的变化曲线. 从图中也不难看出,干涉条纹是以点o 所对应的水平线为对称,沿上下两侧交替,等距离 排列,相邻亮条纹中心间距为2.5×10-4m. -0.4-0.200.20.4-1.5 -1-0.500.511.5x 10图2.25 单色光的干涉条纹 这与理论推导和实验结果基本一致. 下面我们从理论上加以推导,由上面的式(2.19)可得 22212121()()2d r r r r r r y -=+-= -1.5 -1 -0.5 0 0.5 1 1.5 -0.4 -0.2 0 0.4 0.2

基于Matlab的夫琅禾费衍射光学仿真

基于Matlab的夫琅禾费衍射光学仿真 摘要计算机仿真技术是以多种学科和理论为基础,以计算机及其相应的软件为工具,通过虚拟试验的方法来分析和解决问题的一门综合性技术。计算机仿真早期称为蒙特卡罗方法,是一门利用随机数实验求解随机问题的方法。 关键词:计算机仿真夫琅禾费衍射Matlab Fraunhofer Diffraction Optical Simulation Based on Matlab Abstract The computer simulation technology is based on a variety of disciplines and theoretical, with the computer and the corresponding software tools, we can analyze the virtual experimentation and solve the problem of a comprehensive technology. Computer simulation of early known as the Monte Carlo method, is a random problem solved using the method of random number test. Key words:Computer simulation Fraunhofer diffraction Matlab 一、引言

计算机仿真技术是以多种学科和理论为基础,以计算机及其相应的软件为工具,通过虚拟试验的方法来分析和解决问题的一门综合性技术。计算机仿真早期称为蒙特卡罗方法,是一门利用随机数实验求解随机问题的方法。根据仿真过程中所采用计算机类型的不同,计算机仿真大致经历了模拟机仿真、模拟-数字混合机仿真和数字机仿真三个大的阶段。20世纪50年代计算机仿真主要采用模拟机;60年代后串行处理数字机逐渐应用到仿真之中。到了70年代模拟-数字混合机曾一度应用于飞行仿真、卫星仿真和核反应堆仿真等众多高技术研究领域;80年代后由于并行处理技术的发展,数字机才最终成为计算机仿真的主流。现在,计算机仿真技术已经在机械制造、航空航天、交通运输、船舶工程、经济管理、工程建设、军事模拟以及医疗卫生等领域得到了广泛的应用。 计算机仿真的三个基本活动: 1. 数学模型建立:实际上是一个模型辩识的过程。所建模型常常是忽略了一些次要因素的简化模型。 2. 仿真模型建立:即是设计一种算法,以使系统模型能被计算机接受并能在计算机上运行。显然,由于在算法设计上存在着误差,所以仿真模型对于实际系统将是一个二次简化模型。 3. 仿真实验:即是对模型的运算。需要设计一个合理的、服务于系统研究的仿真软件。 二、本文的主要工作 本文主要使用matlab语言进行光学实验仿真,通过Matlab软

大学物理实验报告系列之衍射光栅.doc

大学物理实验报告 【实验名称】衍射光栅 【实验目的】 1.观察光栅的衍射光谱,理解光栅衍射基本规律。 2.进一步熟悉分光计的调节和使用。 3.学会测定光栅的光栅常数、角色散率和汞原子光谱部分特征波长。 【实验仪器】 JJY1′型分光计、光栅、低压汞灯电源、平面镜等 【实验原理】 1.衍射光栅、光栅常数 图40-1中a为光栅刻痕(不透明)宽度,b为透明狭缝宽度。d=a+b为相邻两狭缝上相应两点之间的距离,称为光栅常数。它是光栅基本参数之一。 图40-1 图40-2 光栅衍射原理图图40-1中a为光栅刻痕(不透明)宽度,b为透明狭缝宽度。d=a+b为相邻两狭缝上相应两点之间的距离,称为光栅常数。它是光栅基本参数之一。2.光栅方程、光栅光谱 由图40-1得到相邻两缝对应点射出的光束的光程差为: ? ?sin sin ) (d b a= + = ? 式中光栅狭缝与刻痕宽度之和d=a+b为光栅常数,若在光栅片上每厘米刻有n条刻 痕,则光栅常数 n b a 1 ) (= +cm。?为衍射角。 当衍射角?满足光栅方程: λ ?k d= sin( k =0,±1,±2…) (40-1) 时,光会加强。式中λ为单色光波长,k是明条纹级数。 如果光源中包含几种不同波长的复色光,除零级以外,同一级谱线将有不同的 衍射角?。因此,在透镜焦平面上将 出现按波长次序排列的谱线,称为 光栅光谱。相同k值谱线组成的光 谱为同一级光谱,于是就有一级光 谱、二级光谱……之分。图40-3为 低压汞灯的衍射光谱示意图,它每 一级光谱中有4条特征谱线:紫色 λ1= 435.8nm,绿色λ2=546.1nm, 黄色两条λ3= 577.0nm和λ4=579.1nm。 3.角色散率(简称色散率) 从光栅方程可知衍射角?是波长的函数,这就是光栅的角色散作用。衍射光栅的色散率定义为: λ ? ? ? = D 上式表示,光栅的色散率为同一级的两谱线的衍射角之差??与该两谱线波长差?λ的比值。通过对光栅方程的微分,D可表示成: 图40-3

大学物理下答案习题14

习题14 选择题 (1)在夫琅禾费单缝衍射实验中,对于给定的入射单色光,当缝宽度变小时,除中央亮纹的中心位置不变外,各级衍射条纹[ ] (A) 对应的衍射角变小. (B) 对应的衍射角变大. (C) 对应的衍射角也不变. (D) 光强也不变. [答案:B] (2)波长nm(1nm=10-9m)的单色光垂直照射到宽度a=0.25mm的单缝上,单缝后面放一凸透镜,在凸透镜的焦平面上放置一屏幕,用以观测衍射条纹。今测得屏幕上中央明条纹一侧第三个暗条纹和另一侧第三个暗条纹之间的距离为d=12mm,则凸透镜的焦距是[ ] (A)2m. (B)1m. (C)0.5m. (D)0.2m. (E)0.1m [答案:B] (3)波长为的单色光垂直入射于光栅常数为d、缝宽为a、总缝数为N的光栅上.取k=0,±1,±2....,则决定出现主极大的衍射角的公式可写成[ ] (A) N a sin=k. (B) a sin=k. (C) N d sin=k. (D) d sin=k. [答案:D] (4)设光栅平面、透镜均与屏幕平行。则当入射的平行单色光从垂直于光栅平面入射变为斜入射时,能观察到的光谱线的最高级次k [ ] (A)变小。 (B)变大。 (C)不变。 (D)的改变无法确定。 [答案:B] (5)在光栅光谱中,假如所有偶数级次的主极大都恰好在单缝衍射的暗纹方向上,因而实际上不出现,那么此光栅每个透光缝宽度a和相邻两缝间不透光部分宽度b的关系为[ ] (A) a= (B) a=b (C) a=2b (D)a=3b [答案:B] 填空题 (1)将波长为的平行单色光垂直投射于一狭缝上,若对应于衍射图样的第一级暗纹位置的衍射角的绝对值为,则缝的宽度等于________________. λθ] [答案:/sin (2)波长为的单色光垂直入射在缝宽a=4 的单缝上.对应于衍射角=30°,单缝处的波面可划分为______________个半波带。 [答案:4] (3)在夫琅禾费单缝衍射实验中,当缝宽变窄,则衍射条纹变;当入射波长变长时,则衍射条纹变。(填疏或密)

基于MATLAB的光学实验模拟

基于MATLAB的光学实验模拟 摘要: 利用MATLAB软件编程实现了用衍射积分的方法对单缝衍射、杨氏双缝干涉、黑白 光栅衍射的计算机模拟;以及用傅立叶变换方法对简单孔径衍射、黑白光栅及正弦光栅夫 琅和费衍射的模拟。 关键词: MATLAB;衍射积分;傅立叶变换;计算机模拟 引言: 美国Mathworks公司推出的MA TLAB,是一种集数值计算、符号预算、可视化建模、 仿真和图形处理等多种功能于一体的优秀图形化软件。本文介绍了通过MA TLAB软件编 程实现用衍射积分和傅立叶变换实现夫琅和费衍射计算机模拟的方法。 计算机模拟为衍射实验的验证提供一条简捷、直观的途径。从而加深了对物理原理、 概念和图像的理解。 正文: 大学教学课程中引入计算机模拟技术正日益受到重视,与Basic、C和Fortran相比,用MA TLAB软件做光学试验的模拟,只需要用数学方式表达和描述,省去了大量繁琐的编 程过程。下面来介绍利用MATLAB进行光学模拟的两种方法。 (一)衍射积分方法: 该方法首先是由衍射积分算出接收屏上的光强分布,然后根据该分布调制色彩作图,从而得到衍射图案。 1.单缝衍射。 把单缝看作是np个分立的相干光源,屏幕上任意一点复振幅为np个光源照射结果 的合成,对每个光源,光程差Δ=ypsinΦ,sinΦ=ys/D,光强I=I0(Σcosα)2+(Σsinα)2,其中α=2Δ/λ=πypys/λD 编写程序如下,得到图1 lam=500e-9; a=1e-3;D=1; ym=3*lam*D/a; ny=51; ys=linspace(-ym,ym,ny); np=51; yp=linspace(0,a,np); for i=1:ny sinphi=ys(i)/D; alpha=2*pi*yp*sinphi/lam; 图1 单缝衍射的光强分布 sumcos=sum(cos(alpha)); sumsin=sum(sin(alpha)); B(i,:)=(sumcos^2+sumsin^2)/np^2; end N=255; Br=(B/max(B))*N; subplot(1,2,1)

单缝衍射实验实验报告

单缝衍射实验 一、实验目得 1、观察单缝衍射现象,了解其特点。 2、测量单缝衍射时得相对光强分布。 3、利用光强分布图形计算单缝宽度。 二、实验仪器 He-Ne激光器、衍射狭缝、光具座、白屏、光电探头、光功率计。 三、实验原理 波长为λ得单色平行光垂直照射到单缝上,在接收屏上,将得到单缝衍射图样,即一组平行于狭缝得明暗相间条纹。单缝衍射图样得暗纹中心满足条件: (1) 式中,x为暗纹中心在接收屏上得x轴坐标,f为单缝到接收屏得距离;a为单缝得宽度,k为暗纹级数。在±1级暗纹间为中央明条纹。中间明条纹最亮,其宽度约为其她明纹宽度得两倍。实验装置示意图如图1所示。 图1 实验装置示意图 光电探头(即硅光电池探测器)就是光电转换元件。当光照射到光电探头表面时在光电探头得上下两表面产生电势差ΔU,ΔU得大小与入射光强成线性关系。光电探头与光电流放大器连接形成回路,回路中电流得大小与ΔU成正比。因此,通过电流得大小就可以反映出入射到光电探头得光强大小。 四、实验内容 1、观察单缝衍射得衍射图形; 2、测定单缝衍射得光强分布; 3、利用光强分布图形计算单缝宽度。 五、数据处理 ?★(1)原始测量数据 将光电探头接收口移动到超过衍射图样一侧得第3级暗纹处,记录此处得位置读数X(此处得位置读数定义为0、000)及光功率计得读数P。转动鼓轮,每转半圈(即光电探头每移动0、

5mm),记录光功率测试仪读数,直到光电探头移动到超过另一侧第3级衍射暗纹处为止。实验数据记录如下: 将表格数据由matlab拟合曲线如下: ?★ (2)根据记录得数据,计算单缝得宽度。 衍射狭缝在光具座上得位置 L1=21、20cm、

基于MATLAB光学衍射之矩形孔的夫琅禾费衍射

MATLAB的课程报告 项目名称:基于MATLAB光学衍射之 矩型孔的夫琅和费衍射 一,MATLAB 基础: MatlaB是功能强大的科学及工程计算软件,它不但表现具有以矩阵计算为基础的强大数学计算和分析功能,而且还具有丰富的可视化图形表现功能和方便的程序设计能力。Matlab是一款集数值分析、符号运算、图形处理、系统仿真等功能于一体的科学与工程计算软件,它具有编程效率高、简单易学、人机交互好、可视化功能、拓展性强等优点。MatlAB是面向21世纪的计算机程序设计及科学计算语言。 MatlAB系统包括5个部分:开发环境,MAtlAB数学函数库,MAtlAB语言,图形功能,应用程序接口。 二,光的衍射的原理: 光的衍射是光波在物质或空间里传播的基本发式,实际上,光波在传播的过程中,只要光波波面受到某种限制,光波会绕过障碍物偏离直线传播而进入几何阴影,并在屏幕上出现光强分布不均匀的现象,称为光的衍射。根据障碍物到光源和考察点的距离,把衍射现象分为两类:菲涅尔衍射和夫琅和费衍射。 此次课程报告主要是围绕夫琅和费衍射展开的。在光学上,夫琅和费衍射在场波通过圆孔或狭缝时发生,导致观测到的成像大小有所改变,成因是观测点的远场位置,及通过圆孔向外的衍射波有渐趋平面波的性质。 1,惠更斯原理:

根据惠更斯-菲涅耳原理,单缝后面空间任一点P 的光振动是单缝处波阵面上所有子波波源发出的子波传到P 点的振动的相干叠加。 2. 菲涅耳-基尔霍夫衍射公式: 由于菲涅耳理论本身的缺陷,所以从波动微分方程出发,利用场论中的Green 定理及电磁场的边值条件,其中倾斜因子为()k θ和常数C 均在下面所设。 ~exp()exp()cos(,)cos(,)()[]2 A ikl ikr n r n l E P d i l r σλ-=∑?? 若设 1C i λ=; ~exp()()A ikl E Q l = ;cos(,)cos(,)()2n r n l K θ-= 则上式可化为: ~~exp ikr E()()()P C E Q K d θσ=∑??()r 3. 基尔霍夫衍射公式的近似 菲涅耳衍射近似满足: 2222221111111121111 ()()11[]222x x y y xx yy x y x y r z z z z z z ??-+-+++=+=+-+???? 当上式中1z 很大而使得第四项相对相位的贡献远小于π时,即满足: 221 ()2x y k z π+<< 随着1z 的逐渐增大,从而可推得夫琅和费衍射公式如下: ~~2211,1111111 exp()(,)exp[()]()exp[()]2ikz ik ik E x y x y E x y xx yy dx dy i z z z λ=+-+∑ ?? 以上是矩孔的矩孔夫琅和费衍射复振幅计算公式的推导过程。 三,实验操作以及现象: 1,课程里假设: 波长λ=550nm ,孔的长宽a=0.008,b=0.008,聚焦凸透镜

基于matlab的光学现象模拟

基于matlab的光学现象仿真 宇鸿张科学学院 天津商业大学 天津,300134,中国的公关 电子邮件:lxyzhyh@https://www.doczj.com/doc/bd2023763.html, 摘要:在大学物理课程,Matlab 方法模拟光学物理现象被使用。利用matlab 仿真的方法,学生可以在电脑上做实验,在短的时间里结果表明它是对学生理解基本概念很有帮助,用 Matlab 进行了仿真结果和实验结果比较,开发了低级别的算法和解决了高级别的问题。仿真模拟示例在课堂教学和研究的光学现象中被提出。 关键字:模拟,光学现象,干涉,夫琅和费衍射,快速傅里叶变换 1.引言 计算机视觉是目前世界上公认的在工程和仿真程序的重要方法[1]。对于现代化教育,我们已经涉及MATLAB作为多媒体支持可视化的物理现象在大学物理课程中出现。我们通过尝试用Matlab模拟的物理现象大学本科物理课程中的科学和工程,可以描述许多物理现象并在Matlab软件中绘制仿真图样。这些仿真模拟使学生更容易,更直接领悟光学原理。 Matlab所代表的矩阵实验室是软件围绕向量和矩阵建立起来的。它于1984年由Mathworks公司[2]发行的推出的。从那时起,它广泛适用于应用科学、大学教育和科学研究等各大领域。选择matlab在大学物理课程中使用,因为它是一个有很多演示和帮助主题的互动环境,学生可以得到即时的视觉强化和矩阵的编程语言以及技术计算。它整合了计算、数学符号、可视化和编程集一体的易于使用的平台。此外,Matlab的语言已被证明是容易让学生理解,为他们提供方便和访问复杂算法及实现图像处理的功能[3]。 本文作者根据自己在课堂教育的模拟仿真演示,以及在该领域研究将本文组织如下。上述部分显示利用Matlab作为实验工具,本科理工科学生解决实际的问题出发。我们引入例子来说明问题,第二部分用matlab来模拟仿真牛顿环干涉实验的现象。第三部分通过快速傅立叶变换的Matlab的(FFT)功能,设计程序模拟夫琅和费衍射实验现象。 2.模拟牛顿环 A.分振幅干涉 圆形干涉图样可观察到,如果一个球形表面被放置在一个平面上[4]。环形模式被称为“牛顿环”,这可以被用来确定的球形表面的曲率半径。实验装置如图2-1所示。

单缝衍射的matlab分析报告

单缝衍射的MATLAB分析

学院:精密仪器与光电子工程学院 专业:生物医学工程 班级:1班 : 单缝衍射的MATLAB分析 摘要:在光的衍射概述和发展历史的基础上,说明了单缝衍射的图样特点,介绍了夫琅禾费衍射和菲涅耳衍射,几种实现夫琅禾费衍射的方法和原理及光强、条纹分布特点。并利用衍射公式的近似对基尔霍夫衍射公式进行了推导,从理论上得出了夫琅禾费单缝衍射的光强公式,利用Matlab软件进行了光强分布的图样仿真,并用实验采集到

的图样对理论和仿真的结论进行了验证,计算结果与实验结果得到了很好的吻合。 关键字:单缝衍射夫琅禾费单缝衍射光强分布条纹分布 一、光的衍射概述 1.光的衍射现象 物理光学中,光的衍射现象是指光波在空间传播遇到障碍时,其传播方向会偏离直线传播,弯入到障碍物的几何阴影中,并呈现光强的不均匀分布的现象。通常将观察屏上的不均匀的光强分布称为衍射图样。光的衍射是光的波动性的主要标志之一。 光波遇到障碍物以后会或多或少地偏离几何光学传播定律的现象。几何光学表明,光在均匀媒质中按直线定律传播,光在两种媒质的分界面按反射定律和折射定律传播。但是,光是一种电磁波,当一束光通过有孔的屏障以后,其强度可以波及到按直线传播定律所划定的几何阴影区,也使得几何照明区出现某些暗斑或暗纹。

1.1衍射现象的基本问题 1.已知照明光场和衍射屏的特征,求屏幕上衍射光场的分布; 2.已知衍射屏及屏幕上衍射光场的发布,去探索照明光场的某些特性; 3.已知照明光场及屏幕上所需的衍射光场发布,设计、计算衍射屏的结构和制造衍射光学元件。 1.2衍射现象的分类 根据光源、衍射物(衍射屏)和衍射场(观察屏)三者之间的位置确定 1.夫琅和费衍射:(远场衍射) 光源和衍射场都在衍射物无限远处的衍射。 2.菲涅耳衍射:(近场衍射) 光源和衍射场或二者之一到衍射物的距离比较小时的衍射。

大学物理光的衍射试题及答案

电气系\计算机系\詹班 《大学物理》(光的衍射)作业4 一 选择题 1.在测量单色光的波长时,下列方法中最准确的是 (A )双缝干涉 (B )牛顿环 (C )单缝衍射 (D )光栅衍射 [ D ] 2.在如图所示的夫琅和费衍射装置中,将单缝宽度a 稍稍变窄,同时使会聚透镜L 沿y 轴正方向作微小位移,则屏幕C 上的中央衍射条纹将 (A )变宽,同时向上移动 (B )变宽,不移动 (C )变窄,同时向上移动 (D )变窄,不移动 [ A ] [参考解] 一级暗纹衍射条件:λ?=1sin a ,所以中央明纹宽度a f f f x λ ??2sin 2tan 211=≈=?中。衍射角0 =?的水平平行光线必汇聚于透镜主光轴上,故中央明纹向上移动。 3.波长λ=5500?的单色光垂直入射于光栅常数d=2×10-4 cm 的平面衍射光栅上,可能观察到的光谱线的最大级次为 (A )2 (B )3 (C )4 (D )5 [ B ] [参考解] 由光栅方程λ?k d ±=sin 及衍射角2 π ?< 可知,观察屏可能察到的光谱线的最大级次 64.310550010210 6 =??=<--λd k m ,所以3=m k 。 4.在双缝衍射实验中,若保持双缝S 1和S 2的中心之间的距离不变,而把两条缝的宽度a 略微加宽,则 (A )单缝衍射的中央明纹区变宽,其中包含的干涉条纹的数目变少; (B )单缝衍射的中央明纹区变窄,其中包含的干涉条纹的数目不变; (C )单缝衍射的中央明纹区变窄,其中包含的干涉条纹的数目变多; (D )单缝衍射的中央明纹区变窄,其中包含的干涉条纹的数目变少。 [ D ] [参考解] 参考第一题解答可知单缝衍射的中央主极大变窄,而光栅常数不变,则由光栅方程可知干涉条纹间距不变,故其中包含的干涉条纹的数目变少。或由缺级条件分析亦可。 5.某元素的特征光谱中含有波长分别为1λ=450nm 和2λ=750nm 的光谱线,在光栅光谱中,这两种波长的谱线有重叠现象,重叠处的谱线2λ主极大的级数将是 (A) 2、3、4、5… (B) 2、5、8、11… (C) 2、4、6、8… (D) 3、6、9、12… 【 D 】 二 填空题

相关主题
文本预览
相关文档 最新文档