天天看點

大氣湍流自适應光學校正算法matlab仿真,包括渦旋光束,大氣湍流影響,不同軌道角動量OAM态之間的串擾,校正等1.算法描述2.仿真效果預覽3.MATLAB核心程式4.完整MATLAB

目錄

1.算法描述

2.仿真效果預覽

3.MATLAB核心程式

4.完整MATLAB

1.算法描述

       渦旋光束是一種具有螺旋波前的光束,在渦旋光束中,決定渦旋光束特性的角量子數可以是任意一個自然數,其不同設定所産生的渦旋光束之間存在正交關系。目前,産生渦旋光束的方式很多種,總的來講,包括腔外光束産生方式和腔内光束産生方式兩種類型。第一種産生方式,其主要通過諧振器件來得到髙斯光束,然後将高斯光束通過特殊的相位元件來達到空間整形的目的,繼而産生相應的渦旋光束。第二種産生方式,其直接進行空間相位整形,并在諧振腔内得到相應的渦旋光束。第二種産生方式也就是常見的渦旋雷射器。目前為止,渦旋光束有着極其廣泛的應用前景,包括生物醫學領域,原子實體學領域,材料科技以及雷射等多個領域。

    但是渦旋光束在大氣中傳輸的時候,由于受到各種大氣因素的幹擾,如光線幹擾,天氣影響,氣溫壓強變化,進而導緻大氣折射率的改變。此時,渦旋光束在傳輸過程中會受到大氣折射率的影響,進而導緻渦旋光束在大氣傳播時,出現諸如光束擴充、光束抖動、渦旋光束的OAM譜彌散,串擾等問題,即大氣湍流效應[02,03] 。

    是以,對受到大氣湍流影響的渦旋光束進行校正就顯得格外重要,傳統的光學校正,其工作流程主要分為五個步驟。

    第一、渦旋光束受到大氣湍流的影響而導緻了相位的畸變、串擾等問題。

    第二、相位畸變和串擾等影響了通信品質;

    第三、加入自适應光學校正子產品,得到預校正的渦旋光束,控制相位和光強分布;

    第四、自适應光學校正子產品減少了渦旋光束的相位的畸變、串擾等問題。

    第五、改善通信名額,提升了通信性能。

    但由于渦旋光束有其特殊的相位特性和光強度分布特性,使得傳統的光學校正方法無法達到校正效果,是以研究一種适用于受到大氣湍流影響的渦旋光束的自适應校正技術具有十分重要的意義。

      渦旋光束是一種具有OMA軌道角動量的雷射光束,其相位呈現為螺旋分布狀态,但光束中心處的相位是未知的。Allen等人提出了渦旋光束的相位可以通過如下公式表示:

大氣湍流自适應光學校正算法matlab仿真,包括渦旋光束,大氣湍流影響,不同軌道角動量OAM态之間的串擾,校正等1.算法描述2.仿真效果預覽3.MATLAB核心程式4.完整MATLAB

      渦旋光束有多種表現形式,如貝塞爾光束,拉蓋爾-高斯光束以及環形渦旋光束等。其中環形渦旋光束是以高斯光束為基礎實作的,其計算表達式為: 

大氣湍流自适應光學校正算法matlab仿真,包括渦旋光束,大氣湍流影響,不同軌道角動量OAM态之間的串擾,校正等1.算法描述2.仿真效果預覽3.MATLAB核心程式4.完整MATLAB

      貝塞爾光束中包含貝塞爾函數,他是一種空心光束,貝塞爾光束屬于一種經典的渦旋光束。其表達式為:

大氣湍流自适應光學校正算法matlab仿真,包括渦旋光束,大氣湍流影響,不同軌道角動量OAM态之間的串擾,校正等1.算法描述2.仿真效果預覽3.MATLAB核心程式4.完整MATLAB

   大氣湍流的基本原理最早是由Kolmogorov在二十世紀四十年代提出的,在其原理中提供通過大雷諾茲數來表示湍流的内部結構,進而推進了湍流理論的發展,是以基于大雷諾茲數的湍流理論奠定了現代湍流理論的基礎[13]。

       在Kolmogorov的湍流理論中的相關定義可知,流體具有層流和湍流兩種不同的狀态。其中,當流體運作速度較低的時候,流體的流線比較平滑,是以流體處于層流狀态。而當流體運作速度較大的時候,流體的流線将變得随機不規則,那麼這種狀态就是流體的湍流。層流和湍流的示意圖如下圖所示:

大氣湍流自适應光學校正算法matlab仿真,包括渦旋光束,大氣湍流影響,不同軌道角動量OAM态之間的串擾,校正等1.算法描述2.仿真效果預覽3.MATLAB核心程式4.完整MATLAB

        由Kolmogorov的湍流理論可知,大氣湍流情況和流體湍流類似,兩者不同之處在于其實體性質不同,由于受到光線幹擾,天氣影響,氣溫壓強變化等因素的影響,大氣一直處于流動狀态,進而産生不同壓強、流速、氣壓的旋渦,如圖2.4所示。然後多個旋渦互相影響,互相關聯和重疊,共同作用下産生了大氣湍流現象。大氣湍流會導緻折射率的改變。是以,渦旋光束在大氣中傳輸會受到大氣折射率的影響,進而導緻渦旋光束的光束擴充、光束抖動、OAM譜彌散,串擾等問題。

    渦旋光束在大氣湍流中傳輸時,光束将發生波前畸變,随後渦旋光束的光強度将呈現非均勻分布,明暗度不一,光斑的外形将發生嚴重扭曲并且目标的OAM能量占比将明顯下降。是以需要對畸變的光束進行校正,使得光強分布變得均勻,光斑的外形将得到進一步規整,并且目标的OAM能量占比将得以提高。

2.仿真效果預覽

matlab2022a仿真結果如下:

大氣湍流自适應光學校正算法matlab仿真,包括渦旋光束,大氣湍流影響,不同軌道角動量OAM态之間的串擾,校正等1.算法描述2.仿真效果預覽3.MATLAB核心程式4.完整MATLAB
大氣湍流自适應光學校正算法matlab仿真,包括渦旋光束,大氣湍流影響,不同軌道角動量OAM态之間的串擾,校正等1.算法描述2.仿真效果預覽3.MATLAB核心程式4.完整MATLAB
大氣湍流自适應光學校正算法matlab仿真,包括渦旋光束,大氣湍流影響,不同軌道角動量OAM态之間的串擾,校正等1.算法描述2.仿真效果預覽3.MATLAB核心程式4.完整MATLAB
大氣湍流自适應光學校正算法matlab仿真,包括渦旋光束,大氣湍流影響,不同軌道角動量OAM态之間的串擾,校正等1.算法描述2.仿真效果預覽3.MATLAB核心程式4.完整MATLAB
大氣湍流自适應光學校正算法matlab仿真,包括渦旋光束,大氣湍流影響,不同軌道角動量OAM态之間的串擾,校正等1.算法描述2.仿真效果預覽3.MATLAB核心程式4.完整MATLAB

      從圖仿真結果可知,随着傳輸距離的不斷增加,渦旋光束通過有湍流傳輸之後,其光強度分布随着傳輸距離的增加而不斷分散,相位相位的“每一扇葉片”的分界處随着傳輸距離的變得更加模糊。而通過自适應校正之後,渦旋光束的強度和相位均得到了有效的校正。其光強度分布更叫均勻,但是在相位跳變區域,随着距離的增加,通過自适應校正後仍存在一定的影響。

3.MATLAB核心程式

%%
%大氣湍流的實體特性分析
Dist = [0:2000:20000];
 
figure;
indx = 0;
rad1 = [];
for L=Dist
    indx      = indx + 1;
    Cn        = 8*10^(-9); 
    th        = 4.03*Cn.^(6/5)*0.6328.^(-1/5)*L.^(3/5); 
    rad1(indx)= th*L; 
end 
plot(Dist,rad1,'b-o')  
% title('渦旋光束光斑尺度和傳輸距離的關系') 
xlabel('傳輸距離') 
ylabel('渦旋光束光斑尺度') 
 
