⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gauss.m

📁 光纤对各种类型的高斯光束的不同非线性作用
💻 M
字号:
N=1024;
T0=10;
t=linspace(-15,15,N);
C=0;
%u0=exp(-t.*t/2);    %高斯脉冲
%u0=sech(t).*exp(-i*C*t.^2/2);              %双曲正割脉冲       
%u0=exp(-(1+i*C)/2*t.^2);                 %啁啾高斯脉冲
 m=3;                                        %超高斯脉冲
 u0=exp(-(1+i*C)*t.^(2*m)/2);
% u0=tripuls(t);
u2=u0.*conj(u0);          %强度?
ts=t(2)-t(1);
fs=1/ts;
f=fs*(-N/2:N/2-1)/N;
beta2=-20;
beta3=0;
if beta2==0
    Ld=T0.^3/abs(beta3);
else
    Ld=T0.^2/abs(beta2);
end
 z=20;
h0=1/500;
u3=ones(N,z-1);
r=2;
P0=10e-2;
Lnl=1/(r*P0);
N2=Ld/Lnl;
for k=1:z
    
    h=h0;
    while h<=1,  %若h过大,可能所得的波形会出现振荡,可以增加时间窗口
         u0=u0.*exp(i*h0*N2*abs(u0).^2);
        v0=fft(u0); %通常要求时间窗口尺寸是脉冲宽度的10-20倍
        %v0=fftshift(v0);
        d=i*sign(beta2)*(2*pi*f).^2/2;%只考虑二阶色散;
        
%         d=i*beta2*(2*pi*f).^2/2+i*beta3*(2*pi*f).^3/6;%考虑2、3阶色散;
        d=fftshift(d);
        v1=exp(h0*d).*v0;
        u1=ifft(v1);
       % u1=ifftshift(u1);
        h=h+h0;
        u0=u1;
  end
  u3(:,k)=u0.*conj(u0);
 end

u3=[u2' u3];
x=zeros(N,z);
y=zeros(N,z);
for k=1:z
    x(:,k)=k-1;
    y(:,k)=t';
end
z=[1:1:z];
plot3(x(:,z),y(:,z),u3(:,z));
%plot(t/T0,v0);
%xlable('T/T0');
%ylable('z/Ld');
%zlable('|U(z,T)|^2');
grid on;
%u3=u3';
%plot(t/T0,u3(1,:),'r',t/T0,u3(5,:),'o');
%hold on;
%[T,z]=meshgrid(t/T0,0:1:20);
%plot3(T,z,abs(u3).^2);
%plot(t/T0,abs(u2).^2,'m',t/T0,abs(u0).^2,'r');
%hold on
%高斯脉冲的理论解
%U=T0/sqrt((T0.^2-i*beta2*4*Ld))*exp(-t.^2/(2*(T0.^2-i*beta2*4*Ld)));
%plot(t/T0,abs(U).^2,'b');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -