要求是用蒙特卡洛方法计算该模型下的误码率,并与理论推导值相比较。
系统模型和最终效果图如图所示。下文为自己编写的代码,希望能给出建议。
clear all
clc
k=2000;%表示产生随机数的个数
Ps=1;
Pr=1;
N0=1;%将发射功率和噪声归一化
L=2;
s1=zeros(1,k);
s2=zeros(1,k);
s3=zeros(1,k);
t=zeros(1,k);
m=rand(1,k);
count=0;
for i=1:k
if (m(i)>0)&&(m(i)<0.5)
s1(i)=0;
else
s1(i)=1;
end
end
g1=10^(10/10);%设置S-R信道的衰落系数
g2=10^(20/10);%设置R-D信道的衰落系数
gi=0;
gi1=10.^(gi/10);%设置自干扰的衰落系数
n1=random('Normal',0,N0,1,k);%产生k个均值为0,方差为N0的高斯随机分布数n1
n2=random('Normal',0,N0,1,k);%产生k个均值为0,方差为N0的高斯随机分布数n2
for i=1:k
h1=(randn(1,L)+j*randn(1,L))/sqrt(2)*sqrt(g1);
hi=