📄 ssbpskawgn2user.m
字号:
N_Trials=1000;
N_number=100;
N_snr=10;
Q=15;
E_M=[ ];
for trials=1:N_Trials
trials
noise=randn(1,Q*N_number)+j.*randn(1,Q*N_number);
s01=round(rand(1,N_number));
ss1=s01*2-1;
pn01=pn_m(15,1)./sqrt(15);
s1=kron(ss1,pn01);
s02=round(rand(1,N_number));
ss2=s02*2-1;
pn02=round(rand(1,Q));
pn2=pn_m(15,1)./sqrt(15);
s2=kron(ss2,pn02);
sgma=1;
Error_v=[ ];
for snr_db=0:1:N_snr
snr=10.^(snr_db./10);
N0=2*sgma.^2;
Eb=snr.*N0;
yy=sqrt(Eb)*s1+s2+noise;
Y_M=[ ];
for k=1:N_number
ym=yy(1,(k-1)*Q+1:k*Q);
Y_M=[Y_M;ym];
end
ys=Y_M*pn01.';
y=ys.';
y_real=real(y);
s_e=sign(y_real);
s_e10=(s_e+1)./2;
Error_snr=sum(abs(s01-s_e10));
Error_v=[Error_v,Error_snr/N_number];
end
E_M=[E_M;Error_v] ;
end
E_sum=mean(E_M);
BER=E_sum;
BER_T=[ ];
for snr_db=0:1:N_snr
snr=10.^(snr_db./10);
BER_THEROY=Qfunct(sqrt(2.*snr));
BER_T=[BER_T,BER_THEROY];
end
figure
lpa=1;
i=0:1:N_snr;
semilogy(i,BER,'-r',i,BER_T ,'*g');
xlabel('E_b/N_0(dB)')
ylabel('BER')
legend('Monte-Carlo', 'Theroetic')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -