📄 alamouti_code_sim_2tx1rx_pe.m
字号:
% the pro. is to simulate alamouti code scheme for BPSK BER in the case of 2Tx-1Rx.
function y=Alamouti_code_sim_2Tx1Rx_Pe(snrindB,sgma)
N=500000;
snr=10^(snrindB/10);
E=snr;
E1=sgma*sqrt(E);
s0=E1;
s1=-E1;
for i1=1:N/10000
for i=1:10000
temp=rand;
if(temp<0.5)
dsource1(i)=0;
else
dsource1(i)=1;
end;
end;
numofbiterror(i1)=0;
for i=1:10000
a0=rayleigh(sgma);
a1=rayleigh(sgma);
n0=gngauss(sgma);
n1=gngauss(sgma);
Q0=2*pi*rand;
Q1=2*pi*rand;
if (dsource1(i)==0)
dists0_s0=((a0^2+a1^2-1)*s0+a0*n0*cos(Q0)+a1*n1*cos(Q1))^2;
dists0_s1=((a0^2+a1^2)*s0-s1+a0*n0*cos(Q0)+a1*n1*cos(Q1))^2;
if (dists0_s0<dists0_s1)
decis1=0;
else
decis1=1;
end;
else
dists1_s0=((a0^2+a1^2)*s1-s0-a0*n1*cos(Q0)+a1*n0*cos(Q1))^2;
dists1_s1=((a0^2+a1^2-1)*s1-a0*n1*cos(Q0)+a1*n0*cos(Q1))^2;
if (dists1_s0<dists1_s1)
decis1=0;
else
decis1=1;
end;
end;
if(decis1~=dsource1(i))
numofbiterror(i1)=numofbiterror(i1)+1;
end;
end;
numofbiterror(i1)
end;
total_numofbiterror=sum(numofbiterror);
y=total_numofbiterror/N;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -