• Non ci sono risultati.

%signal FWHM fs=10^10

N/A
N/A
Protected

Academic year: 2021

Condividi "%signal FWHM fs=10^10"

Copied!
3
0
0

Testo completo

(1)

APPENDIX I

Matlab script used in Chapter 3 to simulate the Quasi-Asynchronous sampler behaviour.

clear all close all

Timp=0.5*10^(-12); %sampling pulse FWHM Tsign=1*10^(-12); %signal FWHM

fs=10^10; %signal frequency Delta_t=500*10^(-15);

fc=fs/(1+Delta_t*fs);

Ns=10;

dt=double(Timp/Ns);

flo=fs-fc;

%signal to be sampled

ts=[-50*10^(-12):dt:50*10^(-12)];

s=sech(ts*2.634/Tsign);

figure(1) plot(ts,s) grid on

%sampling pulse

tc=[-4*Timp:dt:4*Timp];

c=sech(tc*2.634/Timp);

tc=tc(1:length(tc)-1);

c=c(1:length(c)-1);

figure(2) plot(tc,c) grid on

%sampling

Nc=length(tc);

(2)

Analisi e realizzazione di un campionatore ottico quasi-asincrono basato su cross-phase modulation per segnali ultra-veloci

Tc=1/fc;

N_Ts=length(ts);

N_Delta_t=round(Delta_t/dt);

N_Tc=N_Delta_t+N_Ts;

N_zeros=N_Tc-Nc;

z=zeros(1,N_zeros-1);

sampling=s(1:Nc).*c;

sbis=[s,s(1:Nc)];

j=0;

for i=1:round(N_Ts/N_Delta_t)-1;

prod=sbis(i*N_Delta_t:i*N_Delta_t+Nc-1).*c;

sampling=[sampling,z,prod];

j=j+1;

end

cut=sampling(length(sampling)-(N_Tc/2)*round((Nc/N_Delta_t)- 2):length(sampling));

sampling=[cut,sampling(1:length(sampling)- (N_Tc/2)*round((Nc/N_Delta_t)-2)-1)];

t_sampling=[0:dt:dt*(length(sampling)-1)];

figure(3)

plot(t_sampling,sampling) grid on

tot=sampling;

t_tot=t_sampling;

for k=1:19

tot=[tot,sampling];

inc=t_sampling+k*t_sampling(length(t_sampling));

t_tot=[t_tot,inc];

end

figure(4)

plot(t_tot,tot) grid on

delta_f=(1/dt)/length(t_tot);

f=[-1/(2*dt):delta_f:1/(2*dt)];

f=f(1:length(f)-1);

OUT=(fft(tot));

OUT=abs(fftshift(OUT));

figure(5);

plot(f,OUT) grid on

f_taglio=3*10^9;

N_wind=2*round(f_taglio/delta_f);

H=[zeros(1,round(length(OUT)/2)- N_wind/2),ones(1,N_wind),zeros(1,round(length(OUT)/2)-N_wind/2)];

FINAL=OUT.*H;

final=abs(ifft(FINAL));

figure(6)

plot(t_tot,final) grid on

%polarization efficiency wt=[-2*pi:0.1:2*pi];

89

(3)

APPENDIX I

x=cos(wt);

y=zeros(2,length(wt));

i=0;

gamma=10;

alfa=10^0.079;

L=1; %Km

Ps=10*10^(-3);

Pp=10*10^(-3);

LV=0;

eff_tot=0;

for L=0.05:0.05:2

Leff=(1-exp(-alfa*L))/alfa;

fi_NL=gamma*Leff*(Ps+2*Pp);

i=0;

for fi=0:pi/4:pi/2;

i=i+1;

y(i,:)=cos(wt+fi);

teta=atan(cos(fi));

a=sqrt(1+2*cos(teta)*sin(teta)*cos(fi));

b=sqrt(1-2*cos(teta)*sin(teta)*cos(fi));

if fi<=(pi/2) eff(i)=(b/sqrt(2))^2;

else eff(i)=(a/sqrt(2))^2;

end

fiV(i)=fi;

end

grid on figure(2) plot(fiV,eff)

title(['efficienza al variare di fi, per L=', num2str(L)])

eff_tot=[eff_tot,eff(length(eff))];

LV=[LV,L];

end

figure(1) plot(x,y)

title(['stato della polarizzazione per L=', num2str(L)])

eff_tot=eff_tot*100;

figure(3)

plot(LV,eff_tot)

ylabel('efficiency (%)');

xlabel('L fiber (Km)');

90

Riferimenti

Documenti correlati

Atrial flutter is characterized by rapid atrial activity at the rate of 180 to 350 beats per minute and occurs in patients with preex- isting heart disease.. With block the

To access the lower Cockett perforators, incision of the fascia of the deep posterior compartment is also frequently needed.. Many clinical cases with SEPS have

The signal intensity of the cerebral white matter is inhomogeneous on the T 1 -weighted images, high in some parts and low in others, suggestive of a combina- tion of

Three patients with both papillary and medullary thyroid cancer and twelve patients with medullary cancer and C cell hyperplasia were identified from sixty rel- atives over

Suggestions for Examination and Report: Conjoined Twins Gross Examination: Documentation of anastomoses and cord abnormalities should be undertaken as with any monochorionic

In a trauma patient who is undergoing CT of the chest, abdomen, and pelvis for evaluation of internal organ injury, the same data set can be used to produce high-quality images of

Recent results from three other major secondary prevention trials with vitamin E, in which more than 40,000 patients were randomized, were not supportive^^'^&#34;^^^ The

Scrivere la funzione Matlab compute_inverse che prenda in input una matrice quadrata A di ordine N; dopo aver verificato che la matrice è invertibile,