資源簡介
此資源為基于matlab對平行光入射情況下 圓孔的菲涅爾衍射圖樣仿真的程序,圓孔孔徑可變,孔到屏距離可變,注釋詳細(xì),
代碼片段和文件信息
lemda=546.07e-3;
%?lemda=365e-3;
k=2*pi/lemda;
z=20000;%微米
%先確定衍射屏
N=300;?%圓屏采樣點(diǎn)數(shù)
r=100;
a=1;
b=1;
I=zeros(NN);
[mn]=meshgrid(linspace(-N/2N/2-1N));
%??D=((m-a).^2+(n-b).^2).^(1/2);
?D=((m).^2+(n).^2).^(1/2);
i=find(D<=r);
I(i)=1;?%孔半徑范圍內(nèi)透射系數(shù)為1
q=exp(j*k*(m.^2+n.^2)/2/z);
subplot(221);%圓孔圖像畫在2行2列的第一個(gè)位置
imshow(I);?%畫衍射屏的形狀
axis?image
title(‘衍射屏形狀‘)
L=300;
M=300;%取相同點(diǎn)數(shù)用于矩陣運(yùn)算
評論
共有 條評論