📄 lmfxczs.m
字号:
clear
fs=30E+6;%采样频率
ts=1/fs;%采样时间间隔
k=10E+10; %调频斜率
fo=5E+6;%载频
T=60E-6;%脉冲宽度
B=k*T;
n=4500;%抽样点数
t=ts:ts:n*ts;
p=zeros(1,n);
p(500+1:500+T*fs)=ones(1,T*fs);
signal=1/sqrt(T)*cos(2*pi*(fo*t+k*t.^2/2)).*p;
signal_spect=abs(fft(signal));
signal_power=sum(signal.^2);
snr=-7;
noise_power=signal_power*10^(-snr/10);
a=sqrt(noise_power/n);
noise=a*randn(1,n);
s=signal+noise;
s_spect=abs(fft(s));
%--------------------------
delay=500;
ss=signal(1:n-delay).*signal(delay+1:n);
ss_spect=abs(fft(ss));
%figure
%subplot(2,1,1)
%plot(ss)
%subplot(2,1,2)
%plot(ss_spect)
%--------------------------
nn=signal(1:n-delay).*noise(delay+1:n)+noise(1:n-delay).*signal(delay+1:n)+noise(1:n-delay).*noise(delay+1:n);
nn_spect=abs(fft(nn));
%figure
%subplot(2,1,1)
%plot(nn)
%subplot(2,1,2)
%plot(nn_spect)
%--------------
mix=s(1:n-delay).*s(delay+1:n);
mix_spect=abs(fft(mix));
figure
subplot(2,1,1)
plot(mix)
subplot(2,1,2)
plot(mix_spect)
%------------------------------相乘后的有用信号求四阶累积量
m=100;
for i=-m:m
ss_cum(:,i+m+1)=cum4est(ss,m,1000,60,'unbiased',i,i);
end
ss_cum_spect=abs(fft(ss_cum));
figure
subplot(2,1,1)
mesh(ss_cum)
subplot(2,1,2)
mesh(ss_cum_spect)
%------------------------------相乘后的噪声求四阶累积量
for i=-m:m
nn_cum(:,i+m+1)=cum4est(nn,m,1000,60,'unbiased',i,i);
end
nn_cum_spect=abs(fft(nn_cum));
figure
subplot(2,1,1)
mesh(nn_cum)
subplot(2,1,2)
mesh(nn_cum_spect)
%--------------------------相乘后的信号求四阶累积量
for i=-m:m
mix_cum(:,i+m+1)=cum4est(mix,m,1000,60,'unbiased',i,i);
end
mix_cum_spect=abs(fft(mix_cum));
figure
subplot(2,1,1)
mesh(mix_cum)
subplot(2,1,2)
mesh(mix_cum_spect)
%---------------------------有用信号四阶累积量的对角切片
figure
subplot(2,1,1)
plot(ss_cum(:,m+1))
subplot(2,1,2)
plot(abs(fft(ss_cum(:,m+1))))
%-----------------------------------------噪声四阶累积量的对角切片
figure
subplot(2,1,1)
plot(nn_cum(:,m+1))
subplot(2,1,2)
plot(abs(fft(nn_cum(:,m+1))))
%---------------------------------信号四阶累积量的对角切片
figure
subplot(2,1,1)
plot(mix_cum(:,m+1))
subplot(2,1,2)
plot(abs(fft(mix_cum(:,m+1))))
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -