Sei sulla pagina 1di 16

Anexo 1 71

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA


ANEXO 1.- Ficheros Matlab














Anexo 1 72

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA
Transmisor.m : genera las muestras de una seal CDMA.

numsimb =4;
Fs =8;
R =0.22;
Delay =24;

% codigos de Walsh de 256 chips
H2 =[1 1; 1 -1];
H4 =[H2 H2 ; H2 -H2];
H8 =[H4 H4 ; H4 -H4];
H16 =[H8 H8 ; H8 -H8];
H32 =[H16 H16 ; H16 -H16];
H64 =[H32 H32 ; H32 -H32];
H128 =[H64 H64 ; H64 -H64];
H256 =[H128 H128 ; H128 -H128];

% smbolos son complejos
b =randsrc(1,numsimb)+i*randsrc(1,numsimb);

% expansin
x=kron(b,H256(12,:));

I =[1/sqrt(2)]*real(x);
Q =[1/sqrt(2)]*imag(x);
qpsk =I+j*Q;
figure(1)
plot(qpsk,'*');
axis([-1 1 -1 1]);
axis('square');
ylabel('Constelacion en Transmision');

% Zero-padding
I_val=zeros(1,Fs*length(I));
p=1;
for k1=1:Fs:(length(I_val)-Fs+1)
I_val(k1)=I(p);
p=p+1;
end

Q_val=zeros(1,Fs*length(Q));
p=1;
for k1=1:Fs:(length(Q_val)-Fs+1)
Q_val(k1)=Q(p);
p=p+1;
end

aux=root_coseno(Delay,R); %Raiz de Coseno alzado

p=1;
for k3=1:128/Fs:(length(aux)-128/Fs)
h(p)=aux(k3);
p=p+1;
end

If =sqrt(1/6.373)*conv(I_val,h);
Qf =sqrt(1/6.373)*conv(Q_val,h);

secuencia_qpsk=If+j*Qf;
Anexo 1 73

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA
root_coseno.m : funcin que implementa un filtro raz coseno alzado

function y=root_coseno(periodos,roll_off)

% Entrada:
% periodos: nmero de Tsimb que contendr el coseno alzado
% Devuelve la respuesta impulsiva de un filtro
% raiz de coseno alzado, con los siguientes valores
%
% Tasa de smbolos =1.92Msimb/s

Rb=1.92*10^6;
Beta=roll_off*Rb;


Tb=1/Rb;
x=-periodos*Tb/2:Tb/128:periodos*Tb/2;

a=(8*Beta)*cos((Rb+2*Beta)*pi*x);
for k=1:1:length(x)
if(x(k)==0)
b(k)=1;
else
b(k)=sin((Rb-2*Beta)*pi*x(k))/x(k);
end
end
c=pi/sqrt(Rb);
d=(((8*Beta*x).^2)-1);

% Respuesta impulsiva
h=(-(a+b)./(c*d))/(16*Beta*sqrt(Rb)/pi);
h(((length(h)-1)/2)+1)=1;
y=h;


long_colas.m: determina la longitud de las colas introducidas en la seal tras
pasar por el filtro raz coseno alzado en recepcin

clear all
muestras =8; % 8 muestras
fchip =3.84e6;
Fs =muestras*fchip; % Frecuencia de muestreo.
alfa =0.22; % Factor de roll-off
Long_cos=24; % Duracin, en Tsimb, del coseno alzado
roll_off=0.22; % Factor de Roll_off del filtro a implementar
delay =Long_cos;
x =[1/sqrt(2)]*sign(randn(1,64)); % el factor 1/sqrt(2) es para que E
b
sea 1/2
xcomp =sign(x);

% Zero-padding
x_val=zeros(1,muestras*length(x));
i=1;
for k1=1:muestras:(length(x_val)-muestras+1)
x_val(k1)=x(i);
i=i+1;
Anexo 1 74

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA
end

aux=root_coseno(Long_cos,roll_off); % Raiz de Coseno alzado

i=1;
for k3=1:128/muestras:(length(aux)-128/muestras)
h(i)=aux(k3);
i=i+1;
end

