任意孔型菲涅尔衍射matlab仿真

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

菲涅尔衍射Matlab仿真——《高等物理光学》实验报告学院:物理学院姓名:廖宝鑫学号:201628017307002目录1.菲涅尔衍射衍射原理.........................................................................................32.实验想法及步骤.................................................................................................32.1实验思路...................................................................................................32.2实验步骤...................................................................................................43.程序源代码:.....................................................................................................44.运行结果展示.....................................................................................................55.结论.....................................................................................................................71.菲涅尔衍射衍射原理假设一个有限孔径,设孔径屏的直角坐标系为(x0,y0),并且观察平面与孔屏平行,两个平面间的间距为z,观察平面的坐标系为(x,y),这时,观察平面上的场可以表示为222200000002,,,,0exp(j1)exp{j2}xyxxxyzUxyzdfdfdxdyUxyfffxxfyy(1)根据近轴近似条件22222221112xxxyffff(2)同时利用傅里叶变换关系先对,xyff进行积分,得到如下的菲涅尔公式220000000expjkz,,,exp{j}UxyzdxdyUxyxxyyjzz(3)令22expjkz,exp{j}hxyxyjzz则式(3)可以写为0000000,,,,y,,yUxyzUxyhxxydxdyUxyhx(4)对(4)做傅里叶变换可以得到0,,,,,xyxyxyAffzAffHffz(5)式中:00,,xyAffFFTUxy对于单位振幅入射平面波00,,xyAffFFTtxy,,xyHffFFThxy2.实验想法及步骤2.1实验思路根据以上原理,传递函数,xyHff已知,只需要求得透射孔径的透过率函数0,txy,然后对透过率函数进行傅里叶变换得,并与传递函数相乘得到,,xyAffz,最后做一个逆傅里叶变换得到,,=IFFT{,,}xyUxyzAffz。2.2实验步骤1)用ps绘图软件做出1024*1024的像素点图,在上面绘制各种孔径图形,然后用imread()读入图像得到二维矩阵,即孔径的透过率函数;2)对孔径二维矩阵做傅里叶变换,然后与传递函数相乘,最后对乘积做一次傅里叶逆变换得到菲涅尔衍射图像。3.程序源代码:N=1024;%图像像素点为1024*1024i=imread('star.jpg');%将读入图像用01二值矩阵表示lev=graythresh(i);u=im2bw(i,lev);subplot(2,2,1),imshow(u);%绘制孔径图像title('孔径图像');lam=600e-6;%入射波长(mm)k=2*pi/lam;%波矢z=5000000;%观察屏距离(mm)[x,y]=meshgrid(linspace(-N/4,N/4,N));U=fftshift(fft2(u));%对透过率函数做傅里叶变换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('光强二维分布');4.运行结果展示图1圆孔的菲涅尔衍射图2方形孔的菲涅尔衍射图3星形孔的菲涅尔衍射图4字母B的菲涅尔衍射图5光栅菲涅尔衍射5.结论采用这一方法理论上可以模拟任意孔型的菲涅尔衍射图像,对于学习菲涅尔衍射有了更直观、形象的认识。

1 / 7
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功