figure;
indx = 0;
rad2 = [];
Cset = [0:20*10^(-9):500*10^(-9)];
for Cn = Cset
    indx       = indx + 1;
    L          = 100; 
    th         = 4.03*Cn.^(6/5)*0.6328.^(-1/5)*L.^(3/5); 
    rad2(indx) = th*L; 
end 
plot(Cset,rad2,'b-o') 
% title('渦旋光束光斑尺度和湍流強度的關系') 
xlabel('湍流強度') 
ylabel('渦旋光束光斑尺度') 
 
 
figure;
indx = 0;
alf  = [];
Dist = [0:2000:20000];
for L= Dist 
    indx      = indx + 1;
    Cn        = 8*10^(-9); 
    alf(indx) = sqrt(1.75*Cn*Cn*L*3.2^(-1/3)*10^(-18)); 
end 
plot(Dist,alf,'b-o') 
% title('渦旋光束光斑偏移角度和傳輸距離的關系') 
xlabel('傳輸距離') 
ylabel('渦旋光束光斑偏移角度') 
 
figure;
indx = 0;
Cset = [0:20*10^(-9):500*10^(-9)];
alf  = [];
for Cn=Cset 
    indx      = indx + 1;
    L         = 1000; 
    alf(indx) = sqrt(1.75*Cn*Cn*L*3.2^(-1/3)*10^(-18)); 
end 
plot(Cset,alf,'b-o') 
xlabel('湍流強度') 
ylabel('渦旋光束光斑偏移角度') 
 
figure;
indx = 0;
B    = 0.49;
Dist = [0:500:20000];
I    = [];
for  L=Dist 
     indx   = indx + 1;
     Cn     = 8*10^(-9); 
     I(indx)= B*(2*pi/0.6328).^(7/6)*L.^(11)*Cn.^2*10^(-18); 
end 
plot(Dist,I,'b-o') 
xlabel('傳輸距離') 
ylabel('渦旋光束光強起伏')
 
figure;
indx = 0;
B    = 0.49; 
Cset = [0:20*10^(-9):500*10^(-9)];
I    = [];
for Cn=Cset
    indx   = indx + 1;
    L      = 1000; 
    I(indx)= B*(2*pi/0.6328).^(7/6)*L.^(11)*Cn.^2*10^(-18); 
end 
plot(Cset,I,'b-o') 
xlabel('湍流強度') 
ylabel('渦旋光束光強起伏') 
 
%%
%光線通過大氣湍流的變換仿真分析
N         = 300;
w0        = 0.03;
s         = 5;
z         = 1000;
lamda     = 1.550e-6;
k         = 2*pi/lamda;
z0        = k*w0^2/2;
%圖像坐标範圍
b         = 0.2;
dx        = b/N;
Cn2       = 1e-15;
%傳輸距離
Numz      = 20;%把傳播距離分成Numz段
dz        = z/Numz;%每段的距離
m2        = [-N/2:N/2-1];
[r,theta] = meshgrid(linspace(0,b,N),linspace(0,2*pi,N));
[x,y]     = pol2cart(theta,r);
%視窗寬度
L         = 0.7;
df        = 1/L;
%空間頻率
[fx,fy]   = meshgrid(m2*df);
fr        = sqrt(fx.^2+fy.^2);
kx        = 2*pi*fx;
ky        = 2*pi*fy;
kr        = 2*pi*fr;
A         = sqrt(2/(pi*gamma(abs(s)+1)));
%發射光束的表達式
u0        = A*exp(-r.^2/w0^2).*(sqrt(2)*r/w0).^s.*exp(1i*s*theta);
u         = u0;
phi       = func_influence(lamda,z,Cn2);
for j=1:Numz
      u1 = fft2(exp(1i*phi).*u);
      u1 = fftshift(u1);
      u  = ifft2(ifftshift(exp(1i*k*dz)*exp(-1i*dz*kr.^2/(2*k)).*u1));
end
 
%強度和相位圖
[X,Y] = meshgrid(m2*dx);
uz    = griddata(x,y,u,X,Y);
A141
           

4.完整MATLAB

V

繼續閱讀