线性调频信号的测量精度随信躁比变,可是我编怎么都不对。谁能帮我看看啊。
我得出的图形和数值都不对
function x = lfm(t,b,f0,fs)
% t=10e-6; %时宽t
% b=200e6; %带宽b
% f0=750e6; %中心频率f0
% fs=2*850e6; %采样频率fs
k=b/t;
ts=1/fs;
i=0;
for tau=-t/2:ts:t/2
i=i+1;
vol0=(tau^2)*k/2;
vol1=tau*f0+vol0;
vol2=exp(j*vol1.*2*pi);
x(i) = vol2;
end
close all;clear;clc;
t=10e-6;
b=200e6;
f0=750e6;
k=b/t;
fs=2*850e6;
ts=1/fs;
%信号的时域%
x=lfm(t,b,f0,fs);
M=length(x);
t1=linspace(0,t,M);
n=wgn(M,1,1);
M=length(n);
t1=linspace(0,t,M);
plot(t1,n);
title('高斯白噪声');
xlabel('时间');
ylabel('幅度');
%信号的频域%
yf=fft(x);
yf=abs(yf);N=length(yf);
f=linspace(0,fs,N);
nf=fft(n);
f=linspace(0,fs,N);
plot(f,nf);
title('高斯白噪声');
xlabel('频域');
ylabel('幅度');
hf=conj(yf);%匹配滤波器%
Yf=hf.*yf;
Yt=ifft(Yf);%经过匹配滤波器的时域%
N=length(yf);
f=linspace(0,fs,N);
M=length(Yt);
t1=linspace(0,t,M);
Yt0=real(Yt).^2+imag(Yt).^2%模的平方%
plot(t1,Yt0);
title('信号经过匹配滤波器的模平方');
xlabel('时间');
%
Nf=hf*nf;
Nt=ifft(Nf);%经过匹配滤波器的时域%
t1=linspace(0,t,M);
Nt0=Nt.^2
plot(t1,Nt);
title('噪声经过匹配滤波器的平方');
xlabel('时域');
snr=Yt0./Nt0;
snr=-10*log(snr);
% plot(snr);
% title('t时刻滤波器输出的信噪比')
[r,c]=size(yf);
n=c
m=[0:1:n-1];
f=(2*b/n).*m;
t0=(2*t/n).*m;
f1=sum(f.^2.*Yf.^2*(2*b/n));
f2=sum(f.*Yf.^2*(2*b/n));
x=abs(x);
E=sum(x.^2.*(2*t/n));
N0=8;
e1=(1/8*pi^2*(snr/2)*(f1-f2^2));%实际值%
e2=sqrt(3)/(pi*t*sqrt(2*E/N0));%理论值%
plot(snr,e1,'rx');hold;plot(snr,e2,'ko');
title('最小均方误差');
xlabel('SNR');
ylabel('误差');
legend('实际值','理论值')