基于MATLAB的圆孔夫朗和费衍射现象.doc
基于MATLAB的圆孔夫朗和费衍射现象
(陈群20092301069华南师范大学物理与电信工程学院)
摘要:本文首先回顾了单圆孔的夫朗和费衍射的特点,进而分析了双圆孔的夫朗和费衍射现象,双圆孔的夫朗和费衍射可以看成是两个单圆孔之和的夫朗和费衍射的叠加,所得结果对分析和理解圆孔夫朗和费衍射现象以及圆孔夫朗和费衍射演示实验的设计有参考价值。
关键词:MATLAB,圆孔,双圆孔,夫朗和费衍射
Abstract:ThepaperfirstreviewsthecharacteristicsoftheFraunhoferdiffractionofasingleholeandthenanalyzestheFraunhoferdiffractionphenomenonofthedouble-hole,thedoubleholesFraunhoferdiffractioncanbeseenasthesuperpositionoftwosingle-holeFraunhoferdiffraction.TheresultsisvaluabletoanalyzingandunderstandingtheholeFraunhoferdiffractionphenomenonanddesigningtheholeFraunhoferdiffraction
Keyword:MATLAB,hole,doublehole,Fraunhoferdiffraction
引言
实际应用中许多光学元件的边缘都是圆形的,所以圆孔衍射是光学系统中常见的衍射现象。它也是基础光学的重要教学环节,而圆孔衍射现象的实验演示是重要的教学环节。由衍射理论知,当圆孔直径由大变小时,衍射条纹会由密变疏,同时衍射场强度会逐渐变弱,为了在接收屏上获得易于观察的条纹分布,条纹的疏密程度和衍射场的强度都需要达到适于肉眼观察的程度,这就对衍射屏提出了较高的要求。
1、单圆孔夫朗和费衍射的数学模型
1、1夫朗和费衍射的理论基础
夫朗和费衍射装置的光路图如图1所示,其中分别在孔径平面和透镜焦平面建立坐标系和,两坐标原点C和P0在透镜光轴上。假设光在衍射屏上某某一波前点Q和观察屏P点的坐标分别是(x1,y1)和(x,y)。在远场条件下满足夫朗和费近似,即:
,则:
其中:r为QP的距离;z1为CP0的距离,k为波矢量。
假设衍射孔受平面波垂直照射,即 是常数,设为A,则光强复振幅的分布满足以下夫朗和费衍射公式:
式中:
因此,观察屏上任意一点的光强为:
对于不同情况的衍射屏,只要对衍射孔积分,理论上是可以求出观察屏上任意一点的光强的。
1、2单圆孔夫朗和费衍射的数学模型
如上图所示,当衍射孔是半径为a的圆孔时,圆孔的中心C位于光轴上,根据圆的对称性计算圆的光强分布的时候用极坐标比较方便。
圆孔中任意点Q的位置,用直角坐标表示x1,y1;用极坐标表示为r1,1,两种坐标的关系为,根据夫朗和费衍射的光强公式,则积分域是圆孔面积,式中的面,而
所以,P点的复振幅为
其中
因此,可以推出
,
其中,是的一阶贝塞尔公式。则有:
,
其中,为轴上点处的光强,a为圆孔的半径,f为透镜L2焦距,为入射光的波长。
1、3MATLAB仿真程序
1、3、1建立了单圆孔夫朗和费衍射现象的数学模型后,依据所建立的数学模型很容易在MATLAB环境下编制可以直接执行的m文件。在程序中,输入圆孔的半径a=0.0005;光的波长lam=632.8e-9,透镜L2焦距f=1,I0=1
单圆孔夫朗和费衍射现象的MATLAB仿真程序的m文件如下:
%单圆孔的夫琅禾费衍射
clearall
closeall
clc
%%
lam=632.8e-9;
a=0.0005;
f=1;
m=300;
ym=4000*lam*f;
ys=linspace(-ym,ym,m);
xs=ys;
n=200;
fori=1:m
r=xs(i)^2+ys.^2;
sinth=sqrt(r./(r+f^2));
x=2*pi*a*sinth./lam;
hh=(2*BESSELJ(1,x)).^2./x.^2;
b(:,i)=(hh).*5000;
B=b/max(b);
end
image(xs,ys,b)
colormap(gray(n))
figure
plot(xs,B)
colormap(green);
1、3、2模拟结果
改变圆孔半径a的