📄 fresnell.m
字号:
%菲涅耳积分傅里叶变换方法
function [f1,dx1,dy1,x1,y1] = fresnell(f0,M,N,dx0,dy0,z,lambda)
k=2*pi/lambda;
x0=ones(N,1)*[-M/2:M/2-1]*dx0;
y0=[-N/2:N/2-1]'*ones(1,M)*dy0; %Input f0 is in natural order
g=f0.*exp(i*0.5*k*(x0.^2+y0.^2)/z); %First phase factor
G=fftshift(fft2(fftshift(g))); %Fourier transform
du=1./(M*dx0);
dv=1./(N*dy0);
dx1=lambda*z*du;
dy1=lambda*z*dv;
x1=ones(N,1)*[-M/2:M/2-1]*dx1;
y1=[-N/2:N/2-1]'*ones(1,M)*dy1; %Baseline for output
f1=G.*exp(i*0.5*k*(x1.^2+y1.^2)/z); %Second phase factor
f1=f1./(i*lambda*z);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -