一、简介

基于matlab多缝夫琅禾费衍射

二、源代码

 

%***********************模拟狭缝型光栅衍射图样**************************
% 该仿真也即:多缝的夫琅禾费衍射
clear,clc;
% 基本参数输入及处理*********************************
% 本例输入:Lambda = 632.8;  a = 0.1;  d = 0.3;  L = 1; N = 2/3/4
Lambda = input('输入单色光的波长(单位为nm):');
Lambda = Lambda * 1e-9;       %波长单位转为:m
a = input('输入光栅狭缝的宽度(单位为mm):');
a = a * 1e-3;                 %光栅狭缝宽度单位转为:m
d = input('输入光栅缝距(单位为mm):');
d = d * 1e-3;                 %光栅缝距长度单位转为:m
N = input('输入光栅缝数(整数):');
L = input('输入光栅到屏的距离(单位为m):');
I0 = 1;

Screen_Xmax = 2*Lambda*L/a;                         %接收屏x方向位置(边界)--单位为:m
Screen_x = linspace(-Screen_Xmax,Screen_Xmax,501);  %屏x坐标取样501份

sin_angle = Screen_x./L;
alpha = pi*a/Lambda.*sin_angle;      %公式里的其中一个相位差
deta = 2*pi*a/Lambda.*sin_angle;     %公式里的另一个相位差
I = I0* (sin(alpha)./alpha).^2 .* (sin(N/2.*deta)./sin(deta./2)).^2;
I = I/max(I);

 

三、运行结果

【光学】基于matlab多缝夫琅禾费衍射【含Matlab源码 061期】_matlab

四、备注

版本:2014a