Dispersion in fiber optics problem for long distance

4 次查看(过去 30 天)
% function LinearPulseProp
%
% Input parameters
%
Tmax = 100.00; % temps en ps
N = 02048; % number des points
T0 = 15; % largeur d'impulsion in ps
beta2 = -20; % GVD en ps^2/km
z = 0; % la distance en km
C = +0.0;
v = linspace(0,N-1,N);
dT = Tmax/N;
T = -Tmax/2 + v*dT; % Time grid
dOmega = 2*pi/Tmax;
%
p = find(v > floor(N/2));
v(p) = v(p)-N;
Omega = v*dOmega;
A = exp(-((1+1i*C)/2)*(T/T0).^2); % Gaussian input pulse
A0 = A; % copy the initial Gaussian
%
At0 = fft(A);
Atilde = At0.*exp(1i*beta2*Omega.^2*z/2);
A = ifft(Atilde);
%
% Plot the output pulse
%
B=abs(A);
B=B/max(B);
plot(T,B,T,A0,'--');
set(gca,'FontSize',15);
xlabel('T (ps)');
ylabel('|A(z,T)|^2');

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Simulink 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by