xf =sqrt(1/6.373)*conv(x_val,h);
xr =sqrt(1/6.373)*conv(xf,h);

Long_colas =length(xr)-[length(x)*muestras]+2


Posicion_muestreo.m: determina la posicin ptima de muestreo

clear all
muestras =8; % 8 muestras
fchip =3.84e6;
Fs =muestras*fchip; % Frecuencia de muestreo.
alfa =0.22; % Factor de roll-off
Long_cos=24; % Duracin, en Tsimb, del coseno alzado
roll_off=0.22; % Factor de Roll_off del filtro a implementar
delay =Long_cos;
x =[1/sqrt(2)]*sign(randn(1,64)); % el factor 1/sqrt(2) es para que E
b
sea 1/2
xcomp =sign(x);

% Zero-padding
x_val=zeros(1,muestras*length(x));
i=1;
for k1=1:muestras:(length(x_val)-muestras+1)
x_val(k1)=x(i);
i=i+1;
end

aux=root_coseno(Long_cos,roll_off); % Raiz de Coseno alzado

i=1;
for k3=1:128/muestras:(length(aux)-128/muestras)
h(i)=aux(k3);
i=i+1;
end

xf =sqrt(1/6.373)*conv(x_val,h);

xr =sqrt(1/6.373)*conv(xf,h);
xr=transpose(xr);

xrt =xr(delay .* muestras +1:end-(delay .* muestras),:);

Error=zeros(1,5);
for aux =1:5
aux1=aux;
for i =1:length(x)
dt(i) =xrt(aux1);
Anexo 1 75

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA
aux1 =aux1 +muestras;
end
dt;
dc =sign(dt);
error =xcomp-dc;
error2=x-dt;
Error(aux)=sum(abs(error2))/length(error2);
end

valor=min(Error);
Posicion_optima=0;
for a=1:5
if Error(a) ==valor
Posicion_optima=a
end
end


Canalconrruido.m: realiza una representacin grfica BER frente a E
b
/N
0

implementando el Sistema completo de Comunicacin

clear all
numsimb =5000;
muestras =8; % 8 muestras
fchip =3.84e6;
Fs =muestras*fchip; % Frecuencia de muestreo.
Long_cos=24; % Duracin, en Tsimb, del coseno alzado
roll_off=0.22; % Factor de Roll_off del filtro a implementar
delay =Long_cos;
llave=1;

%TRANSMISOR

I =[1/sqrt(2)]*sign(randn(1,numsimb));
Q =[1/sqrt(2)]*sign(randn(1,numsimb));
qpsk =I+j*Q;
figure(1)
plot(qpsk,'*');
axis([-1 1 -1 1]);
axis('square');
ylabel('Constelacion en Transmision');
pause;

% Zero-padding
I_val=zeros(1,muestras*length(I));
i=1;
for k1=1:muestras:(length(I_val)-muestras+1)
I_val(k1)=I(i);
i=i+1;
end

Q_val=zeros(1,muestras*length(Q));
i=1;
for k1=1:muestras:(length(Q_val)-muestras+1)
Q_val(k1)=Q(i);
i=i+1;
Anexo 1 76

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA
end

aux=root_coseno(Long_cos,roll_off); % Raiz de Coseno alzado

i=1;
for k3=1:128/muestras:(length(aux)-128/muestras)
h(i)=aux(k3);
i=i+1;
end

If =sqrt(1/6.373)*conv(I_val,h);
Qf =sqrt(1/6.373)*conv(Q_val,h);

Icomp=sqrt(2)*I;
Qcomp=sqrt(2)*Q;
for N=1:2:2*length(qpsk) % secuencia de muestras de informacin
muestr(N)=Icomp((N+1)/2);
muestr(N+1)=Qcomp((N+1)/2);
end;


%CANAL RUIDOSO AWGN Y RECEPTOR

K1 =1;
EbNo =[2 3 4 5 6 7 8 9 10];
BERQPSK =zeros(1,9);

for EbN0=2:5

No =0.5*10^(-0.1*EbN0);
desvtip =sqrt(No/2);
ruidof =desvtip*randn(1,length(If));
ruidoq =desvtip*randn(1,length(Qf));
aux1 =0; % variable auxiliar para el calculo de la BER


for N =1:length(If) % "ruidos" que se aaden a las componentes en
% fase y cuadratura
sectxf(N) =If(N)+ruidof(N);
sectxq(N) =Qf(N)+ruidoq(N);

end;

Ir =sqrt(1/6.373)*conv(sectxf,h);
Ir=transpose(Ir);
Qr =sqrt(1/6.373)*conv(sectxq,h);
Qr=transpose(Qr);


Irt =Ir(delay .* muestras +1:end-(delay .* muestras),:);
Qrt =Qr(delay .* muestras +1:end-(delay .* muestras),:);

aux =1;
for i =1:length(qpsk)
Idt(i) =Irt(aux);
Qdt(i) =Qrt(aux);
aux =aux +muestras;
end

Anexo 1 77

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA

Idc =sign(Idt);
Qdc =sign(Qdt);

for N =1:2:2*length(qpsk) % secuencia de bits recibidos
secbitr(N) =Idc((N+1)/2);
secbitr(N+1) =Qdc((N+1)/2);
end;


for N =1:2*length(qpsk) % Calculo de la BER
if secbitr(N)~=muestr(N)
aux1 =aux1+1;
end
end;

BERQPSK(K1) =aux1/(2*length(qpsk));
K1=K1+1;

end;

vectoraux =zeros(1,5);
for v=1:150

I =[1/sqrt(2)]*sign(randn(1,numsimb));
Q =[1/sqrt(2)]*sign(randn(1,numsimb));

% Zero-padding
I_val=zeros(1,muestras*length(I));
i=1;
for k1=1:muestras:(length(I_val)-muestras+1)
I_val(k1)=I(i);
i=i+1;
end

Q_val=zeros(1,muestras*length(Q));
i=1;
for k1=1:muestras:(length(Q_val)-muestras+1)
Q_val(k1)=Q(i);
i=i+1;
end

aux=root_coseno(Long_cos,roll_off); %Raiz de Coseno alzado

i=1;
for k3=1:128/muestras:(length(aux)-128/muestras)
h(i)=aux(k3);
i=i+1;
end

If =sqrt(1/6.373)*conv(I_val,h);
Qf =sqrt(1/6.373)*conv(Q_val,h);

Icomp=sqrt(2)*I;
Qcomp=sqrt(2)*Q;
for N=1:2:2*length(qpsk) %secuencia de muestras de informacin
muestr(N)=Icomp((N+1)/2);
muestr(N+1)=Qcomp((N+1)/2);
end;
Anexo 1 78

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA
K1=1;
for EbN0=6:9

No =0.5*10^(-0.1*EbN0);
desvtip =sqrt(No/2);
ruidof =desvtip*randn(1,length(If));
ruidoq =desvtip*randn(1,length(Qf));
aux1 =0; % variable auxiliar para el calculo de la BER


for N =1:length(If) % "ruidos" que se aaden a las componentes en
% fase y cuadratura
sectxf(N) =If(N)+ruidof(N);
sectxq(N) =Qf(N)+ruidoq(N);

end;

Ir =sqrt(1/6.373)*conv(sectxf,h);
Ir=transpose(Ir);
Qr =sqrt(1/6.373)*conv(sectxq,h);
Qr=transpose(Qr);


Irt =Ir(delay .* muestras +1:end-(delay .* muestras),:);
Qrt =Qr(delay .* muestras +1:end-(delay .* muestras),:);

aux =1;
for i =1:length(qpsk)
Idt(i) =Irt(aux);
Qdt(i) =Qrt(aux);
aux =aux +muestras;
end

if EbN0 ==9 & llave ==1
llave=0;
qpskr=Idt+j*Qdt;
figure(2)
plot(qpskr,'*');
axis([-1.5 1.5 -1.5 1.5]);
axis('square');
ylabel('Constelacion en Recepcion Eb/No=9');
pause;
end

Idc =sign(Idt);
Qdc =sign(Qdt);

for N =1:2:2*length(qpsk) % secuencia de bits recibidos
secbitr(N) =Idc((N+1)/2);
secbitr(N+1) =Qdc((N+1)/2);
end;


for N =1:2*length(qpsk) % Calculo de la BER
if secbitr(N)~=muestr(N)
aux1 =aux1+1;
end
end;

Anexo 1 79

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA
vectoraux(K1) =vectoraux(K1)+aux1;
K1=K1+1;

end;

end

for i=1:5
BERQPSK(i+4)=vectoraux(i)/[150*(2*length(qpsk))];
end

figure(3)
semilogy(EbNo,BERQPSK,'b');
curvateorica;
hold on;
semilogy(EbNo,Pbit,'r');
axis([0 15 1e-6 1]);
xlabel('EbNo(dB)');
ylabel('BERQPSK practica (azul),BERQPSK teorica (rojo)');
hold off;


curvateorica.m: calcula la curva terica de BER frente E
b
/N
0
para una
modulacin QPSK

% Calculo de la curva teorica

EbNo =[0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15];
Pbit =zeros(1,16);

K1 =1;
for EbN0=0:15
aux =10^(0.1*EbN0);
Pbit(K1)=0.5*erfc(sqrt(aux));
K1=K1+1;
end


Calculo_Ganancia.m: calcula la ganancia del amplificador para una
determinada potencia de entrada

clear all
numsimb =1000;
muestras =8; % 8 muestras
fchip =3.84e6;
Fs =muestras*fchip; % Frecuencia de muestreo
Long_cos=24; % Duracin, en Tsimb, del coseno alzado
roll_off=0.22; % Factor de Roll_off del filtro a implementar
delay =Long_cos-1;


%TRANSMISOR

Anexo 1 80

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA
I =sign(randn(1,numsimb));
Q =sign(randn(1,numsimb));
qpsk =I+j*Q;


% Zero-padding
I_val=zeros(1,muestras*length(I));
i=1;
for k1=1:muestras:(length(I_val)-muestras+1)
I_val(k1)=I(i);
i=i+1;
end

Q_val=zeros(1,muestras*length(Q));
i=1;
for k1=1:muestras:(length(Q_val)-muestras+1)
Q_val(k1)=Q(i);
i=i+1;
end

aux=root_coseno(Long_cos,roll_off); % Raiz de Coseno alzado

i=1;
for k3=1:128/muestras:(length(aux)-128/muestras)
h(i)=aux(k3);
i=i+1;
end

If =conv(I_val,h);
Qf =conv(Q_val,h);

p =[0.0682 1.8575 -0.2418 0.9550 0.0834 1.6254];
Pi =-10; % Potencia de entrada expresada en dBm
opcion=1;
cc1=0;
cc2=0;
Nsymb=numsimb;
Ns=muestras;

[compfase, compcuad] =salida_amplificador(p, Pi, opcion, cc1, cc2, If, Qf, Nsymb, Ns);

outamp =compfase+j*compcuad; % Salida del amplificador

E_salida=[sum(real(outamp).^2)+sum(imag(outamp).^2)]/length(outamp);
E_entrada=[sum(real(vs_t).^2)+sum(imag(vs_t).^2)]/length(vs_t);
G=sqrt(E_salida/E_entrada)


Calcula_Eb.m: calcula para una secuencia con una determinada Pi cual es la
energa de bit de la secuencia transmitida al canal

clear all
numsimb =1000;
muestras =8; % 8 muestras
fchip =3.84e6;
Fs =muestras*fchip; % Frecuencia de muestreo
Anexo 1 81

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA
Long_cos=24; % Duracin, en Tsimb, del coseno alzado
roll_off=0.22; % Factor de Roll_off del filtro a implementar
delay =Long_cos-1;


%TRANSMISOR

I =sign(randn(1,numsimb));
Q =sign(randn(1,numsimb));
qpsk =I+j*Q;


% Zero-padding
I_val=zeros(1,muestras*length(I));
i=1;
for k1=1:muestras:(length(I_val)-muestras+1)
I_val(k1)=I(i);
i=i+1;
end

Q_val=zeros(1,muestras*length(Q));
i=1;
for k1=1:muestras:(length(Q_val)-muestras+1)
Q_val(k1)=Q(i);
i=i+1;
end

aux=root_coseno(Long_cos,roll_off); % Raiz de Coseno alzado

i=1;
for k3=1:128/muestras:(length(aux)-128/muestras)
h(i)=aux(k3);
i=i+1;
end

If =conv(I_val,h);
Qf =conv(Q_val,h);

p =[0.0682 1.8575 -0.2418 0.9550 0.0834 1.6254];
Pi =-10; % Potencia de entrada expresada en dBm
opcion=1;
cc1=0;
cc2=0;
Nsymb=numsimb;
Ns=muestras;

[compfase, compcuad] =salida_amplificador(p, Pi, opcion, cc1, cc2, If, Qf, Nsymb, Ns);

Eb1=sum(compfase.^2)*8/length(compfase);
Eb2=sum(compcuad.^2)*8/length(compcuad);
Eb=(Eb1+Eb2)/2


Back_off.m: funcin que realiza una representacin grfica de BER para
diferentes valores IBO

Anexo 1 82

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA
function back_off
clear all
numsimb =1000;
muestras =8; % 8 muestras
fchip =3.84e6;
Fs =muestras*fchip; % Frecuencia de muestreo
Long_cos=24; % Duracin, en Tsimb, del coseno alzado
roll_off=0.22; % Factor de Roll_off del filtro a implementar
delay =Long_cos-1;


%TRANSMISOR

I =sign(randn(1,numsimb));
Q =sign(randn(1,numsimb));
qpsk =I+j*Q;


% Zero-padding
I_val=zeros(1,muestras*length(I));
i=1;
for k1=1:muestras:(length(I_val)-muestras+1)
I_val(k1)=I(i);
i=i+1;
end

Q_val=zeros(1,muestras*length(Q));
i=1;
for k1=1:muestras:(length(Q_val)-muestras+1)
Q_val(k1)=Q(i);
i=i+1;
end

aux=root_coseno(Long_cos,roll_off); % Raiz de Coseno alzado

i=1;
for k3=1:128/muestras:(length(aux)-128/muestras)
h(i)=aux(k3);
i=i+1;
end

If =conv(I_val,h);
Qf =conv(Q_val,h);


for N=1:2:2*length(qpsk) % secuencia de muestras de informacin
muestr(N)=I((N+1)/2);
muestr(N+1)=Q((N+1)/2);
end;

backoff=-13:12;
BERQPSK =zeros(1,26);
K1 =1;

for Potentrada =10:-1:-15

p =[0.0682 1.8575 -0.2418 0.9550 0.0834 1.6254];
Pi =Potentrada; % Potencia de entrada expresada en dBm
opcion=1;
Anexo 1 83

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA
cc1=0;
cc2=0;
Nsymb=numsimb;
Ns=muestras;

[compfase, compcuad] =salida_amplificador(p, Pi, opcion, cc1, cc2, If, Qf, Nsymb, Ns);


%CANAL RUIDOSO AWGN Y RECEPTOR


vectoraux =0;
for v=1:15


EbN0 =4.419275;
No =8.43*10^(-0.1*EbN0);
desvtip =sqrt(No/2);
ruidof =desvtip*randn(1,length(compfase));
ruidoq =desvtip*randn(1,length(compcuad));
aux1 =0; % variable auxiliar para el calculo de la BER


for N =1:length(compfase) % "ruidos" que se aaden a las componentes en
% fase y cuadratura
sectxf(N) =compfase(N)+ruidof(N);
sectxq(N) =compcuad(N)+ruidoq(N);

end;

Ir =conv(sectxf,h);
Ir=transpose(Ir);
Qr =conv(sectxq,h);
Qr=transpose(Qr);


Irt =Ir(delay .* muestras +1:end-(delay .* muestras),:);
Qrt =Qr(delay .* muestras +1:end-(delay .* muestras),:);

aux =9;
for i =1:length(qpsk)
Idt(i) =Irt(aux);
Qdt(i) =Qrt(aux);
aux =aux +muestras;
end

Idc =sign(Idt);
Qdc =sign(Qdt);

