Matlab:实现轴对称矢量光束聚焦

本文基于光学原理,用Matlab实现轴对称矢量光束聚焦仿真。


Project Code
% 作者:ZQJ
% 日期:2022.3.24 星期四

clear,clc,close all;
func_translight = f_Lightfield_transmission;
% 基本参数输入*****************************
L = 1;               % 拓扑荷阶数 
lamda = 1550e-9;
w0 = 1e-3;           % 束腰半径
z0 = 0.2;            % 光束传输距离
light_length = 5e-3; % 光场边长
N = 1024;            % 矩阵像素
ER = [1,1i];
EL = [1,-1i];
[x0,y0] = meshgrid(linspace(-light_length/2,light_length/2,N)); 
theta = atan2(y0,x0);                         

gaussian_I = f_Gaussian_beams(w0,z0,lamda,light_length,light_length,N,N); 
E0_R = gaussian_I.*exp(1i*L.*theta);
E1_R = func_translight.FFT_(lamda,E0_R,light_length,light_length,0.4);    
E0_L = gaussian_I.*exp(-1i*L.*theta);
E1_L = func_translight.FFT_(lamda,E0_L,light_length,light_length,0.4);  

figure,subplot(2,2,1),imagesc(abs(E1_R).^2),colormap(subplot(2,2,1),hot);axis off;axis square;
subplot(2,2,2),imagesc(angle(E1_R)),colormap(subplot(2,2,2),gray);axis off;axis square;
subplot(2,2,3),imagesc(abs(E1_L).^2),colormap(subplot(2,2,3),hot);axis off;axis square;
subplot(2,2,4),imagesc(angle(E1_L)),colormap(subplot(2,2,4),gray);axis off;axis square;

f = 0.03;
Lens_phase = exp(-1i*pi/lamda/f*(x0.^2+y0.^2));
figure,imagesc(angle(Lens_phase)),colormap gray;axis off;axis square;

ER_x = E1_R .* ER(1) .* Lens_phase;
ER_x = func_translight.FFT_(lamda,ER_x,light_length,light_length,f);   
ER_y = E1_R .* ER(2) .* Lens_phase;
ER_y = func_translight.FFT_(lamda,ER_y,light_length,light_length,f);   
EL_x = E1_L .* EL(1) .* Lens_phase;
EL_x = func_translight.FFT_(lamda,EL_x,light_length,light_length,f);   
EL_y = E1_L .* EL(2) .* Lens_phase;
EL_y = func_translight.FFT_(lamda,EL_y,light_length,light_length,f); 

figure,subplot(1,3,1),imagesc(abs(ER_x+EL_x).^2);axis off;axis square;
subplot(1,3,2),imagesc(abs(ER_y+EL_y).^2);axis off;axis square;
subplot(1,3,3),imagesc(abs(ER_x+EL_x).^2 + abs(ER_y+EL_y).^2);axis off;axis square;colormap hot;

专栏内容供作者本人或大家学习使用,多多指教 ~

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值