700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Matlab:实现菲涅尔矩形孔衍射仿真

Matlab:实现菲涅尔矩形孔衍射仿真

时间:2024-06-09 14:07:50

相关推荐

Matlab:实现菲涅尔矩形孔衍射仿真

本文基于光学原理,用Matlab实现菲涅尔矩形孔衍射现象仿真。

Project Code
代码理解:参看Matlab:实现菲涅尔圆孔衍射仿真

% 作者:ZQJ% 日期:.7.23 星期五%***********************菲涅尔矩形孔衍射**************************%% 菲涅尔衍射傅里叶变换clear,clc,close all;allmasks = f_Masks;func_translight = f_Lightfield_transmission;% ********************** 系统参数设定lamda = 1550e-9;% 波长N = 500; % 一边像素数目x_length = 0.01;% 矩阵长度w0 = 1e-3; % 高斯光束腰半径Gs_z = 1e-3; % 高斯光传输距离% ********************** 菲涅尔衍射mask_hole = allmasks.rect_hole(x_length/N,N,18*x_length/N,26*x_length/N);figure; subplot(1,2,1), imagesc(mask_hole); colormap gray;Gaussian_I = f_Gaussian_beams(w0,Gs_z,lamda,x_length,x_length,N,N);subplot(1,2,2),imagesc(Gaussian_I), colormap hot;E0 = Gaussian_I.*mask_hole;E1 = func_translight.FFT_(lamda,E0,x_length,x_length,0.1);figure,imagesc(abs(E1)), colormap hot;

仿真结果图:
衍射前:

菲涅尔矩形孔衍射光强图:

专栏内容供作者本人或大家学习使用,多多指教~

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。