资源简介
基于对数分布的雷达杂波产生,主要为对数杂波的MATALAB代码。
代码片段和文件信息
%---------相参相关对数-正态分布杂波-------------------%
clear all;close all;clc;
miu=0.9;%尺度参数
sigma=0.9695;%形状参数
num=8000;%采样点数数据点数
fr=1000;
n=0:1:num-1;
%-----由功率谱和相关系数确定相关高斯序列;
fs=1000;%采样频率
f=fs/num*(-num/2:num/2-1);%对称的功率谱
sigmaf=52;%产生高频频谱功率,方差
amp=1/(sqrt(2*pi)*sigmaf);
Pw=amp*exp(-(f).^2/(2*sigmaf^2));%高斯功率谱
sn=ifft(Pw);%由最终的高斯功率分布得到相关系数序列
pn=log(1+sn*(exp(sigma^2)-1))/sigma^2;%这里相关系数之间的变换也就是经过成形滤波器之后的相关序列的相关系数
Xw=fft(pnnum); %相关高斯随机序列功率谱
abs_Hw=sqrt(abs(Xw)/pn(1));%这个有一个流程图可以表示
w=rand(1num);%生成随机序列但是均匀分布的
ww=2*pi*w;
ww=ww/max(abs(ww));%归一化用
nois=exp(j*(ww)); %加入的随机相位 相干信号 这里确实在一篇论文中有提起 但是确实还不是很明白
Hw=abs_Hw.*nois; %成形滤波器频谱
xi_1=randn(1num);%生成两个高斯分布的随机序列
xq_1=randn(1num);
subplot(221)
plot(nxi_1)
title(‘独立不相关高斯随机序列‘)
xlabel(‘时域‘)
xi_2=ifft(fft(xi_1).*Hw);%生成两个相关序列,实部虚部
xisigmac=std(xi_2);%求标准差
ximuc=mean(xi_2);%求均值
yi=(xi_2-ximuc)/xisigmac;%标准化,为了后面的功率谱比较
xq_2=ifft(fft(xq_1).*Hw);
xqsigmac=std(xq_2);
xqmuc=mean(xq_2);
yq=(xq_2-xqmuc)/xqsigmac;
r=yi+j*yq;
ydata=exp(r.*sigma^2.+log(miu));%经过成型滤波器之后的变换但是这之前必须要进行标准化
subplot(222)
plot(nabs(ydata))
title(‘对数正态分布杂波‘)
xlabel(‘时域‘)
num_pdf=100;
maxdat=max(abs(ydata));
mindat=min(abs(ydata));
NN=hist(abs(ydata)num_pdf);% 返回一个行向量NN,指示每个 bin 中的元素数目。
xpdf1=num_pdf*NN/((sum(NN))*(maxdat-mindat));%幅度分布
xaxis1=mindat:(maxdat-
- 上一篇:MATALA杂波代码
- 下一篇:基于魔术公式的轮胎车辆转向模型
评论
共有 条评论