?? mrc_egc_slc_rake.m
字號:
clear all;
%%
L=32;
%Tw=2*10^(-9); %脈沖寬度
%tp=0.4395*10^(-9); %PPM時延
Tf=2*10^(-6);
fc=1.1*10^9;
t0=2.2*10^(-9);
tt=zeros(1,L);
ttp=zeros(1,L);
for l=1:L
tt(l)=l*2.2*10^(-9)+0.5e-9; %定義抽頭時延值
end
for s1=1:100
a=random('rayl',0.9,1,L); %信道幅度選擇瑞利分布的隨機數
a1=a.*exp(i*2*pi*fc*tt); %定義多徑衰落a(tl)
a2=abs(sum(a1.^2));
a3=abs(sum(a1).^2);
SNR=0:0.25:15;
for i2=1:length(SNR)
snr=10^(SNR(i2)/10);
PPM_Pe1(s1,i2)=0.5.*erfc(sqrt(snr)/sqrt(2));
MRC_x=sqrt(snr.*a2);
MRC_Pe1(s1,i2)=0.5.*erfc(MRC_x/sqrt(2));
SLC_x=sqrt(a2.*snr./(2+L./(a2.*snr)));
SLC_Pe1(s1,i2)=0.5.*erfc(SLC_x/sqrt(2)); %求誤碼率
EGC_x=sqrt(a3.*snr/L);
EGC_Pe1(s1,i2)=0.5.*erfc(EGC_x/sqrt(2));
end
end
%%
PPM_Pe=sum(PPM_Pe1)/100;
MRC_Pe=sum(MRC_Pe1)/100;
SLC_Pe=sum(SLC_Pe1)/100;
EGC_Pe=sum(EGC_Pe1)/100;
figure(1); %畫圖
semilogy(SNR,MRC_Pe,'r:',SNR,SLC_Pe,'b',SNR,EGC_Pe,'g*'); %overlapped PPM
grid on;
hold on;
axis([0,15,10^(-5),1]);
xlabel('SNR(dB)');
ylabel('BER');
legend('MRC-Rake','SLC-Rake','EGC-Rake');
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -