方孔单模波导光子筛设计与模拟

本文介绍基于MATLAB对方孔单模波导光子筛进行设计和模拟。该光子筛用于光学系统中,用于控制光的传播和聚焦。

设计参数

  • 波长 (λ): 500 μm* 焦距 (f): 200 mm (200000 μm)* 筛面半径 (RS): 25 mm (25000 μm)

设计流程

  1. 计算环带参数: 根据波长和焦距计算光子筛的环带数、环宽等参数。2. 计算孔径分布: 根据环带参数计算每个环带中最大容纳的孔数、孔径以及孔的分布位置。3. 生成光子筛结构: 根据计算得到的参数,生成光子筛的结构数据,包含每个孔的坐标和尺寸信息。

MATLAB 代码实现matlabclear alltic;format long;

%%%unit μm

lambda = 500; %波长为500μmk = 2*pi/lambda;f = 200000; %焦距为200mm 即200000微米RS=25000; %筛面半径25mm 即25000微米Ni=floor((sqrt(RS^2. + f^2)-f)/lambda);%环带数

intiall=32;counter1(1)=0;for i=1:Ni %a/w=0.24时最大 w_a(i)=sqrt(((i-0.25)*lambda+f)^2-f^2)-sqrt(((i-0.75)*lambda+f)^2-f^2);%亮环总环宽 n_a(i)=1;%floor(w_a(i)/1.2/lambda);%每个环带最大容纳的环数 counter1(i+1)=counter1(i)+n_a(i); for ii=1:n_a(i) r_a(counter1(i)+ii)=sqrt(((i-1+0.5)*lambda+f)^2-f^2); end r_n(i)=sqrt(((i)*lambda+f)^2-f^2);end% r_n(Ni+1)=sqrt(((i+1/intiall)lambda+f)^2-f^2)-1/2/n_a(i)w_a(i); %环带区分线Na=sum(n_a);%%counter2(1)=0;for nn=1:Na;%所有环数 数列 % neff(nn)=(1-rem(sqrt(r_a(nn).^2+f^2)/lambda,1))/5+0.6;%通过在环带上的位置计算所需的有效折射率 a(nn)=lambda;% lambda/2/sqrt(1-neff(nn).^2); Nm(nn)=floor(2pir_a(nn)/1.5/a(nn)); counter2(nn+1)=counter2(nn)+Nm(nn);endAllholes=sum(Nm);

%%Sieve=zeros(Allholes,3);for i=1:Na dtheta=2pi/Nm(i); for ii=1:Nm(i) theta=iidtheta; x=r_a(i)*cos(theta); y=r_a(i)*sin(theta); Sieve(counter2(i)+ii,:)=[x,y,a(i)]; endend

%% 画光子筛X=Sieve(:,1)';Y=Sieve(:,2)';D=Sieve(:,3)';figure ('color',[1 1 1]);% plot(X,Y,'x');for i=1:(Ni) rectangle('Position',[-r_n(i),-r_n(i),2r_n(i),2r_n(i)],'Curvature',[1 1]);end%rectangle('Position',[-RS,-RS,2RS,2RS],'Curvature',[1 1]);for i=1:length(Sieve) rectangle('Position',[X(i)-D(i)/2,Y(i)-D(i)/2,D(i),D(i)]);endaxis equal;axis off;% axis([0 25000 -5000 300]);%%%方孔单模波导光子筛aa=-10000:10:10000;bb=-10000:10:10000;[X,Y]=meshgrid(aa,bb);S=Sieve;U=zeros(2001,2001);dU=zeros(2001,2001);for i=1:size(S,1) xn=S(i,1); yn=S(i,2); an=S(i,3); % nf=S(i,4); Nf=an^2f/2/lambda; Xp=X-xn; Yp=Y-yn; H2 =((X-xn).^2 + (Y-yn).^2 + f^2); H1=sqrt(H2); Fa=Nf./(H2); % phase=rem(H1-f+nf5lambda,lambda)/lambda; phase=rem(H1-f,lambda)/lambda; phase_term=exp(1i2piphase); wavetype=(sinc(an.*Xp./lambda./H1+1/2)+sinc(an.Xp./lambda./H1-1/2)).(sinc(an.*Yp./lambda./H1)); dU=Fa.*wavetype.*phase_term; U=U+dU; endU3=abs(U);

figure ('color',[1 1 1]);% plot(U3(2,:)/max(U3(2,:)));axis([0 2001 -inf inf]);plot(U3(1001,:));axis([0 2001 -inf inf]);set(gca,'XTick',1:500:2001);set(gca,'XTicklabel',{' '-10,'-5','0','5','10'});x1=xlabel('X/mm'); %x轴标题x2=ylabel('Normalized amplitude'); %z轴标题

结果分析

  • 通过MATLAB代码,我们可以计算出光子筛的环带数、环宽、孔径以及孔的分布位置等参数。* 根据这些参数,可以绘制出光子筛的结构图,直观地展示光子筛的几何形状。* 通过模拟光场在光子筛上的传播过程,可以得到光场分布图,用于评估光子筛的聚焦性能。

结论

本文介绍了一种基于MATLAB设计和模拟方孔单模波导光子筛的方法。该方法可以帮助我们快速设计出符合要求的光子筛,并评估其性能。

方孔单模波导光子筛设计与模拟

原文地址: https://www.cveoy.top/t/topic/bWVT 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录