📄 plot.asv
字号:
clc
clear all
tic
SNR_in_DB=-4:0.5:10;
snr_in_DB=-4:0.5:2.5
for i=1:length(SNR_in_DB),
snr=10^(SNR_in_DB(i)/10);%计算理想误码率
x=sqrt(2*snr);
y(i)=(1/2)*erfc(x/sqrt(2));
E=1;
sgma=sqrt((E/snr)/2);%噪声方差
N=1;
input=round(rand(1,N*102));%信息序列
u1=2*input-1;
u1=sign(u1+sgma*randn(size(u1))+eps);
u1=(u1+1)/2;
p1(i)=(length(find(input~=u1)))/length(input);%没有经过信道编译码的误码率
end;
for i=1:length(snr_in_DB)
pb(i)=main(snr_in_DB(i));%py为没有经过信道编码的误码率,pb为经过信道编码的误码率
end;
echo on;
% semilogy(SNR_in_DB,y);%误码率理想特性曲线
% hold on
% semilogy(snr_in_DB,py,'b');
% semilogy(snr_in_DB,pb,'r');
semilogy(SNR_in_DB,y,'-o',snr_in_DB,p1,'-+'');
xlabel('SNR');
ylabel('BER(db)');
% set(gca,'Ytick',[1*10^(-5)]);
legend('theory','noencoding','encoding');
grid on;
% py
% pb
toc
% plot(SNR_in_DB,log10(y));%误码率理想特性曲线
% plot(SNR_in_DB,y);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -