• 【光学】Matlab模拟透射光条纹强度分布曲线仿真


    💥💥💥💞💞💞欢迎来到本博客❤️❤️❤️💥💥💥

    📝目前更新:🌟🌟🌟智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真。

                             

                                  🎉🎉欢迎您的到来🎉🎉
    
                    ⛅⛅⛅ 📃CSDN主页:Matlab科研室🌈🌈🌈
    
                  📚📚📚📋所有代码目录见微信公众号:天天Matlab👨💻👨💻👨💻

    1 内容介绍

    不同反射率下透射光条纹的强度分布曲线

    由上图可以直观地看出:

    1>当R较小时,透射光的相对强度从极大到极小的变化缓慢,透射光条纹的对比度很差;

    2>随着R的增大,透射光暗条纹的强度降低,亮条纹的宽度变窄,条纹的对比度增大;

    3>当R趋于1时,透射光暗条纹强度几乎为0,亮条纹宽度无限窄;此时可以想到,透射光的干涉图样是由在几乎全黑的背景上的一组很细的亮条纹所组成的;条纹的对比度趋于1;

    2 仿真代码

    %

    %该脚本文件用于绘制不同反射率下透射光条纹的强度分布曲线

    %

    %% 绘制前处理

    clc;

    clear;

    close all;

    %% 初始数据输入

    delta=(-0.26:0.01:2.26)*pi;                  %光程差及步长

    [~,num]=size(delta);                         %矩阵大小

    R=[0.046,0.27,0.64,0.87];                    %反射率矩阵

    %% 图像绘制

    figure;                                      %创建图窗

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

    set(gcf, 'Color', 'w');                      %设置背景颜色

    for i=1:4                                    %循环赋值

    F=4*R(i)/(1-R(i))^2;                         %精细度系数

    I_t=1./(1+F.*sin(delta./2).^2);              %透射光强度

    plot(delta,I_t,'k','LineWidth',1);           %绘制图像

    text(delta(num)+0.05,I_t(num)+0.05, ...

        ['\itF=',num2str(round(F*10)/10), ...

        newline,'\itR=',num2str(R(i))], ...

        'fontsize',10);                          %每条曲线的标注

    hold on;                                     %图像保持

    end                                          %结束循环

    %% 绘制后续处理

    xlim([-0.52*pi,2.52*pi]);                       %x轴范围

    ylim([0,1.1]);                                  %y轴范围

    xlabel('\it\delta','FontSize',13);              %x轴标注

    ylabel('y=\itI^{(t)}/I^{(i)}','FontSize',13);   %y轴标注

    title(['\itIntensity Distribution of ' ...      %标题

        'Transmitted Light Fringes'],'FontSize',13);

    line([-0.52*pi,6.8],[1,1],'linestyle',':' ...   %y轴定标

        ,'color','k','linewidth',1);                     

    line([0,0],[0,1],'linestyle',':','color', ...   %x轴定标1

        'k','linewidth',1);

    line([2*pi,2*pi],[0,1],'linestyle',':', ...     %x轴定标2

        'color','k','linewidth',1);

    set(gca, 'xTick', [-0.52*pi,0,2*pi]);           %x轴刻度范围

    set(gca,'XTickLabel',{'0','\it2m\pi','\it2(m+1)\pi'}) %x轴刻度标注

    set(gca, 'yTick', [1]);                         %y轴刻度范围

    set(gca,'yTickLabel',{'1'});                    %y轴刻度标注

    box off;                                        %关闭box

    3 运行结果

    4 参考文献

    [1]葛书荣. MATLAB的光学模拟仿真探究[D]. 长安大学.​

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

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

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

  • 相关阅读:
    万字详解PHP+Sphinx中文亿级数据全文检索实战(实测亿级数据0.1秒搜索耗时)
    PHP多功能投票微信小程序系统源码
    Vue3+elementplus搭建通用管理系统实例二:登录界面的规划及实现
    RabbitMQ快速入门笔记
    矩阵的概念
    拉索回归(Lasso)算法原理讲解
    You Are Given a Decimal String..(最短路,思维)
    掌握Java并发编程线程池的实现原理
    通过生成指标功能从非指标数据中分析趋势
    粉色卡通小学班干部竞选自我介绍PPT模板
  • 原文地址:https://blog.csdn.net/matlab_dingdang/article/details/126338131