matlab信号经过瑞利,Matlab关于 BPSK信号通过瑞利信道的误码性能分析的仿真实验....

主函数。

SNRindB1=0:2:12;%定义信噪比序列

SNRindB2=0:2:12;%采用dB作为单位

for i=1:length(SNRindB1)

s_e(i)=ray(SNRindB1(i));%计算误码率

end

for i=1:length(SNRindB2)

SNR=exp(SNRindB2(i)*log(10)/10);%转化信噪比为数值表示。。

theo_err_prb(i)= 1/2*(1-sqrt(SNR/(1+SNR))); %瑞利信道下BPSK信号的理论误码率

end

semilogy(SNRindB1,s_e,'*');

hold on

semilogy(SNRindB2,theo_err_prb);

legend(' simulated result',' theoretical result');

hold off

自定义的函数ray.m

function[p]=ray(SNRindB)   %用来产生给定信噪比的

N=5000;

E=1;                      %定义每符号能量

snr=10^(SNRindB/10);         %信噪比

sgma=E/sqrt(snr*2);           %标准差

%产生数据源

for i=1:N

temp=rand;

if (temp<0.5)

dsource(i)=0;

else

dsource(i)=1;

你可能感兴趣的:(matlab信号经过瑞利)