⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 simo.m

📁 SIMOOFDM系统的基于子空间的盲信道估计算法
💻 M
字号:
clear;
close all;
SignalEnergyMin=4;
SignalEnergyMax=52;
SingalEnergy_d=1;
BlocksPerEnergy=100;
BlockSize=2^8;
SamplingRate=1;
WGNPower=1;
RayleighParam=0.24;
Antennas=8;
M=16;
for aa=1:Antennas
    Gvec1=randn(1,BlocksPerEnergy);
    Gvec2=randn(1,BlocksPerEnergy);
    RayleighVec(aa,:)=sqrt((RayleighParam^2.*Gvec1.^2)+(RayleighParam^2.*Gvec2.^2));
end
EnergiesdB=SignalEnergyMin:SingalEnergy_d:SignalEnergyMax;
Energies=10.^(EnergiesdB./10);
for ee=1:size(Energies,2)
    for bb=1:BlocksPerEnergy
        A=randint(1,BlockSize,16);
        B=mod16qam(A,1,SamplingRate,Energies(ee))';
        for aa=1:Antennas
            disp(['Eb=',int2str(Energies(ee)),';Block',int2str(bb),';Antenna',int2str(aa)]);
            C(aa,:)=RayleighVec(aa,bb).*B;
            D(aa,:)=AWGN(C(aa,:),WGNPower);
            [E(aa,:),Es(aa,bb)]=demod16qam(D(aa,:),1,SamplingRate);
            [TT,SER(aa,bb)]=symerr(A,E(aa,:));
        end 
          for aa=2:2:Antennas
              TempEs=Es(1:aa,bb);
               stronger=(find(TempEs==max(TempEs)));
               [SC,E_sc(1,bb)]=demod16qam(D(stronger,:),1,SamplingRate);
    [TT,SER_sc(aa/2,bb)]=symerr(A,SC);
    TempD=D(1:aa,:);
    [EGC,E_egc(1,bb)]=demod16qam(mean(TempD,1),1,SamplingRate);
    [TT,SER_egc(bb)]=symerr(A,EGC);
          end
    end
    for aa=1:Antennas
        ESER(aa,ee)=mean(SER(aa,:),2);
    end
     ESER_sc(:,ee)=mean(SER_sc,2);
     ESER_egc(:,ee)=mean(SER_egc,2); 
  
end
figure;
semilogy(EnergiesdB,mean(ESER,1),'+',EnergiesdB,ESER_sc,'d-');
xlabel('Eb/N_0');ylabel('SER');
legend('Antenna 1+2','2 Antennas','4 Antennas','8 Antennas');
figure;
semilogy(EnergiesdB,mean(ESER,1),'+',EnergiesdB,ESER_egc,'x-');
xlabel('Eb/N_0');ylabel('SER');
legend('Antenna 1+2','Equal Gain Combining 2','Equal Gain Combining 4','Equal Gain Combining 6','Equal Gain Combining 8');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -