matlab多缝衍射公式,多缝的夫琅和费衍射matlab仿真.doc

41528d3028836879cd698677c3999917.gif多缝的夫琅和费衍射matlab仿真.doc

4、多缝的夫琅和费衍射,使用平行光照明,观察衍射图样随点光源位置(光源上下移动)的变化Θ图41图42多缝夫琅禾费衍射如图41所示。由于相邻单缝在P点产生的夫琅禾费衍射的幅值与中心单缝的相同,只是产生一个相位差,故,经证明,PSIN2D点处的光强为,220SININIP其中,。SINASIN2D因而,程序代码如下CLEAR清除原有变量LAMBDA6001E9设置波长为600NMA00051E3设置衍射屏参数缝宽为0005MM,缝距为002MMD0021E3F001汇聚透镜焦距设置为1CMN20设置缝数为20NI1000XLINSPACE0005,0005,NI将衍射屏按照狭缝方向分为NI个微元FORK1NISNXK/SQRTXK2F2ALPHAPIASN/LAMBDA算各微元对应的Α和Δ值DELTA2PIDSN/LAMBDAIKSINALPHA/ALPHA2SINNDELTA/2/SINDELTA/22求出各处的光强ENDFIGUREGCF显示图像NCLEVELS250BRINCLEVELSIMAGE0,X,BRCOLORMAPGRAYNCLEVELSTITLE 二维强度分布 运行后结果如图42所示。将光源上下移动的结果如图43所示图43图44点光源发出的光经过准直透镜后形成倾斜入射的平行光,倾斜角度为I。此时,P点强度的公式为,220SININIP其中,。SINASID故而程序代码如下,当时,即光源上下移动,改变其的值,即可仿真0出移动不同距离时的衍射图样。程序代码如下CLEAR清除原有变量LAMBDA6001E9设置波长为600NMA00051E3设置衍射屏参数缝宽为0005MM,缝距为002MMD0021E3F001汇聚透镜焦距设置为1CMN10设置缝数为10NI500IPI/20设置平行光入射的倾斜角XLINSPACE0005,0005,NI将衍射屏按照狭缝方向分为NI个微元FORK1NISNXK/SQRTXK2F2ALPHAPIASNSINI/LAMBDA算各微元对应的Α和Δ值DELTA2PIDSNSINI/LAMBDAIKSINALPHA/ALPHA2SINNDELTA/2/SINDELTA/22求出各处的光强ENDFIGUREGCF显示图像NCLEVELS250BRINCLEVELSIMAGE0,X,BRCOLORMAPGRAYNCLEVELSTITLE 二维强度分布 运行程序后结果如图44。令,结果如图45;令,结果如图46。10I10I图45图46故光源上下移动,会使干涉图样分别向右边和左边偏移。5、多缝的夫琅和费衍射,使用扩展光源照明,前后、上下移动光源,观察衍射图样的变化使用扩展光源照明,即为4中点光源的光照的叠加。程序代码为CLEAR清除原有变量LAMBDA6001E9设置波长为600NMA00051E3设置衍射屏参数缝宽为0005MM,缝距为002MMD0021E3F001汇聚透镜焦距设置为1CMN10设置缝数为10NI500IZEROS1,NIILINSPACEPI/1000,PI/1000,200将扩展光源分为微元XLINSPACE0005,0005,NI将衍射屏按照狭缝方向分为NI个微元FORT1200FORK1NISNXK/SQRTXK2F2ALPHAPIASNSINIT/LAMBDA算各微元对应的Α和Δ值DELTA2PIDSNSINIT/LAMBDAINKSINALPHA/ALPHA2SINNDELTA/2/SINDELTA/22求出各处的光强ENDIIIN将各光源光强累加ENDFIGUREGCF显示图像NCLEVELS250BRINCLEVELSIMAGE0,X,BRCOLORMAPGRAYNCLEVELSTITLE 二维强度分布 运行结果如图51,为左右偏移后的干涉条纹的叠加。图51图52将光源上下移动,可以通过改变I的取值实现,将上面程序中ILINSPACEPI/1000,PI/1000,200将扩展光源分为微元改为ILINSPACEPI/2000,3PI/2000,200将扩展光源分为微元运行后可得结果如图52,认为干涉条纹的叠加。若扩展光源足够大,令ILINSPACEPI/2000,3PI/2000,200将扩展光源分为微元则结果如图53,为全亮。图53

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MATLAB中实现多缝衍射的代码主要分为两个部分:生成衍射场景和计算衍射图样。 1. 生成衍射场景: (1)定义衍射屏上的多个狭缝的位置和大小。 (2)使用二维矩阵表示衍射屏,其中1表示有障碍物(即缝隙),0表示无障碍物。根据所定义的位置和大小,在矩阵对应位置上将对应元素置为1。 (3)生成表示光源的二维矩阵,设定光源波长等参数。根据光源的位置和波长,计算每个点上的相位差。 2. 计算衍射图样: (1)定义衍射图样上的像素点位置和大小。 (2)在每个像素点上,通过计算与光源之间的距离和相位差,利用衍射公式计算该像素点的幅度和相位。 (3)将计算得到的幅度和相位映射到灰度值上,得到最终的衍射图样。 在MATLAB中,可以使用Matrix Laboratory (MATLAB)提供的矩阵运算和图形函数来实现上述过程。 例如,可以使用矩阵操作来生成衍射屏和光源的矩阵,使用循环结构计算每个像素点的幅度和相位,使用图形函数将计算结果可视化展示出来。 总结: MATLAB中实现多缝衍射的代码主要分为生成衍射场景和计算衍射图样两个部分。在生成衍射场景时,需要定义多个缝隙的位置和大小,并生成表示光源的矩阵。在计算衍射图样时,需要定义像素点的位置和大小,在每个像素点上计算幅度和相位,并将结果映射到灰度值上最终展示。可以使用MATLAB提供的矩阵运算和图形函数来实现这些步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值