MATLAB Fraunhofer Diffraction Example(Analytic Results)

该博客介绍了如何使用MATLAB来计算并分析夫琅禾费衍射现象,通过调用子函数jinc进行计算,并详细说明了x方向的像素尺寸和菲涅尔数NF的值。
摘要由CSDN通过智能技术生成
clear all;clc;

cm = 1e-2;
mm = 1e-3;
um = 1e-6;
nm = 1e-9;
%% 
L = 1*cm;                % 边长 
M = 512;                 % 边长方向上的采样点数 
dx = L/M;                % 采样间隔
x = -L/2:dx:L/2-dx; y=x; % 采样点的坐标
[X,Y] = meshgrid(x,y); 


disp(strcat('x方向的采样间隔(像素尺寸)是:',num2str(dx/um),' um'));
%%
w = 25*um;          % x half-width  这个是圆孔的半径 r  
lambda = 633*nm;    % wavelength    波长
z = 5*cm;           % prop distance 传播距离 m
k =2*pi/lambda;     % wavenumber    
lz = lambda*z; 


NF = w^2/(lambda*z);
disp(strcat('菲涅尔数 NF:',num2str(NF)));
%%
%irradiance 
I2=(w^2/lz)^2.*(jinc(w/lz*sqrt(X.^2+Y.^2))).^2; 
%%
figure(1)  %irradiance image 
imagesc(x./cm,y./cm,nthroot(I2,3)); 
xlabel('x (cm)'); ylabel('y (cm)'); 
colormap('gray'); 
axis square; 
axis xy; 


figure(2) %x-axis profile 
plot(x./cm,I2(M/2+1,:)); 
xlabel('x(cm)'); ylab
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值