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

📄 reflectancespectrum.m

📁 matlab模拟光纤光栅特性的算法与代码
💻 M
字号:
L=0.01;
neff=1.447;
c=1*1e-7/(2*neff);
deltaneff=0.0004;
N=100;
M=2000;
lamda1=1548;
lamda2=1552;
lamda=linspace(lamda1*1e-9,lamda2*1e-9,M);
deltalamda=(lamda2*1e-9-lamda1*1e-9)/(M-1);
for k=1:M
    F=[1,0;0,1];
    for n=1:N

deltaneff_z=deltaneff;
  %g=4;
   % deltaneff_z=deltaneff*exp(-g*g*((2*n-1-N)/(2*N))^2);
  %  H=0.5;
  %deltaneff_z=deltaneff*(1+H*cos(pi*(2*n-1-N)/N))/(1+H);
    lamdaD=1550*1e-9-L*neff*c+2*neff*c*(L*n/N-0.5*L/N);
    sigma=2*pi*neff*(1/lamda(k)-1/lamdaD)+2*pi*deltaneff_z/lamda(k)+(4*pi*neff)*c*(2*(neff+deltaneff))*(-L/2+n*L/N)/lamdaD^2;
    kac=pi*deltaneff_z/lamda(k);
    RB=sqrt(kac^2-sigma^2)+eps;
    F=F*[cosh(RB*L/N)-(sigma/RB)*sinh(RB*L/N)*1i,-(kac/RB)*sinh(RB*L/N)*1i;(kac/RB)*sinh(RB*L/N)*1i,cosh(RB*L/N)+(sigma/RB)*sinh(RB*L/N)*1i];
    end
    R(k)=(abs(F(2,1)/(F(1,1)+eps)))^2;
   z=F(2,1)/(F(1,1)+eps);
   Q(k)=angle(z);

    if Q(k)<0                      %angle0-2pi
         Q(k)=2*pi+Q(k);
         end  
 
end
  for  a=2:M-1
     if   abs(Q(a)-Q(a+1))>=pi
       dQ(a)=(Q(a)-Q(a-1))/deltalamda;

      else
          dQ(a)=(Q(a+1)-Q(a))/deltalamda;
     end
end
dQ(1)=dQ(2);
lamda1=lamda(1:M-1);
tao=(-1/(2*pi*3*1e8))*(lamda1.*lamda1).*dQ; 

hold on;
%subplot(1,2,1)

plot(lamda,R,'k')
title('反射谱')

hold off

%{
hold on;
%subplot(1,2,2)
plot(lamda1,tao,'r')
title('时延')
hold off
%}

⌨️ 快捷键说明

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