Relatório: Fotónica 1 1. Resolução numérica de equações diferenciais ordinárias Na simulação numérica da modulação directa da corrente de injecção em lasers semicondutores há que resolver as equações das taxas. Considera-se, aqui, o caso dos lasers semicondutores monomodais. Estas equações regulam a evolução temporal, na zona activa do laser semicondutor, das populações totais de electrões N (envolvidos nos processos de geração e recombinação) e de fotões S, tendo-se equações das taxas ds dt = Γ R + R R dn = R p R t dt st sp a em que Γ< 1 representa o factor de confinamento óptico (o modo de oscilação laser não fica 1 exactamente confinado à zona activa). As várias taxas intervenientes têm unidades ( s ) e são: (i) a taxa de bombeamento R p ; (ii) a taxa total de recombinação (de pares electrãolacuna) R t ; (iii) a taxa efectiva líquida de emissão estimulada R st ; (iv) a taxa contributiva de emissão espontânea R sp ; (v) a taxa efectiva de aniquilação de fotões R a (relacionada com o tempo de vida médio τ p dos fotões na cavidade laser). Shun Lien Chuang, Physics of Optoelectronic Devices (New York: Wiley, 1995), Chapter 11 (pp. 487-507). Tem-se
Carlos R. Paiva I N Rp =, Rt = Rst + R, Rst = GS, R sp = βsp Rsp, Ra = q τ p em que I representa a corrente de injecção (sendo q o valor da carga do electrão, considerada aqui como positiva), G a taxa elementar líquida de emissão estimulada e β sp o coeficiente de emissão espontânea contributiva (i.e., a pequena parcela da taxa de emissão espontânea total R sp que contribui para a emissão estimulada). A taxa R, que integra a taxa total de recombinação R t, representa a taxa de aniquilação de electrões e é dada por N R =. τ c Em geral τ c, que é o tempo de vida médio dos electrões, depende de N. Para simplificar a análise considera-se, frequentemente, que τ c é uma constante. A taxa G através da expressão R sp relaciona-se com R = β R = n G sp sp sp sp em que n sp é o chamado coeficiente de inversão da população. As equações das taxas assumem, portanto, a forma explícita equações das taxas ds dt S = Γ GS+ nspg τ dn I N = GS dt q τ c p e, para serem resolvidas, necessitam que se adopte um modelo que relacione G com N e S. Um modelo possível (não linear) é ( ) GN N N G = 1+ ε S t
Relatório: Fotónica 3 onde G N, N t e ε são constantes que caracterizam este modelo específico. A resolução numérica das equações das taxas enquadra-se, portanto, no quadro mais geral da resolução numérica de equações diferenciais ordinárias. Apresenta-se, a seguir, um caso concreto de um sistema de duas equações diferenciais ordinárias que pertence à mesma classe das equações das taxas. Considere-se, com efeito, que 1 1( z) ( ) ( ) ( z) ( ) ( ) dp Bp 1 = Ap 1 ( z) 1 dz 1 + p1 z + p z dp B p = Ap 1( z) 1 dz 1 + p1 z + p z onde A1, B1, A, B e p 1, p : são funções conhecidas. Note-se que, neste problema, a coordenada espacial z desempenha o papel do tempo t nas equações das taxas. Para a resolução deste novo sistema é necessário conhecer as condições iniciais z = 0 p p ( 0) ( 0) = a. = b 1 0 0 Apresenta-se, então, um programa MATLAB que permite resolver este novo problema. constantes escolhidas A = 1 1 A = 1 B = B 1 = 1 a b 0 0 = 10 = 1 [ ] intervalo de pesquisa z 0,10 Programa MATLAB: «diferen.m». Nota: O programa «diferen» chama, durante a sua execução, a subrotina «derv» através do programa «ode45».
4 Carlos R. Paiva Programa «diferen.m» % DIFEREN Resolução do seguinte sistema de equações diferenciais % % d B1 * p1(z) % ---- p1(z) = ----------------------- * [A1 * p(z) - 1] % d z 1 + p1(z) + p(z) % % d B * p(z) % ---- p(z) = -------------------- * [A * p1(z) - 1] % d z 1 + p1(z) + p(z) % clear all close all % Limpa todas as variáveis da memória % Fecha todas as janelas de figuras A1 = -1; A = 1; B1 = ; B = 1; % Constantes do sistema de equações z=linspace(0,10,1000); % Vector distância onde z = 0 até z = 10 com 1000 pontos pini=[10 1]; % Valores iniciais das variaveis p1(z) = 10 e p(z) = 1 no ponto z = 0 OPTIONS=odeset('AbsTol',1e-9,'RelTol',1e-6); % Alteração do valor da tolerância do % método de RUNGE-KUTTA % (função ODE45.m) % Método de RUNGE-KUTTA. 'derv' é a função onde está descrito o sistema diferencial [z,p]=ode45('derv',z,pini,options,a1,a,b1,b); plot(z,p(:,1),'b-',z,p(:,),'r-'); % Gráfico de p1(z) e p(z) title('p1(z) - Azul p(z) - Vermelho'); xlabel('distância'); ylabel('amplitude');
Relatório: Fotónica 5 Função «derv.m» % DERV Função executada por ode45.m com a descrição do sistema de equações diferenciais % z - posição onde calcular o valor das derivadas de p1(z) e p(z) % p - vector com os valorer p1(z) e p(z) na posição z % flag - flags usadas pela função ode45.m % A1, A, B1, B - constantes do sistema diferencial % function dp=derv(z,p,flag,a1,a,b1,b) dp(1)=b1*p(1)/(1+p(1)+p())*(a1*p()-1); dp()=b*p()/(1+p(1)+p())*(a*p(1)-1); % Equação dp1(z)/dz % Equação dp(z)/dz dp=dp'; % Passagem do vector das derivadas de linha para coluna Figura 1 Resultado obtido através do programa DIFEREN. William E. Boyce and Richard C. DiPrima, Elementary Differential Equations and Boundary Value Problems (Hoboken, New Jersey: Wiley, 8th ed., 005).
6 Carlos R. Paiva Apresentam-se, de seguida, alguns gráficos correspondentes à simulação numérica das equações das taxas num laser semicondutor com modulação directa da corrente de injecção.
Relatório: Fotónica 7 Figura Alguns resultados do Trabalho T1 alínea (b).
8 Carlos R. Paiva. Resolução numérica de equações modais Em vários pontos do programa de Fotónica é necessário resolver numericamente equações modais. É o caso dos lasers semicondutores, onde é necessário determinar usando o método do índice de refracção efectivo os valores de n eff e de n, ver Trabalho T3. É ainda o caso das fibras ópticas, onde é necessário resolver a respectiva equação modal seja de forma rigorosa (modos HE, EH, TE e TM), seja de forma aproximada (modos LP), ver Trabalhos T4 e T5. Em qualquer dos casos a utilização do programa MATLAB «fzero» é perfeitamente suficiente. O primeiro exemplo que se vai apresentar refere-se ao Trabalho T sobre mecânica quântica. Neste trabalho considera-se um modelo de Kronig-Penney simplificado para potenciais periódicos. O objectivo é o de entender o aparecimento de bandas de energia permitidas e proibidas neste tipo de potenciais uma base indispensável para a física do estado sólido. Na Fig. 3 apresenta-se um gráfico de (ver Trabalho T) ( ) ( ) ξ = ka E ζ ζ ξ π =, E = ζ ma = qa E0 π 0. Figura 3 Resultados da segunda parte do Trabalho T.
Relatório: Fotónica 9 Nas Figs. 4 e 5 apresentam-se os resultados reslativos ao trabalho T3. Nas Figs. 6 e 7 apresentam-se os resultados relativos aos trabalhos T4 e T5 (respectivamente). Figura 4 Resultados da primeira fase do Trabalho T3. George Lindfield and John Penny, Numerical Methods Using MATLAB (London: Ellis Horwood, 1995).
10 Carlos R. Paiva Figura 5 Resultados da segunda fase do Trabalho T3. Figura 6 Resultados do Trabalho T4.
Relatório: Fotónica 11 Figura 7 Resultados do Trabalho T5. Amnon Yariv and Pochi Yeh, Photonics: Optical Electronics in Modern Communications (New Yor: Oxford University Press, 6th ed., 007), pp. 110-155, pp. 797-811. Bahaa E. A. Saleh and Marvin Carl Teich, Fundamentals of Photonics (Hoboken, New Jersey: Wiley, nd ed., 007), pp. 89-364.
1 Carlos R. Paiva 3. Propagação de impulsos em fibras ópticas Para a simulação numérica da propagação de impulsos em fibras ópticas há que recorrer à FFT (fast Fourier transform). Consideremos apenas o caso das fibras monomodais operadas em regime linear. Despreza-se, aqui, a influência da dispersão de ordem superior (i.e., considera-se que é razoável fazer β 3 = 0 ). Assim, só o efeito da DVG (dispersão da velocidade de grupo) é tido em consideração. As perdas são desprezadas de forma a poder analisar, isoladamente, o efeito da DVG sobre a propagação os impulsos. Nestas circunstâncias e em termos das variáveis normalizadas ζ e τ z ζ = = z L D t β1 z τ = τ 0 β τ 0 a equação de propagação dos impulsos é dada pela equação diferencial u i = ζ τ 1 u sgn ( β ) 0. Consideremos o caso específico da zona de dispersão anómala em que zona de dispersão anómala ( β ) sgn = 1 de forma que a equação de propagação dos impulsos se reduz a u = i ζ 1 u τ. Esta equação é facilmente resolvida no domínio da frequência (normalizada) ξ u( ζ, τ ) u ( ζ, ξ ) = F u( ζ, τ )
Relatório: Fotónica 13 (, ) = (, ) exp( ) u ζ ξ u ζ τ iξτ dτ 1 u( ζ, ξ) = u( ζ, τ) exp( iξτ) dξ π uma vez que u 1 = i ξ u ζ ( ζ, ξ ) 1 u ( ζ, ξ) = u ( 0, ξ) exp i ξ ζ. Para determinar a forma do sinal, após uma determinada distância de propagação ao longo da fibra óptica, há que voltar para o domínio do tempo aplicando agora uma IFFT (a inversa de uma FFT). No programa que a seguir se apresenta, intitulado «propag», apresenta-se o efeito da DVG sobre um impulso com uma forma inicial ( τ ) u( τ) ( τ) u0 = 0, = sech. Sublinhe-se a necessidade de alterar a ordem interna do vector das frequências devido à forma como a FFT apresenta a função no domínio da frequência. Este mesmo efeito poderia ser alcançado através da instrução «fftshift» que, em vez de alterar a ordem interna do vector das frequências, altera a própria disposição da transformada (colocando o valor correspondente à frequência nula no centro). Em qualquer caso é necessário garantir que a multiplicação pela função de transferência da fibra óptica se processa, no domínio da frequência, de forma correcta. Amnon Yariv and Pochi Yeh, Photonics: Optical Electronics in Modern Communications (New Yor: Oxford University Press, 6th ed., 007), pp. 317-3.
14 Carlos R. Paiva % PROPAG Propagação de impulsos regida pela equação diferencial % % d i d ^ % ---- a(z, t) = --- ---------- a(z,t) % d z d t ^ % clear all; % Limpa todas as variáveis da memória ztotal=5; % Distância total considerada Nz=500; % Número de passos na distância z=linspace(0,ztotal,nz); % Vector distância com 'Nz' posições t0=0; % Limite da janela temporal Nt=104; % Número de amostras temporais t=linspace(-t0,t0,nt); % Vector temporal com 'Nt' pontos (Janela temporal) Ts=t()-t(1); % Separação entre amostras Ws=*pi/Ts; % Largura total da janela espectral W=Ws*[0:1:Nt/-1 -Nt/:1:-1]/Nt; % Vector de frequências [rad/s] a=sech(t); A=fft(a); % Impulso inicial: a(0,t)=sech(t) % Impulso no domínio espectral: A(0,w) for i=:nz Az=A.*exp(-1i/*W.^*z(i)); a(i,:)=ifft(az); end % Ciclo para cada posição de z % Impulso no domínio espectral: A(z,w) % Impulso no domínio temporal: a(z,t) figure(1); % Gráfico D do impulso inicial/final plot(t,a(1,:),'b',t,abs(a(end,:)),'r'); title('entrada - azul saída - vermelho'); xlabel('tempo'); ylabel('amplitude'); axis([-t0 t0 0 1]); [X,Y]=meshgrid(t,z); % Cria uma grelha rectangular de dimensões (Nt,Nz) usada por 'mesh' figure();
Relatório: Fotónica 15 mesh(x,y,abs(a)); xlabel('tempo'); ylabel('distância'); zlabel('amplitude'); % Gráfico da evolução do impulso figure(3); mesh(x,y,abs(a)); xlabel('tempo'); ylabel('distância'); zlabel('amplitude'); view(30,45); % view (azimute, elevação); Figura 8 Primeira figura obtida através do programa PROPAG.
16 Carlos R. Paiva Figura 9 Segunda figura obtida através do programa PROPAG. Figura 10 Terceira figura obtida através do programa PROPAG.
Relatório: Fotónica 17 4. Propagação de solitões em fibras ópticas Para estudar a propagação de impulsos numa fibra óptica em regime não linear usa-se o SSFM (split-step Fourier method). Em termos das variáveis normalizadas ζ e τ, tem-se então equação de propagação de impulsos u 1 u Γ i sgn ( β ) + u u = i u regime não linear ζ τ ( ) que se reduz à chamada equação NLS (não linear de Schrödinger) quando ( β ) sgn = 1 (zona de dispersão anómala) e Γ= 0 (sem perdas). Note-se que os efeitos não lineares e dispersivos de ordem superior são, aqui, desprezados. O SSFM baseia-se na separação entre os efeitos não lineares (operador N ) e os efeitos dispersivos (operadores D τ ou D ξ ): 1 Dτ = i sgn ( β ) u τ 1 = ( Dτ + N) u( ζ, τ) Dξ = i sgn( β ) ξ ζ Γ N = + i u ( ζ, τ ) ( ζ, ξ ) ( ζ, τ ) u u = F u. Assim, nesta versão do SSFM, considera-se o processo iterativo de passo h que permite ir do impulso u ( τ ) = u( τ ) até à saída ( ) 0 0, ζ = L L. u ζ, L τ, com L D ( ζ τ) ( ζ + τ) = ( ζ τ) SSFM : u, u h, w, v V ( ζτ, ) = exp ( hn) u( ζτ, ) ( ζ, ξ) FFT v( ζ, τ) ( ζ, ξ) = exp ( ) ( ζ, ξ) W hd V w = ( ζτ, ) IFFT W ( ζξ, ) = ξ
18 Carlos R. Paiva % SOL_N programa para representar a evolução de um SOLITÃO de ordem N % Método: SSFM (Split-Step Fourier Method) % clear all; close all; N=3; % Ordem N do solitão sob consideração Ntau=^11; % Número de pontos da janela temporal tmax=5; % Limites máximo e mínimo da janela temporal tau=linspace(-tmax,tmax,ntau); % Definiçao da janela temporal (em 'tau') zetamax=pi/; % Definiçãoo da distância normalizada 'zeta' h=0.005; Nstop=round(zetaMax/h); zeta=linspace(0,zetamax,nstop); % Passo incremental do SSFM % Número de iterações do SSFM % Definição da janela espacial (em 'zeta') Ts=tau()-tau(1); Ws=*pi/Ts; xi=ws*[0:1:ntau/-1 -Ntau/:1:-1]/Ntau; % Discretização temporal % Discretização na frequência % Vector das frequências normalizadas u=n*sech(tau); beta=-1; gama=0; impulso(1,:)=abs(u); D=i/*sign(beta)*xi.^; % Definição do impulso inicial % Sinal de beta (DVG) % Perdas normalizadas % Módulo do impulso % operador D de dispersão (DVG) for k=:nstop N=-gama/+i*abs(u).^; v=(u).*exp(h*n); V=fft(v); U=V.*exp(h*D); u=ifft(u); impulso(k,:)=abs(u); end
Relatório: Fotónica 19 [XN,YN]=meshgrid(tau,zeta); mesh(xn,yn,impulso); axis([-tmax tmax 0 zetamax 0 max(max(impulso))]); xlabel('\tau = (t - \beta_1 z) / \tau_0'); ylabel('\zeta = z / L_D'); zlabel(' u (\zeta, \tau)'); title('solitão de ordem N = 3') Figura 11 Resultado obtido através do programa SOL_N. Govind P. Agrawal, Nonlinear Fiber Optics (San Diego, California: Academic Press, 4th ed., 007), pp. 41-45.