利用循环平稳特征方法进行信号检测
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
%利用循环平稳特征方法进行信号检测
clc
clear all;
tic
fs=1;%采样频率
N_simu=100;%仿真次数
fc=fs/8;%载波频率
f0=fs/16;%码率
N=1024;%采样点数
L=N/4-1;%平滑窗窗口
pf=0.05;%虚警概率
alpha=2*f0;%循环频率
t=[0:N/fs-1/fs];%信号持续时间
%w=ones(1,L);%矩形窗
beta=10;
w = kaiser(L,beta)';%Kaiser窗函数
snrdB=-10:5; %信噪比取值范围
pd=zeros(1,length(snrdB));
data=randint(1,N/fs*f0);
for k=1:length(data)
I((k-1)*fs/f0+1:k*fs/f0)=data(k);
end
m=2*I-1;
for i=1:length(snrdB)
for h=1:N_simu
snr_real(i)=power(10, snrdB(i)/10); %实际信噪比
sigma=1/snr_real(i);
noise=randn(1,N);
user=sqrt(sigma).*m.*cos(2*pi*fc*t);%用户BPSK信号
xsignal=user+noise;%接收信号
y=xsignal.*xsignal;%信号延迟tau=0;
r1=0;
for k=1:N;
r1=r1+y(k)*exp(-j*2*pi*alpha*k);%计算自相关函数估计值end
r1=r1/N;
R=[real(r1),imag(r1)];%构造自相关函数的向量
F1=zeros(1,L); F2=zeros(1,L);
w1=0;w2=0;
for s=-(L-1)/2:(L-1)/2
for k=1:N
h=s+(L-1)/2+1;
F1(h)=F1(h)+y(k)*exp(-j*2*pi*(alpha-2*pi/N*s)*k);
F2(h)=F2(h)+y(k)*exp(-j*2*pi*(alpha+2*pi/N*s)*k);
end
w1=w1+F1(h)*F2(h)*w(h);
w2=w2+conj(F2(h))*F2(h)*w(h);
end
qk=w1/N/L;
qkc=w2/N/L;
a11=real((qk+qkc)/2); a12=imag((qk-qkc)/2);
a21=imag((qk+qkc)/2); a22=real((qkc-qk)/2);
A=[a11,a12;a21,a22]; %构造协方差矩阵
CA=pinv(A);%逆反矩阵
str=N*R*CA*R';%检测统计量
threshold=chi2inv(1-pf,2);%门限值
if str>threshold
d=1;
else
d=0;
end
pd(i)=pd(i)+d;
end
end
fd=pd/N_simu
plot(snrdB,fd)