首页  技术文章  液晶空间光调制器(SLM)产生光栅和轨道角动量相位图的制作方法

液晶空间光调制器(SLM)产生光栅和轨道角动量相位图的制作方法

发布时间:2020-05-28 09:16:06 浏览量:34


液晶空间光调制器由像素构成,每个像素都能实现0到2pi的相位的调制量。当空间光调制器加载光栅图时能够实现光束偏转,也可以

叠加螺旋相位的图,产生轨道角动量,下文就是介绍了三种方法:1. 产生单个光栅,2. 轨道角动量,3. 多个光束叠加。


Matlab下8bit图片的单个像素表示范围可以是0-255之间的整数,也可以是0-1之间的小数,因为0-1表示有更加方便,所以下面都是

采用这种方法,即0对应相位延迟量为零,1对应相位延迟量为2pi。


光栅制作单个光斑

方法1:易于控制X和Y方向的周期数量

  %% 光栅

  % X和Y方向的斜面,取值范围0-1

  [x, y]= meshgrid(linspace(0, 1, 512));

 

  % 光栅的数量

  M = 3;

  N = 4;

  % 叠加光栅后,X方向周期为3,Y方向周期为4

  z = M*x+N*y;

  z = mod(z, 1);


  imshow(z);


方法2:对光栅偏转的角度大小更加方便

  %% 直接输入偏转角度,计算光栅

  theta = pi/6;

  % X方向周期为cos(tehta)

  % Y方向周期为sin(theta)

  z = x/cos(theta)+y/sin(theta);

  z = mod(z, 1);

  imshow(z);


轨道角动量制作

没有倾斜的角动量

  %% 因为要建立极坐标,将图片中心作为原点

  [x, y] = meshgrid(-255:256);

  polar = x+1i*y;

  r = abs(polar);

  fai = angle(polar);

  fai = mat2gray(fai);

  N = 3;      % 轨道角动量大小

  fai = mod(N*fai, 1);

  imshow(fai)


带倾斜的角动量

% 直接在光斑上叠加光栅

% z表示光栅,fai是角动量

guidao = z+fai;

guidao = mod(guidao, 1);

imshow(guidao);



多个光斑叠加

每个光斑都使用E指数的形式表示,多个光斑叠加后相位部分,这里以两个轨道角动量叠加为例

  %% 多个光斑叠加

  M = 2;

  S1 =  exp(1i*2*pi*(-M*fai))+exp(1i*2*pi*(M*fai));

  phase = angle(S1);

  % phase的范围是-pi到pi之间

  % -pi对应图片的0值,pi对应图片中的1值

  % 因此采用下面方法进行归一化

  phase = (phase + pi)/2/pi;

  phase = phase/2;

  imshow(phase);


您可以通过我们的官方网站了解更多的产品信息,或直接来电咨询4006-888-532。