以上论文中的内容基于matlab代码可以很容易得到,其结果如下
以下为论文复现的部分matlab代码
%------------------入射场的参数
r0=2e-3; %入射场半径
r1=0.091*r0;
r2=0.391*r0;
r3=0.592*r0;
r4=0.768*r0;
na=0.95; %物镜(透镜)的数值孔径
f=r0/na; %物镜(透镜)的焦距
lambda=532e-9;
k=2*pi/lambda;
%-----------------定义焦场的坐标
N=200;
range=1.5*lambda;
[xs,ys]=meshgrid(-range:(2*range)/N:range,range:-(2*range)/N:-range);%焦场坐标系的横纵坐标
zs=0;%焦场坐标z
fis=atan2(ys,xs)+pi*(abs(sign(ys))-sign(ys));%极坐标下焦场旋向坐标
rs=sqrt(xs.^2+ys.^2);%极坐标下焦场径向坐标
%----------------设置循环的参数
dfi=2*pi/50; %旋向的积分次数
dr=(r0)/50; %径向的积分次数
完整代码联系作者获取。
[1] Wang, H., Shi, L., Lukyanchuk, B., Sheppard, C. and Chong, C.T., 2008. Creation of a needle of longitudinally polarized light in vacuum using binary optics. Nature photonics, 2(8), pp.501-505.
免责声明:本公众号旨在传递更多科研相关内容及分享,所有文章图片来源均注明出处,如涉及版权问题,请作者第一时间后台联系,我们将协调进行处理,对于投稿内容文责自负。