利用蒙特卡算法仿真二进制双极性基带通信系统

主程序:SNRindB1=0:1:12
SNRindB2=0:0.01:12;
for i=1:length(SNRindB1) 

 smld_err_prb(i)=exa038_Fun_doublePe(SNRindB1(i));
end
semilogy(SNRindB1,smld_err_prb,'r*');
for i=1:length(SNRindB2)
    SNR=10^(SNRindB2(i)/10);
    theo_err_prb(i)=(1/2)*erfc(sqrt(SNR/2));
end
hold on
semilogy(SNRindB2,theo_err_prb);
grid on

子程序:

function [p]=exa038_Fun_doublePe(snr_in_dB)
E=1;
SNR=10^(snr_in_dB/10);
sgma=E/sqrt(SNR);
N=10000;
disource=(sign(rand(1,N)-0.5)+1)/2;
numoferr=0;
for i=1:length(disource)
    if disource(i)==1
        r=E+randn*sgma;
    else
        r=-E+randn*sgma;
    end
    if(r>0)
        decis=1;
    else
        decis=0;
    end
    if(decis~=disource(i))
        numoferr=numoferr+1;
    end
end
p=numoferr/N;


 

转载于:https://my.oschina.net/annieduoduo/blog/71429

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值