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

📄 the_xgm_soa_model.asv

📁 对半导体光放大器的交叉增益调制进行模拟
💻 ASV
字号:
function CW_out=The_XGM_SOA_Model(pump,CW) 
%模拟QD_SOA中的交叉增益型波长转换;
%程序中的三能级速率公式选自IEEE文献;
q=1.6e-19;    %单位电子电量;
c=3e8;        %真空中光速;
kB=1.38e-23;  %波耳兹曼常数;
h1=1.055e-34; %普朗克常数;
%基本的物理学常量。

L=2000e-6;    %有源区间的长;
W=1e-6  ;     %有源区的宽度;
H=120e-9 ;    %有源区的厚度;
Hw=1.0e-9;    %浸润层的厚度;
Size=W*H;                   %有源区的截面积;
nl=7;                     %QD_SOA有源区层数;
M=500;                    %QD_SOA有源区分段数;
neq=3;                    %QD_SOA有源区折射率;
Gama=1;                   %模场限制因子;
lambda=1.8e-6;            %输入波长
nju=c/lambda;             %光波频率;
g=1500;                   %最大模式增益
vg=c/neq;                 %群速度
Factor=Gama/(h1*nju*Size*g*vg)*1e6 %光功率与光子密度转化系数;
dL=L/M;                   %每一分段长度;
dt=dL*neq/c;              %光信号的时间间隔;
h=dt;                     %循环步长;
I=1.6e-6;                 %注入电流;
v=c/neq;                  %信号在QD_SOA中传输的速率;
j=I/Size;                 %输入的电流密度;             
NQ=1e18;                  %量子点的表面密度数;
tw2=6e-12;               %电子从浸润层到激发态的弛豫时间;
t2w=0.3e-9;               %电子从基态到浸润层的逃逸时间;
t21=20e-12;               %电子从激发态到基态的弛豫时间;
t12=0.5e-9;               %电子从基态到激发态的逃逸时间;
tQR=0.2e-9;               %电子在量子点的辐射寿命;
tWR=2e-9;                 %电子在浸润层的辐射寿命;
pump=Factor.*pump;
CW=Factor.*CW;
Nw_1=1.5779e+017.*ones(1,M);     %浸润层载流子密度初始化;
hn_1=0.3233.*ones(1,M);      %激发态能级密度的初始化;
fn_1=0.7215.*ones(1,M);     %基态能级密度的初始化;
S_2=zeros(1,M);         %QD_SOA中泵浦光光信号功率的初始化赋值为0;
power_2=zeros(1,M);     %QD_SOA中连续光光信号功率的初始化赋值为0;

for n=1:length(pump)
    S_1(1)=pump(n);
    S_1(2:M)=S_2(1:M-1);
    power_1=CW(n);
    power_1(2:M)=power_2(1:M-1);
    Nw_2=Nw_1+h.*(j./q./L-Nw_1.*((1-hn_1)./tw2-hn_1./t2w+1./tWR));
    hn_2=hn_1+h.*((Nw_1./NQ).*((1-hn_1)./tw2-hn_1./t2w)-...
        (1-fn_1).*hn_1./t21+fn_1.*(1-hn_1)./t12);
    fn_2=fn_1+h.*((1-fn_1).*hn_1./t21-fn_1.*(1-hn_1)./t12-...
        fn_1.*fn_1./tQR-g.*(2.*fn_1-1).*S_1./NQ);
    fn_01=fn_2;
    fn_02=fn_1+h.*((1-fn_01).*hn_1./t21-fn_01.*(1-hn_1)./t12-...
        fn_01.*fn_01./tQR-g.*(2.*fn_01-1).*power_1./NQ);
    power_2=power_1+h.*(power_1.*v.*g.*(2.*fn_2-1));
    S_2=S_1+h.*(S_1.*v.*g.*(2.*fn_2-1));
    Nw_1=Nw_2;
    hn_1=hn_2;
    fn_1=fn_2;

if n>M
        CW_out(n-M)=power_2(M);
    end 
end
CW_out=CW_out./Factor;

        

⌨️ 快捷键说明

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