?????个人主页:研学社的博客
????????欢迎来到本博客????????
??博主优势:??????博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
??座右铭:行百里者,半于九十。
??????本文目录如下:??????
目录
??1 概述
??2 运行结果
??3 参考文献
??4 Matlab代码实现
??1 概述
AWGN 和衰落通道上 16-QAM 的“联合绑定”、“联合-巴塔查里亚绑定”和“最小欧几里得距离绑定”研究(Matlab代码实现)
??2 运行结果
部分代码:
%% Generatig Constellation symbol
Ts=2; % symbol time
A=1;
As=A.*sqrt(Ts/2);
Dmin=2*As;
S=As.*qammod([0:15], 16, 0, 'gray'); % Generated defaultly (+,- 1 and +,-3)
Es=sum(((real(S)).^2)+((imag(S)).^2))./length(S); % Average symbol Energy
%% Defining Energy and SNR
EB=Es/N; % Energy of Bit
EBN0dB=0:10; % EB/N0 in dB
ESN0dB=EBN0dB+10*log10(N); % ES/N0 in dB
EBN0=10.^(EBN0dB/10); % EB/N0
ESN0=10.^(ESN0dB/10); % ES/N0
N0=Es./ESN0; % Noise Density
Variance=N0./2; % Variance of Noise
StandardD=sqrt(Variance); % Standard deviation of Noise
Mean=0; % Mean of Noise
BER_Sim=[]; % Simulated BER will be stored in this empty matrix
for gg=1:length(EBN0)
%% Generating random Bit Stream and converting it into symbol Stream
Bits=randi([0 1],1,LB); % Random Stream of Bits
Bits_Parallel=reshape(Bits,N,L); % Parallel bits to be programmed
De_Numbers=(bi2de(Bits_Parallel',2)')+1; % Location for symmbols
Symbols=S(De_Numbers); % Stream of symbols that is going to be sent
%% Adding Gaussina noise to transmitted signal
Noise=sqrt(N0(gg)/2).*(randn(1,L)+1j*(randn(1,L)));
Y=Symbols+Noise;
%% Decision
Loc=[];
for kk=1:L
D=abs(Y(kk)-S); % Distances between R and all symbols
MinD=min(D); % min Distance
LminD=find(D==MinD); % Location of minimum Distance
Loc=[Loc LminD]; % Location of all symbol stream
end
RB=reshape(de2bi(Loc-1,N)',1,LB); % Received Bits
BER_Sim=[BER_Sim (sum(abs(RB-Bits)))/LB]; % Bit Error rate
end
%% Union Bound Error Probability
% Symbol Error Rate
sq2N0=sqrt(2.*N0);
Dmi_sq2N0=Dmin./sq2N0;
SER_Union_Bound= ((3/1).*qfunc((1.*sqrt(1 )).*Dmi_sq2N0))...
+((2/1).*qfunc((2.*sqrt(1 )).*Dmi_sq2N0))...
+((1/1).*qfunc((3.*sqrt(1 )).*Dmi_sq2N0))...
+((9/4).*qfunc((1.*sqrt(2 )).*Dmi_sq2N0))...
+((2/2).*qfunc((2.*sqrt(2 )).*Dmi_sq2N0))...
+((1/4).*qfunc((3.*sqrt(2 )).*Dmi_sq2N0))...
+((3/1).*qfunc((1.*sqrt(5 )).*Dmi_sq2N0))...
+((3/2).*qfunc((1.*sqrt(10)).*Dmi_sq2N0))...
+((1/1).*qfunc((1.*sqrt(13)).*Dmi_sq2N0));
% +((1/2).*qfunc((1.*sqrt(8 )).*Dmi_sq2N0));
BER_Union_Bound=SER_Union_Bound/N;
%% Union Bhattacharyya Bound Error Probability
% Symbol Error Rate
sqDmi_sq2N02=(-1).*(Dmi_sq2N0.^2)./2;
SER_Bhattacharyya_Bound= ((3/1).*exp((1.*sqrt(1 )).*sqDmi_sq2N02))...
+((2/1).*exp((2.*sqrt(1 )).*sqDmi_sq2N02))...
+((1/1).*exp((3.*sqrt(1 )).*sqDmi_sq2N02))...
+((9/4).*exp((1.*sqrt(2 )).*sqDmi_sq2N02))...
+((2/2).*exp((2.*sqrt(2 )).*sqDmi_sq2N02))...
+((1/4).*exp((3.*sqrt(2 )).*sqDmi_sq2N02))...
+((3/1).*exp((1.*sqrt(5 )).*sqDmi_sq2N02))...
+((3/2).*exp((1.*sqrt(10)).*sqDmi_sq2N02))...
+((1/1).*exp((1.*sqrt(13)).*sqDmi_sq2N02));
% +((1/2).*exp((1.*sqrt(8 )).*sqDmi_sq2N02));
BER_Bhattacharyya_Bound=SER_Bhattacharyya_Bound/N;
??3 参考文献
部分理论来源于网络,如有侵权请联系删除。
[1]于洋. 高效率水声扩频通信技术研究[D].哈尔滨工程大学,2014.
[2]杨汨,柴金川,李毅,高闯.地铁地下人行通道场景无线信道大尺度衰落特性研究[J].铁道技术标准(中英文),2022,4(08):26-31.