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

📄 ar.m

📁 这个程序是用限幅法抑制峰均功率比的matlab仿真程序
💻 M
字号:

% Amplified reduction--PAPR Simulation
%
% Reference: R. W. B?uml, R. F. H. Fisher, and J. B. Huber, 
%“Reducing the Peak-to-Average Power Ratio of Multicarrier Modulation by 
% Selected Mapping,” Elect. Lett., vol. 32, no. 22, Oct. 1996, pp. 2056–57.
%

clear all; clc; close all;
K = 128;                                                        
U = 4;
samplerate=4;                                                          
QPSK_Set  = [1 -1 j -j];

Phase_Set = [1 -1 j -j ];
MAX_SYMBOLS  = 1e5;
PAPR_Orignal = zeros(1,MAX_SYMBOLS);
PAPR_AR   = zeros(1,MAX_SYMBOLS);

X     = zeros(U,K);
Index = zeros(U,K);
ARV=9;

for nSymbol=1:MAX_SYMBOLS
   
    Index(1,:)   = randint(1,K,length(QPSK_Set))+1;
    
    
    X(1,:) = QPSK_Set(Index(1,:));                                         
  
    X(2:U,:) = repmat(X(1,:),U-1,1);                        
      Xsam=UtraSample(X,samplerate);
    x = ifft(Xsam(1,:),K*samplerate); 
    
                                                                    
    Signal_Power = abs(x.^2); 
    xmean=sqrt(10^(ARV/10)*mean(Signal_Power));
    xar=ARM(x,xmean);  
    Peak_Power   = max(Signal_Power);
    Mean_Power   = mean(Signal_Power);
    
   PAPR_temp = 10*log10(Peak_Power./Mean_Power);
   PAPR_Orignal(nSymbol) = PAPR_temp;
    Signal_Power = abs(xar.^2);
    Peak_Power   = max(Signal_Power);
    Mean_Power   = mean(Signal_Power);
    
   PAPR_temp = 10*log10(Peak_Power./Mean_Power);
   PAPR_AR(nSymbol) = PAPR_temp;
  
      
    
end
[cdf1, PAPR1] = ecdf(PAPR_Orignal);
[cdf2, PAPR2] = ecdf(PAPR_AR);

  
%--------------------------------------------------------------------------,,xx, yy, 'o-g'

xx = 0:.02:12;

n = K*1;
yy = zeros(length(n),length(xx));
for jj=1:length(n)
    for ii=1:length(xx)
        yy(ii,jj) = 1-(1-exp(-10.^(xx(ii)/10)))^(2.8*n(jj));
    end
end

semilogy(PAPR1(1:2000:end),1-cdf1(1:2000:end),'*-b',PAPR2,1-cdf2)
legend('Orignal','A=9','A=10','A=11',3)
title('Amplified METHOD FOR PAPR REDUCTION')
xlabel('PAPR0 [dB]');
ylabel('CCDF (Pr[PAPR>PAPR0])');
hold on;



grid on

⌨️ 快捷键说明

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