matlab白光干涉

1、以平面透射光栅为例。设光栅有N个单元,每个单元的透光缝宽为b,挡光部分宽度为a,光栅常数为d,则夫琅和费光栅衍射场的光强分布为:
  (1)
式中,为单缝衍射零级处的衍射光强,λ为单光波长,θ为衍射角,单缝衍射因子,多光束衍射因子。
夹心取力器2、夫琅和费单缝衍射的光强分布
光栅变为单缝衍射屏,此时,式(1)变为
            (2)
式(2)为夫琅禾费单缝衍射的光强分布式。由此可知,单缝衍射是光栅衍射的特例。
3、双光束干涉的光强分布
若透光缝宽为无限窄,则透过光栅的光束的衍射效应可略去。当光栅为双缝及透光缝宽为无限窄(即当N=2及b<<λ)时,式(1)变为
        (3)
式中,为双光束的相位差。式(3)为等振幅双光束干涉的光强分布式。由此可知,双光束干涉也是光栅衍射的特例。
4、七光干涉与衍射的光强分布
七光的波长各不相同,因此,以七光为光源进行干涉或衍射实验时,七光干涉或衍射的光强分布为各光干涉或衍射光强分布的非相干叠加结果
基于Matlab的七光仿真白光干涉与衍射实验
1、七光的中心波长及对应的RGB值
在可见光谱范围内,不同波长的光能引起人的不同颜感觉。白的日光中包含着红、橙
、黄、绿、青、蓝及紫七种光。七光也可合成为白光。与七光对应的中心波长如表所示。
RGB颜模型立方体以红(R)、绿(G)、蓝(B)为坐标轴,坐标值从0到1变化,在立方体范围内的每个彩点都可以用红(R)、绿(G)、蓝(B)三个参数表示,分别表示红、绿、蓝基的相对亮度。由于显示器采用的是从暗到亮的增强颜,因此,该模型有利于显示器实现。与七光对应的RGB代码值如表所示。
2、基于Matlab仿真白光干涉与衍射实验的算法
基于Matlab的七光仿真白光干涉与衍射实验,其算法主要包括以下几个步骤:①设置固定参数并赋值,设置可调参数并赋默认值;②设置仿真光屏参数(即仿真结果RGB值图像矩阵大小);③计算各光干涉或衍射的光强及其对应的RGB值矩阵数据;④依据红绿蓝三基加性混合法则,把各光的RGB值矩阵数据计入仿真结果RGB值图像矩阵中;⑤显示仿真结果(即显示仿真结果RGB值图像矩阵)。
电泳整流器3、基于Matlab仿真白光光栅衍射实验的程序及结果
固定参数设置为:七光的波长及对应的RGB值(见表),光栅常数d=4×10-5m。可调参数设置为:光栅单元数N及透光缝宽b。此外,为了便于观察仿真结果,设置图像亮度调节系数Bright。
根据式(1)至式(3)及以上的算法,利用Matlab语言可编写出如下的仿真程序:
%程序1,基于Matlab仿真白光光栅衍射实验程序
clear;clf;
%设置固定参数
lamda=[660,610,570,550,460,440,410]*1e-9;%七光的波
长,单位米
RGB=[1,0,0;1,0.5,0;1,1,0;0,1,0;0,1,1;0,0,1;0.67,0,1];%七光的RGB值
d=4e-5;%光栅常数
栅栏技术%设置可调参数
b=8e-6;N=18;%透光缝宽及光栅单元数
Bright=80;%亮度调节系数
%设置仿真光屏参数
Irgb=zeros(150,1048,3);%仿真光屏矩阵(仿真结果RGB值图像矩阵,初值置零)
Iw=zeros(150,1048,3);%用于记录各光衍射结果的RGB值矩阵(初值置零)
水塔控制器%计算白光光栅衍射的光强及对应的RGB值矩阵数据
%计算各光光栅衍射光强分布
for k=1:7
theta=(-0.015*pi:0.00001:0.015*pi);%衍射角度的变化范围
phi=2*pi*d*sin(theta)/lamda(k);
alpha=pi*b*sin(theta)/lam(k);
空间导航
Idf=(sinc(alpha)).^2;%单缝衍射的相对光强
Idgs=(sin(N*phi/2)./sin(phi/2)).^2;%多光束干涉的相对光强
I=Idf.*Idgs;%光栅衍射的相对光强
%计算与各光衍射光强对应的RGB值矩阵数据
for i=1:150
Iw(i,:,1)=I*RGB(k,1);%把红基代码计入Iw矩阵红维度
Iw(i,:,2)=I*RGB(k,2);%把绿基代码计入Iw矩阵绿维度
Iw(i,:,3)=I*RGB(k,3);%把蓝基代码计入Iw矩阵蓝维度
end
%计算白光光栅衍射RGB值图像矩阵数据
Irgb=Irgb+Iw;%把各光衍射的RGB值矩阵计入仿真结果RGB值图像矩阵中
Iw=[];
end
%显示白光光栅衍射实验仿真结果
Br=1/max(max(max(Irgb)));%调整Irgb矩阵元素的最大值光端机箱
为1的系数
II=Irgb*Br*Bright;%调节仿真图像亮度
imshow(II);%显示仿真结果
若可调参设置为,光栅单元数、透光缝宽及亮度调节系数,运行程序1,即可得出基于Matlab仿真白光光栅衍射实验结果。
同理,若把可调参设置为N=2,b=8×10-16m及Bright=1,运行程序1,即可得出基于Matlab仿真白光双光束干涉实验结果。

本文发布于:2024-09-23 13:21:16,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/111256.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:衍射   光栅   矩阵   结果   光强
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议