以下代码需要较高的性能,不然每运行一次就要花费1h或者2h;
仿真:2根发射天线,1根接收天线,信道系数为独立瑞利衰落;得到误符号率性能曲线。
仿真:2根发射天线,2根接收天线,信道为瑞利衰落,接收信号按照MRC合并,分别得到两个符号的接收信号,并解调。
仿真:2根发射天线,3根接收天线。
仿真:2根发射天线,4根接收天线
其中调制方式为QPSK
运行方式:在窗口输入kechengsheji(n,SNR,N_Receiver)
n为点数,要求很大,SNR为信噪比,N_Receive为接收天线个数,输出结果为误码率
仿真代码
function error_rate=kechengsheji(n,SNR,N_Receiver)
%______________________信源部分________________________%
c_source=rand(n,1);
c_source(c_source==1)=[];%剔除1,强制[0,0.5)和[0.5,1)等概率
c_source(c_source<0.5)=-1;%等概率前提近似取等号,免去信源编码;双极性。
c_source(c_source>=0.5)=1;
n_deng=length(c_source);%重新数出个数
if mod(n_deng,2) ~= 0
c_source(1)=[];
n_deng=n_deng-1;%强制c_source为偶数个
end
c_element=c_source;
c_length=n_deng;%结构体c储存
%
%不进行信道编码,防止对误码性能产生影响
%
%_____________________________________________________%
%____________________QPSK调制_________________________%
%B_map=[1+1i 1-1i -1-1i -1+1i];%%%%B方式调制
n_phase=c_length/2;
c_IQ=reshape(c_element,n_phase,2);%串并转换
c_phase=((c_IQ(:,1)*1i)+(c_IQ(:,2)));%相位映射
%scatterplot(c_phase)
B_jugle=[[1+1i;1+1i],[1+1i;1-1i],[1+1i;-1-1i],[1+1i;-1+1i], ...
[1-1i;1+1i],[1-1i;1-1i],[1-1i;-1-1i],[1-1i;-1+1i], ...
[-1-1i;1+1i],[-1-1i;1-1i],[-1-1i;-1-1i],[-1-1i;-1+1i], ...
[-1+1i;1+1i],[-1+1i;1-1i],[-1+1i;-1-1i],[-1+1i;-1+1i]];
%___