for N =1:2:2*length(qpsk) % secuencia de bits recibidos
secbitr(N) =Idc((N+1)/2);
secbitr(N+1) =Qdc((N+1)/2);
end;


for N =1:2*length(qpsk) % Calculo de la BER
if secbitr(N)~=muestr(N)
aux1 =aux1+1;
end
Anexo 1 84

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA
end;

vectoraux =vectoraux+aux1;

end;

BERQPSK(K1)=vectoraux/[15*(2*length(qpsk))];
K1=K1+1;
end

semilogy(backoff,BERQPSK,'k');
xlabel('Input Back off(dB)');
ylabel('BER');


salida_amplificador: funcin que devuelve las componentes en fase y
cuadratura de la seal a la salida del amplificador

function [compfase, compcuad] =salida_amplificador(p, Pi, opcion, cc1, cc2, If, Qf, Nsymb, Ns)


% salida_amplificador(p, Pi, opcion, cc1, cc2)
%
% p: Vector de parametros del modelo de Chalmers para el transistor
% Pi: Potencia de la seal de entrada medida en dBm
% opcion: filtro en raiz de coseno alzado (opcion =1) y en coseno
% alzado (opcion ~=1)
% cc1: Valor en dB de correccion de la grafica de la densidad espectral
% de la seal de entrada
% cc2: Valor en dB de correccion de la grafica de la densidad espectral
% de la seal de salida
% If: componente en fase a la entrada del amplificador
% Qf: componente en cuadratura a la entrada del amplificador
% Nsymb: numero de simbolos
% Ns: numero de muestras

VGS =-0.57;
VDS =2;

Ro =50;
Z0 =50;

Constante =-[cos(pi/3)+i*sin(pi/3)]/abs([cos(pi/3)+i*sin(pi/3)]); %el Amplificador es no lineal

% Valores de los parametros del modelo

Lg=0.54e-9; % nH
Rg=5.91; % Ohm
Cgs=1.18e-12; % pF
Ri=0; % Ohm
Cgd=0.05e-12; % pF
Rgd=0; % Ohm
Cds=0.35e-12; % pF
Rs=3.18; % Ohm
Ls=0.09e-9; % nH
Rd=1.9; % Ohm
Ld=0.31e-9; % nH
Anexo 1 85

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA

[g10, g20, g30, g01, g02, g03, g11, g12, g21] =chalmers(VGS, VDS, p);


% Potencia de entrada en Watios (argumento de entrada en dBm)
PiW =10 .^(Pi/10) * 1e-3;

% Parametros de la seal modulada:
% -QPSK, Rb =3.84 Mbits/s, Ns muestras/simbolo
% -Conformacion del pulso: filtro en raiz de coseno alzado (opcion =1)
% y en coseno alzado (opcion ~=1)
% -Envolvente compleja de la seal modulada (+/- 1):
k =sum(abs(If+j*Qf).^2)/length(If);
Vs =sqrt(8*Ro*PiW/k);
vs_t =Vs * (If+j*Qf); % Envolvente compleja de la seal modulada


% Frecuencia central de las seales: 2 GHz
fo =2e9;
wc =2 * pi * fo;

dT =inv(Ns * 3.84e6); % Periodo de muestreo de la envolvente compleja

% Frecuencia de corte en Ghz para el escalado de la PSD
Fs =3.84e6*Ns*1e-9;
Npuntos =1024;

[pvs, f] =psd(vs_t, Npuntos, Fs);
frec =2 +f - Fs/2;
pvs =10*log10(abs(fftshift(pvs)));

% Primer orden %

Y1 =matriz_admit_3n(wc,p);
dY1 =matriz_admit_deriv_3n(wc,p);

% Condiciones iniciales
s_t =[0, vs_t];
x1_t =zeros(3,1);
Yg1 =inv(Ro +Rg +j * wc * Lg);
aux =inv(j * dY1 - dT * Y1);
for k =2:length(s_t)
x1_t(:,k) =aux * (j * dY1 * x1_t(:,k-1) - dT * Yg1 * [s_t(k); 0; 0]);
end
v1_t =x1_t(1,2:length(s_t)); % Envolventes complejas
u1_t =x1_t(2,2:length(s_t));
w1_t =x1_t(3,2:length(s_t));

