%Comparación sistema basico y sistema OFDM sin pc ambos QPSK en canal ideal

clear all; 

N=64;
u0=1;
v_canal_tipico=[1 1/exp(1) 1/exp(2) 1/exp(3) 1/exp(4) 1/exp(5) 1/exp(6) 1/exp(7)];
v_EbNo_dB=[0:25];
v_ber_bpsk=[];
v_ber_qpsk=[];
v_ber_16qam=[];
v_ber_64qam=[];
n_mod_tipo=2;

%n_mod_tipo=1, MODULACION bpsk DE SISTEMA OFDM
n_mod_tipo=1;
n_max_sim=500;
for n_EbNo_dB=v_EbNo_dB
    [n_ber]= sist_ofdm(n_EbNo_dB,u0,N,n_max_sim,n_mod_tipo,v_canal_tipico);
    v_ber_bpsk=[v_ber_bpsk n_ber]
end
semilogy(v_EbNo_dB,v_ber_bpsk,'Color','g')
xlabel('S/N (dB)')
ylabel('BER')
title('Sistema real IEEE 802.11a en canal típico')
hold on

%n_mod_tipo=2 MODULACION QPSK OFDM 
n_mod_tipo=2;
n_max_sim=200;
for n_EbNo_dB=v_EbNo_dB
    [n_ber]= sist_ofdm(n_EbNo_dB,u0,N,n_max_sim,n_mod_tipo,v_canal_tipico);
    v_ber_qpsk=[v_ber_qpsk n_ber]
end
semilogy(v_EbNo_dB,v_ber_qpsk,'Color','b')

%n_mod_tipo=4 MODULACION 16qam OFDM 
n_mod_tipo=4;
n_max_sim=200;
for n_EbNo_dB=v_EbNo_dB
    [n_ber]= sist_ofdm(n_EbNo_dB,u0,N,n_max_sim,n_mod_tipo,v_canal_tipico);
    v_ber_16qam=[v_ber_16qam n_ber]
end
semilogy(v_EbNo_dB,v_ber_16qam,'Color','r')

%n_mod_tipo=6 MODULACION 64qam OFDM 
n_mod_tipo=6;
n_max_sim=200;
for n_EbNo_dB=v_EbNo_dB
    [n_ber]= sist_ofdm(n_EbNo_dB,u0,N,n_max_sim,n_mod_tipo,v_canal_tipico);
    v_ber_64qam=[v_ber_64qam n_ber]
end
semilogy(v_EbNo_dB,v_ber_64qam,'Color','k')

legend ('sistema BPSK','sistema QPSK','sistema 16qam','sistema 64qam','Location','SouthWest')

