【光学】Matlab实现平行平板的分振幅干涉

简介: 【光学】Matlab实现平行平板的分振幅干涉


1 内容介绍

对于定域干涉(Localized Interference),我们选择平行平板的分振幅干涉进行分析;

其光路图由 AxGlyph 绘出:

image.gif编辑

该动态图像表示:平行平板由厚到薄 再到厚的过程中,屏幕上干涉图样的变化;

从该动图上能够直观地看出,对于平行平板的分振幅干涉:

1>通过透镜聚焦后,干涉图样为一系列共圆心的、内疏外密的圆形条纹;

2>干涉条纹的半径与平行平板厚度呈反比例关系;平行平板增厚时,干涉条纹半径减小;而平行平板减薄时,干涉条纹半径增大;

3>一定范围内干涉条纹的数量与平行平板的厚度成正比例关系;平行平板增厚时,干涉条纹数量增多;而平行平板减薄时,干涉条纹数量减少;

2 仿真代码

%

% 函数用于绘制平行平板产生的定域干涉(等倾干涉)随平板厚度h变化的动态图

%

%% 绘制前处理

clc;

clear;

close all;

%% 初始数据输入

n2=1.33;                                     %介质折射率

n1=1;                                        %空气折射率

d=1/2;                                       %半波损

r_max=-1:0.001:1;                            %半径与高度之比  

[X,Y]=meshgrid(r_max);                       %直角坐标

R=sqrt(X.^2+Y.^2);                           %半径与高度之比矩阵

theta_i=atan(R);                             %入射角

c=linspace(0,1,64)';                         %颜色范围

%% 绘制图像

figure                                       %建立图形窗口

set(gcf,'position',[250 300 500 400]);       %设置画布大小

for e=-5:0.05:5                            %平行平板厚度/波长的变化

DD=2*e*sqrt(n2^2-n1^2*sin(theta_i).^2)+d;    %光程差与波长之比

I=cos(pi*DD).^2./(1+R.^2);                   %相对光强

%绘制干涉图样

image(I*64);                                  %干涉图像

colormap([c,c,c]);                            %白色色图

axis off equal;                               %隐轴

title(['平行平板等倾干涉干涉图 d=',num2str(abs(e))],'FontSize',13) %标题

pause(0.01);

%保存为gif文件:

gifname = 'Michelson_Draw_2.gif';     %建立一个gif文件

drawnow                               %图像实时更新

frame = getframe(1);                  %获取当前图像作为影片帧

im = frame2im(frame);                 %返回与影片帧关联的图像数据

[imind,cm] = rgb2ind(im,500);         %格式转换

if e == -5

imwrite(imind,cm,gifname,'gif');      %创建一个gif文件

else

imwrite(imind,cm,gifname,'gif','WriteMode','append','DelayTime',0.01);

                                     %向gif文件中添加一张图片

end                                   %结束循环

end

3 运行结果

image.gif编辑

4 参考文献

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。

5 往期回顾扫扫下方二维码


相关文章
|
机器学习/深度学习 传感器 算法
【光学】基于matlab模拟光纤布拉格光栅FBG反射谱和透射谱仿真
【光学】基于matlab模拟光纤布拉格光栅FBG反射谱和透射谱仿真
|
机器学习/深度学习 传感器 算法
【光学】基于matlab模拟参考光栅和变形光栅折叠相位
【光学】基于matlab模拟参考光栅和变形光栅折叠相位
|
机器学习/深度学习 传感器 算法
【光学】基于matlab模拟单相移点光纤光栅仿真
【光学】基于matlab模拟单相移点光纤光栅仿真
基于位相光栅的四波横向剪切干涉法波前检测算法的matlab仿真
基于位相光栅的四波横向剪切干涉法波前检测算法的matlab仿真
|
机器学习/深度学习 传感器 算法
【光学】基于matlab模拟二维光场分析
【光学】基于matlab模拟二维光场分析
|
机器学习/深度学习 传感器 算法
【光学】基于matlab模拟一维光子晶体吸收率折射率透射率
【光学】基于matlab模拟一维光子晶体吸收率折射率透射率
|
机器学习/深度学习 传感器 算法
【光学】基于matlab模拟维达尔之眼计算
【光学】基于matlab模拟维达尔之眼计算
|
机器学习/深度学习 传感器 安全
基于Matlab模拟汇聚偏振光干涉
基于Matlab模拟汇聚偏振光干涉
|
机器学习/深度学习 传感器 资源调度
【光学】基于matlab光纤布拉格光栅-FBG反射谱投射谱仿真
【光学】基于matlab光纤布拉格光栅-FBG反射谱投射谱仿真
|
机器学习/深度学习 传感器 算法
【光学】基于matlab模拟拉盖尔高斯光束叠加相位
【光学】基于matlab模拟拉盖尔高斯光束叠加相位