% Envolvente compleja de la tensin de primer orden a la salida
o1_t =(u1_t +w1_t) * Ro * inv(Ro +Rd +j * wc * Ld);


% Segundo orden %

i20_t =0.5 * g20 * abs(v1_t).^2 +0.5 * g02 * abs(u1_t).^2 +...
0.5 * g11 * real(v1_t.* conj(u1_t));

Y0 =matriz_admit_3n(0,p);
dY0 =matriz_admit_deriv_3n(0,p);
Anexo 1 86

Caracterizacin Experimental de la BER en un Sistema de Comunicaciones W-CDMA
x20_t =zeros(3,1);
i20_t =[0, i20_t];
aux =inv(j * dY0 - dT * Y0);
for k =2:length(s_t)
x20_t(:,k) =aux * (j * dY0 * x20_t(:,k-1) - dT * [0; -i20_t(k); -i20_t(k)]);
end
v20_t =x20_t(1,2:length(s_t)); % Envolventes complejas
u20_t =x20_t(2,2:length(s_t));
w20_t =x20_t(3,2:length(s_t));

o20_t =(u20_t +w20_t) * Ro * inv(Ro +Rd);


i22_t =0.5 * g20 * v1_t.^2 +0.5 * g02 * u1_t.^2 +0.5 * g11 * v1_t.* u1_t;

Y2 =matriz_admit_3n(2*wc,p);
dY2 =matriz_admit_deriv_3n(2*wc,p);

x22_t =zeros(3,1);
i22_t =[0, i22_t];
aux =inv(j * dY2 - dT * Y2);
for k =2:length(s_t)
x22_t(:,k) =aux * (j * dY2 * x22_t(:,k-1) - dT * [0; -i22_t(k); -i22_t(k)]);
end
v22_t =x22_t(1,2:length(s_t)); % Envolventes complejas
u22_t =x22_t(2,2:length(s_t));
w22_t =x22_t(3,2:length(s_t));
o22_t =(u22_t +w22_t) * Ro * inv(Ro +Rd +j * 2 * wc * Ld);


% Tercer orden %

i31_t =0.5 * g30 * ((abs(v1_t).^2) .* v1_t) +0.25 * g30 * ((v1_t.^2) .* conj(v1_t)) +...
0.5 * g03 * ((abs(u1_t).^2) .* u1_t) +0.25 * g03 * ((u1_t.^2) .* conj(u1_t)) +...
0.5 * g21 * ((abs(v1_t).^2) .* u1_t) +0.25 * g21 * ((v1_t.^2) .* conj(u1_t)) +...
0.5 * g12 * ((abs(u1_t).^2) .* v1_t) +0.25 * g12 * ((u1_t.^2) .* conj(v1_t)) +...
g20 * (v22_t .* conj(v1_t)) +2 * g20 * (v20_t .* v1_t) +...
g02 * (u22_t .* conj(u1_t)) +2 * g02 * (u20_t .* u1_t) +...
0.5 * g11 * (conj(v1_t) .* u22_t) +g11 * (u20_t .* v1_t) +...
0.5 * g11 * (conj(u1_t) .* v22_t) +g11 * (v20_t .* u1_t);


x31_t =zeros(3,1);
i31_t =[0, i31_t];
aux =inv(j * dY1 - dT * Y1);
for k =2:length(s_t)
x31_t(:,k) =aux * (j * dY1 * x31_t(:,k-1) - dT * [0; -i31_t(k); -i31_t(k)]);
end
v31_t =x31_t(1,2:length(s_t)); % Envolventes complejas
u31_t =x31_t(2,2:length(s_t));
w31_t =x31_t(3,2:length(s_t));
o31_t =(u31_t +w31_t) * Ro * inv(Ro +Rd +j * wc * Ld);


outamp =constante*[o31_t +o1_t]; % Salida del amplificador

compfase =real(outamp);
compcuad =imag(outamp);

Potrebbero piacerti anche