1 简介
本文基于光的衍射和干涉理论,通过MATLAB软件编程对单缝衍射、等倾干涉、等厚干涉、圆孔衍射、距孔衍射和单缝衍射进行了计算机仿真,这为光学的理论分析与实验教学提供了方便,并为相关课件设计提供了新的途径.
2 部分代码
%双缝干涉可改D或f和间距%等倾干涉可改厚度和角度%等厚干涉可改波长%衍射的焦距是公共的%距孔衍射是以长为基的正方孔% HUAS 201611030117function varargout = GS_YS(varargin)gui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ...'gui_Singleton', gui_Singleton, ...'gui_OpeningFcn', @GS_YS_OpeningFcn, ...'gui_OutputFcn', @GS_YS_OutputFcn, ...'gui_LayoutFcn', [] , ...'gui_Callback', []);if nargin && ischar(varargin{1})gui_State.gui_Callback = str2func(varargin{1});endif nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});elsegui_mainfcn(gui_State, varargin{:});end% End initialization code - DO NOT EDIT% --- Executes just before GS_YS is made visible.function GS_YS_OpeningFcn(hObject, eventdata, handles, varargin)handles.output = hObject;% Update handles structureguidata(hObject, handles);% --- Outputs from this function are returned to the command line.function varargout = GS_YS_OutputFcn(hObject, eventdata, handles)varargout{1} = handles.output;% --- Executes on button press in pushbutton1_ShF.function pushbutton1_ShF_Callback(hObject, eventdata, handles)lambda=632e-9;% d=0.002; %双缝间距dd=str2num(get(handles.ShF_jianju,'string'));D=str2num(get(handles.D_or_f,'string')); %ymax=0.035;xs=ymax;ny=101;ys=linspace(-ymax,ymax,ny);for i=1:nyL1=sqrt((ys(i)-d/2).^2+D/2);L2=sqrt((ys(i)+d/2).^2+D/2);phi=2*pi*(L1-L2)/lambda;% b(i,:)=4*cos(phi/2).^2; %每个元素的平方,b(i,:)=4*cos(phi/2)^2; %整体的平方endfigure(gcf);nclevels=255;br=(b/4.014)*nclevels;% subplot(1,2,1)% title('双缝干涉');figure(1);image(xs,ys,br);colormap(gray(nclevels));% subplot(1,2,2)% plot(b(:),ys)% --- Executes on button press in pushbutton2_DQ.function pushbutton2_DQ_Callback(hObject, eventdata, handles)f=0.2;
3 仿真结果






4 参考文献
[1]崔祥霞, 杨兆华, 陈君. 基于MATLAB的光学衍射与干涉实验仿真[J]. 泰山学院学报, 2009, 31(3):5.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
本文通过MATLAB编程实现了单缝衍射、等倾干涉、等厚干涉等光学现象的计算机仿真,为光学理论教学和实验提供便利,同时也为相关课件设计开辟新途径。代码中包含了双缝干涉、等倾干涉的参数调整,并展示了部分仿真结果。
412

被折叠的 条评论
为什么被折叠?



