rayleigh.m
来自「Hard Viterbi QPSK in AWGN, Rayleight so」· M 代码 · 共 35 行
M
35 行
SNR=[-5:1:15];
snr = 10.^(SNR/10);
for k = 1:length(SNR)
theoretical(k) = 1/2*(1-sqrt(snr(k)/(1+snr(k))));
theo_qam(k)=3/8*(1-sqrt(6*snr(k)/(15+6*snr(k))));
end
semilogy(SNR,theoretical,'k-')
xlabel('SNR [dB]')
ylabel('BER')
hold on
grid on
semilogy(SNR,theo_qam,'m-')
hold on
result_qpsk = fopen('result_qpsk_ViterbiRayleigh.txt','r');
BER_qpsk = fscanf(result_qpsk,'%g');
fclose(result_qpsk);
semilogy(SNR,BER_qpsk,'r-s')
hold on
result_16qam = fopen('result_16qam_ViterbiRayleigh.txt','r');
BER_16qam = fscanf(result_16qam,'%g');
fclose(result_16qam);
semilogy(SNR,BER_16qam,'b-s')
hold on
result_qpsk = fopen('result_qpsk_ViterbiHard_rayleigh.txt','r');
BER_qpsk = fscanf(result_qpsk,'%g');
fclose(result_qpsk);
semilogy(SNR,BER_qpsk,'r-o')
hold on
result_16qam = fopen('result_16qam_ViterbiSoft_Rayleigh.txt','r');
BER_16qam = fscanf(result_16qam,'%g');
fclose(result_16qam);
semilogy(SNR,BER_16qam,'b-o')
hold on
title('BER with Convolution coding in Rayleigh')
legend('Theoretical QPSK','Theoretical 16QAM','QPSK Hard','16QAM Hard','QPSK Soft','16QAM Soft','location','southwest')
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?