You are on page 1of 2

%%%%%%%%%%%%%%%%% Solving the Laser Rate Equation

%%%%%%%%%%%%%%%%% DFB LASER DIODE PARAMETERS % 1.55micron ; InGaAsP/InP ; 2


Gbit/s ; 40 Km %%%%%%%%%%%%%%%%%%%

global q
global Vg
global Beta
global Imax
global Mune
global Gamma
global Anull
global Nnull
global Epsil
global Tphot
global Tcarr
global Vactv
global Alpha
global Trise
global Ibias
global MidLamda
global SpecWidth
Gamma = 0.8 ; % OPTICAL CONFINEMENT FACTOR 0.8 %
Anull = 3.2e-20; % GAIN COEFFICIENT %
Vg = 7.5e+7 ; % GROUP VELOCITY %
Nnull = 1.0e+12; % CARRIER DENSITY AT TRANSPARENCY %
Epsil = 2.5e-23; % GAIN COMPRESSION FACTOR %
Tphot = 3.0e-12; % PHOTON LIFE-TIME %
Beta = 3.0e-5 ; % FRACTION OF SPONTANEOUS EMISSION %
Tcarr = 0.3e-9 ; % CARRIER LIFE-TIME %
q = 1.6e-19; % ELECTRON CHARGE %
Vactv = 1.5e-16; % ACTIVE VOLUME LAYER %
Alpha = 5 ; % LINE WIDTH ENHANCEMENT FACTOR %
Trise = 1e-12; % RISE TIME - 1 ps version oc2000_1
Ith = q/Tcarr*Vactv*(Nnull+1/Gamma/Anull/Vg/Tphot); % Threshold current
Ibias = 7.1*Ith ; % BIAS CURRENT
Imax = 9.0*Ith ; % Maximum Input Current
Mune = 0.042 ; % TOTAL DIFFERENTIAL QUANTUM EFFICIENCY %
% if Channel ==1
% MidLamda = 1553.3*1e-9; % Operating Wavelength of Laser Source = 1553.8 nm to
match with centre of AWG see mulplex %
% change from 1553.8nm to 1553.3nm to match with ITU-grid AC and GA
% else
MidLamda = OpLamda(Channel);
% end
SpecWidth = 40e-15; % Laser Source Spectral Line Width=10 MHz linewidth set %

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%% Solving The Rate equations

function rate=laser_cw(t,y)
global q
global Vg
global Nsd
global Ssd
global Beta
global Gamma
global Anull
global Nnull
global Epsil
global Tphot
global Tcarr
global Vactv
global Alpha
global Trise
global Ibias
global Sigma
global Imax
global dummy
global Initial
global InPulse
global BitPeriod
Nsd=1/(Gamma*Anull*Vg*Tphot)+Nnull ;
Ssd=(Tphot/Tcarr)*Nsd*(Imax/Ibias-1) ;
Sigma=2e-20 ;
%---- Computing Rate Equations -----------
rate=zeros(3,1);

rate(1)=(Gamma*Anull*Vg*((y(2)-Nnull)/(1+Epsil*y(1)))-
1/Tphot)*y(1)+Beta*Gamma*y(2)/Tcarr+randn*sqrt(2*Beta*Vactv*Nsd*(Vactv*Ssd+1)^3/Tca
rr) ;
rate(2)=dgcoding(t,InPulse)/(q*Vactv)-y(2)/Tcarr-Vg*Anull*y(1)*(y(2)-Nnull)/
(1+Epsil*y(1) )+randn*sqrt(2*Vactv*Nsd/Tcarr*(Beta*Vactv*Ssd+1)) ;
rate(3)=Alpha*(Gamma*Vg*Anull*(y(2)-Nnull)-
1/Tphot)/2+randn*sqrt(Gamma*Vg*Sigma*(y(2)-Nnull)/y(1)) ;
if t<0
rate=Initial;
end
dummy=dummy+1;
if dummy>=50
% waitbar(t/(BitPeriod*size(InPulse,2) ) ) ;

dummy=0 ;
end