📄 paixu.m
字号:
%相位因子估计法
clear;
v=8;
nl=100;
for n=1:nl;
a=rand(1,256)>0.5;
C=(a*2-1)/sqrt(2);
sreal=C(1:2:256);
simage=C(2:2:256);
D=sreal+j.*simage;
% oversample 4
z1=[D(1:128/2),zeros(1,3*128),D(128/2+1:128)];
l1=length(z1);
% divided into v sets
x4=zeros(1,512);
P=zeros(l1,v);
P1=zeros(l1,v);
Q=zeros(l1,v);
for k=1:v
z(k,:)=[zeros(1,(k-1)*128/v),D((k-1)*128/v+1:k*128/v),zeros(1,(l1-(k-1)*128/v-128/v))];
iz(k,:)=ifft(z(k,:));
iz(k,:)=iz(k,:)*512;
P(:,k)=iz(k,:);
end
for i1=1:l1
x3=abs(P(i1,:)).^2;
P1(i1,:)=x3;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for i1=1:l1
number=paixu1(P1(i1,:));
for m=1:v
R(:,m)=P1(:,number(2,m));
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for i2=1:l1;
Q1(i2,:)=R(i2,1:2:v);
Q2(i2,:)=R(i2,2:2:v);
Q2(i2,:)=-1*Q2(i2,:);
end
x1=sum(Q1');
x2=sum(Q2');
x3=x1+x2;
v1=max(abs(x3));
m1=mean(abs(x3));
papr1=10*log10(v1/m1);
x4(i1)=papr1;
end
papr2(n)=min(x4);
papr2(n)=papr2(n)+3;
end
ccdf0=zeros(1,131);
NN=0:.1:13;
for n=1:nl;
for l=1:131;
if papr2(n)>NN(l);
ccdf0(l)=ccdf0(l)+1;
end
end
end
ccdf1=ccdf0./100;
figure(1)
semilogy(NN,ccdf1,'r')
title('CCDF曲线比较')
xlabel('papr( in dB)'),ylabel('ccdf')
legend('相位因子估计算法');
grid on
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -