⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ch7example1.m

📁 清华大学出版社 邵玉斌编写的《通信系统建模与仿真实例分析》一书的所有MATLAB和SIMULINK代码
💻 M
字号:
% ch7example1.m
clear;
s0=0; s1=5;
P0=0.7;                                              % 信源概率
P1=1-P0;
A2_over_sigma2_dB=-5:0.5:20;                         % 仿真信噪比范围(dB)
A2_over_sigma2=10.^(A2_over_sigma2_dB./10);
sigma2=s1^2./A2_over_sigma2;                         % 噪声方差范围
N=1e5;                                               % 信源序列长度
for k=1:length(sigma2)
    X=(rand(1,N)>P0);                                % 信源发生
    n=sqrt(sigma2(k)).*randn(1,N);                   % 噪声
    xi=s1.*X+n;                                      % 接收机判决输入
    C_opt=(s0+s1)/2+sigma2(k)/(s1-s0)*log(P0./P1);   % 计算最佳判决门限
    y=(xi>C_opt);                                    % 判决输出
    err(k)=(sum(X-y~=0))./N;                         % 误码率统计
end
semilogy(A2_over_sigma2_dB,err,'o');hold on;         % 仿真结果

for k=1:length(sigma2)                               % 理论计算
    C_opt=(s0+s1)./2+sigma2(k)./(s1-s0).*log(P0./P1);% 计算最佳判决门限
    Pe0=0.5-0.5*erf((C_opt-s0)/(sqrt(2*sigma2(k)))); % 发0出错率
    Pe1=0.5+0.5*erf((C_opt-s1)/(sqrt(2*sigma2(k)))); % 发1出错率
    Pe(k)=P0*Pe0+P1*Pe1;                             % 平均错误率
end
semilogy(A2_over_sigma2_dB,Pe);                      % 理论曲线
xlabel('A^2/\sigma^2 (dB)');
ylabel('错误率 P_e');
legend('仿真结果','理论曲线');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -