- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
菲涅尔衍射Matlab仿真
——《高等物理光学》实验报告
学院:姓名:学号:
物理学院
目录
菲涅尔衍射衍射原理 3
实验想法及步骤 3
实验思路 3
实验步骤 4
程序源代码: 4
运行结果展示 5
结论 7
菲涅尔衍射衍射原理
假设一个有限孔径,设孔径屏的直角坐标系为(x0,y0),并且观察平面与孔屏平行,两个平面间的间距为z,观察平面的坐标系为(x,y),这时,观察平面上的场可以表示为
U?x,y,z????dfdf?dx
?? x y
?
dyU ?x,y
0 0 0 0 0
,0?exp(j2?z 1??2f2??2f2)
? x x
(1)
??exp{j2??f
?
x
根据近轴近似条件
?x?x
0
??f
y
?y?y
0
???}
1??2
1??2f2??2f2
?1? ?2 f2?f2
(2)
x x 2 x y
同时利用傅里叶变换关系先对f,f
x y
进行积分,得到如下的菲涅尔公式
exp?jkz? ?
U?x,y,z??
?dxdyU ?x,y??exp{j
??x?x
?2??y?y
?2?}(3)
j?z
0 0 0 0 0
?
?z?
0 0 ?
令h?x,y??
exp?jkz? ?
??? ? ??exp{j x
??? ? ??
j?z ?z? ?
则式(3)可以写为
U?x,y,z???U
0
?
?x,y
0 0
?h?x?x
0
,y?y
0
?dxdy
0 0
?U?x,y??h?x,y? (4)
对(4)做傅里叶变换可以得到
A?f,f,z??A?f,f
x y 0 x y
?H?f,f
x y
,z? (5)
式中:A
0
?f,f
x y
??FFT?U ?x,y??
0
对于单位振幅入射平面波A
0
?f,f
x y
??FFT?t
0
?x,y??
H?f,f
x y
??FFT?h?x,y??
实验想法及步骤
实验思路
根据以上原理,传递函数H?f,f
x y
?已知,只需要求得透射孔径的透过率函数t
0
?x,y?,然
后对透过率函数进行傅里叶变换得,并与传递函数相乘得到A?f,f
x y
,z?,最后做一个逆傅
里叶变换得到U?x,y,z?=IFFT{A?f,f,z?}。
x y
实验步骤
用ps绘图软件做出1024*1024的像素点图,在上面绘制各种孔径图形,然后用imread()
读入图像得到二维矩阵,即孔径的透过率函数;
对孔径二维矩阵做傅里叶变换,然后与传递函数相乘,最后对乘积做一次傅里叶逆变换得到菲涅尔衍射图像。
程序源代码:
N=1024;
N=1024;
%图像像素点为1024*1024
i=imread(star.jpg);
lev=graythresh(i);u=im2bw(i,lev);
%将读入图像用01二值矩阵表示
subplot(2,2,1),imshow(u);
title(孔径图像);lam=600e-6;k=2*pi/lam;z=5000000;
[x,y]=meshgrid(linspace(-N/4,N/4,N));
U=fftshift(fft2(u));
%绘制孔径图像
%入射波长(mm)
%波矢
%观察屏距离(mm)
%对透过率函数做傅里叶变换
h=exp(1j*k*z)*exp((1j*k*(x.^2+y.^2))/(2*z))/(1j*lam*z); %空间域传递函数
H=fftshift(fft2(h));
A=fftshift(ifft2(H.*U));subplot(2,2,2),imshow(log(1+abs(A)));title(衍射图像);
I=abs(A).^2;
subplot(2,2,3),mesh(x,y,I),title(光强分布);
%空间频率域传递函数
%通过逆傅里叶变换得到衍射波的振幅
%光强
subplot(2,2,4),plot(x(1,:),I(512,:)),title(光强二维分布);
运行结果展示
图1 圆孔的菲涅尔衍射
图2方形孔的菲涅尔衍射
图3星形孔的菲涅尔衍射
图4字母B的菲涅尔衍射
结论
图5光栅菲涅尔衍射
采用这一方法理论上可以模拟任意孔型的菲涅尔衍射图像,对于学习菲涅尔衍射有了更
文档评论(0)